fix calculation of avail_min
authorLennart Poettering <lennart@poettering.net>
Tue, 13 Jan 2009 23:06:40 +0000 (00:06 +0100)
committerLennart Poettering <lennart@poettering.net>
Tue, 13 Jan 2009 23:06:40 +0000 (00:06 +0100)
src/modules/module-alsa-sink.c
src/modules/module-alsa-source.c

index f9fb9bd..6fa45e3 100644 (file)
@@ -613,7 +613,7 @@ static int update_sw_params(struct userdata *u) {
         pa_usec_t sleep_usec, process_usec;
 
         hw_sleep_time(u, &sleep_usec, &process_usec);
-        avail_min += pa_usec_to_bytes(sleep_usec, &u->sink->sample_spec);
+        avail_min += pa_usec_to_bytes(sleep_usec, &u->sink->sample_spec) / u->frame_size;
     }
 
     pa_log_debug("setting avail_min=%lu", (unsigned long) avail_min);
index a6e4c90..768c8c1 100644 (file)
@@ -558,7 +558,7 @@ static int update_sw_params(struct userdata *u) {
         pa_usec_t sleep_usec, process_usec;
 
         hw_sleep_time(u, &sleep_usec, &process_usec);
-        avail_min += pa_usec_to_bytes(sleep_usec, &u->source->sample_spec);
+        avail_min += pa_usec_to_bytes(sleep_usec, &u->source->sample_spec) / u->frame_size;
     }
 
     pa_log_debug("setting avail_min=%lu", (unsigned long) avail_min);