[alsa-devel] Questions regarding workaround for VMware
Colin Guthrie
gmane at colin.guthr.ie
Thu Sep 17 15:06:04 CEST 2009
'Twas brillig, and Bankim Bhavsar at 17/09/09 01:27 did gyre and gimble:
> On a side-note there seems to be some change in PulseAudio bring
> shipped with Ubuntu 9.10 over 9.04 that affects sound playback
> quality.
> With PulseAudio in 9.10, programmed DMA buffer is 64k and num_periods
> is always 1 and thereby number of interrupts generated per sec is just
> 2 for 16-bit, 44Khz, stereo.
> IMO the number interrupts is too low and this leads to under-runs.
> Whats the reason for choosing always 1 period and having large
> buffer/period size (power-savings?)?
>
> If I disable PulseAudio in 9.10, programmed DMA buffer is 64k with 16
> periods each of size 4k and virtual sound device would generate 46-48
> interrupts per sec. With this setting sound playback quality is good.
I'm not sure about Ubuntu setup but the disabling of interupts and using
timers is indeed all about power savings. The wakeup time is dynamically
adjusted when an underrun occurs so as to avoid it in the future.
Some Nokia/Intel folks (can't remember which) are experimenting with
very large latencies (e.g. up to about 10s) in order to get maximum
power savings.
You can read more about it here:
http://0pointer.de/blog/projects/pulse-glitch-free.html
You can disable this timer based scheduling by passing the argument
tsched=0 to module-hal-detect or module-udev-detect (whichever is in
use: the latter obsoleting the former) in /etc/pulse/default.pa
Col
--
Colin Guthrie
gmane(at)colin.guthr.ie
http://colin.guthr.ie/
Day Job:
Tribalogic Limited [http://www.tribalogic.net/]
Open Source:
Mandriva Linux Contributor [http://www.mandriva.com/]
PulseAudio Hacker [http://www.pulseaudio.org/]
Trac Hacker [http://trac.edgewall.org/]
More information about the Alsa-devel
mailing list