Troy Benjegerdes wrote:
On Thu, Jul 17, 2008 at 05:46:17PM +0200, Alexey Feldgendler wrote:
On Thu, 17 Jul 2008 17:27:37 +0200, Russell Sears <[EMAIL PROTECTED]>
wrote:
I uploaded a fix to the bug tracker. It bypasses PulseAudio and uses
ALSA. Any idea why that helps? In principle, ALSA and PulseAudio
should have to perform the same computations to play the sound back
(alsa contains a software resampler...) I haven't been able to find any
obviously mistakes in the configuration files.
Also, are there any bad implications to bypassing pulseaudio? I haven't
noticed any. I'd like to get ogg vorbis (and anything else that outputs
16bit/44.1kHz) fixed in the official image...
And why again do we need pulseaudio at all?
It does some nice things, like multi-channel mixing, network
transparency, synchronization of multiple audio devices. (though
gstreamer and alsa do some of these things as well...)
It should have essentially zero overhead when properly configured, and
when its not doing anything fancy. I don't think these performance
problems are fundamental.
For power and performance reasons on a cell phone, I think anything a
sound server does would be much better done in the kernel-level ALSA
drivers. The only downside I can see to this approach whether the
in-kernel bluetooth audio drivers are any good.
Kernel-level software resampling should be just as expensive as
userspace resampling... Pulseaudio does seem to do some soft-realtime
stuff and adds a bit of device transparency.
Last I tried bluetooth-audio on my laptop I had to run a userspace
daemon.
I have no idea what would happen with Alsa if you tried to transfer a
call between the speaker and the bluetooth set. I think pulseaudio can
handle this sort of thing correctly.
Speaking of which.. do we have any way to measure the power consumption
of playing a reference .ogg file without special hardware? Are the
built-in battery charge management counters good enough?
Good question. :) Also, pulseaudio may be preventing the sound card and
cpu from falling asleep, even when no sounds are being played. From
what I can tell, it's been configured to never go idle.
-Rusty