static int delay(long *_delay) {
pthread_mutex_lock(&sndio_mutex);
- if (played > (written / framesize)) {
+ // debug(1,"Frames written %u, played %u.",written/framesize,played);
+
+ //if (played > (written / framesize)) {
/* _delay is in frames */
*_delay = (written / framesize) - played;
- } else {
- *_delay = 0;
- }
+ // } else {
+ // *_delay = 0;
+ // }
pthread_mutex_unlock(&sndio_mutex);
return 0;
}
current_delay = l_delay;
if (resp == 0) { // no error
if (current_delay < 0) {
- debug(1, "Underrun of %d frames reported, but ignored.", current_delay);
+ debug(1, "Underrun of %lld frames reported, but ignored.", current_delay);
current_delay =
0; // could get a negative value if there was underrun, but ignore it.
}
// only allow stuffing if there is enough time to do it -- check DAC buffer...
if (current_delay < DAC_BUFFER_QUEUE_MINIMUM_LENGTH) {
- // debug(1,"DAC buffer too short to allow stuffing.");
+ // debug(2,"DAC buffer too short(at %lld frames) to allow stuffing.",current_delay);
amount_to_stuff = 0;
}