PulseAudio's resample-method in Ubuntu is currently set to "speex-float-3", which uses a high amount of CPU when a client uses a different sample rate than the server.
Here's an example: if you play a 48Khz mp3, it has to be downsampled PulseAudio's default rate of 44.1Khz. On my system, the pulseaudio process takes up a ridiculous amount of CPU in such a case, usually between 15-20% on my Pentium M 1.5Ghz system. On the other hand, playing a 44.1Khz mp3 causes pulseaudio to use around 5-10% CPU on average (as it uses the resample-method "copy", which is no resampling at all).
Unfortunately, PulseAudio cannot change sample rates dynamically (see http://www.pulseaudio.org/ticket/262 ), so we can mitigate this high CPU load by using a faster resampler. I propose that we use the "speex-fixed-0" resample-method, as it reduces pulseaudio's average CPU usage from ~15% to ~10% when resampling.
PulseAudio's resample-method in Ubuntu is currently set to "speex-float-3", which uses a high amount of CPU when a client uses a different sample rate than the server.
Here's an example: if you play a 48Khz mp3, it has to be downsampled PulseAudio's default rate of 44.1Khz. On my system, the pulseaudio process takes up a ridiculous amount of CPU in such a case, usually between 15-20% on my Pentium M 1.5Ghz system. On the other hand, playing a 44.1Khz mp3 causes pulseaudio to use around 5-10% CPU on average (as it uses the resample-method "copy", which is no resampling at all).
Unfortunately, PulseAudio cannot change sample rates dynamically (see http:// www.pulseaudio. org/ticket/ 262 ), so we can mitigate this high CPU load by using a faster resampler. I propose that we use the "speex-fixed-0" resample-method, as it reduces pulseaudio's average CPU usage from ~15% to ~10% when resampling.
See Mandriva's bug report here: https:/ /qa.mandriva. com/show_ bug.cgi? id=36084
Their resolution to high CPU usage was to change the resample-method to "speex-fixed-0".