- why PA use snd_pcm_hw_params_get_buffer_size_max() instead of
snd_pcm_hw_params_get_buffer_size() after snd_pcm_hw_params() ?
Precisely to use the maximum preallocated buffer size.
I: module-alsa-sink.c: Using 2 fragments of size 4096 bytes, buffer time is 46.44ms D: alsa-util.c: buffer_size : 2048 D: alsa-util.c: period_size : 1024
With small buffers like this, I don't see the point of the timer-based scheduling, you will have one interrupt every 23ms.
- it seem bug in snd_pcm_sw_params_set_avail_min() since 4661 is larger
than the buffer size 2048 since PA still think that 371ms is the maximum buffer size
D: alsa-util.c: buffer_size : 2048 D: alsa-util.c: period_size : 1024 D: alsa-util.c: period_time : 23219 D: alsa-util.c: tstamp_mode : NONE D: alsa-util.c: period_step : 1 D: alsa-util.c: avail_min : 4661
This doesn't make sense. But avail_min isn't really used with the timer-based scheduling
For pulseaudio-0.9.14 on Fedora 10
Man, you are using an old version here, the alsa sink code was changed several times already.