[pulseaudio-tickets] [PulseAudio] #739: runaway cpu usage when using bluetooth headset

PulseAudio trac-noreply at tango.0pointer.de
Tue Dec 8 10:08:18 PST 2009


#739: runaway cpu usage when using bluetooth headset
----------------------+-----------------------------------------------------
 Reporter:  carlroth  |       Owner:  lennart
     Type:  defect    |      Status:  new    
Milestone:            |   Component:  daemon 
 Keywords:            |  
----------------------+-----------------------------------------------------
 I enabled a bluetooth headset in pulseaudio, and noticed that after a
 minute or so of use, the pulseaudio process spikes to close to 100% cpu.
 This condition persists even after the audio device is no longer being
 used.

 Some relevant info:
 system: Fedora 11 (x86_64)
 hardware: wiREVO HSH200 bluetooth headset
 pulseaudio-0.9.15-17.fc11.x86_64 (via Fedora RPMS)
 bluez-4.42-9.fc11.x86_64

 bluetooth client configuration (default.pa)

 .nofail
 load-module module-bluetooth-device profile=a2dp sink_name=wiREVO
 address=00:08:D6:50:00:3A                                           set-
 default-sink wiREVO
 set-card-profile wiREVO a2dp
 .fail

 server configuration (daemon.conf)
 (default, with the addition of)
 no-cpu-limit = yes
 (this setting was required, else pulseaudio exits with 'soft cpu limit
 exceeded'.

 I reproduced the behavior by playing a sound sample (in this case, the KDE
 login jingle) repeatedly until I saw the CPU usage spike.

 Eventually, pulseaudio disabled the bluetooth headset (idle time) and the
 CPU usage went down.

 I've read anecdotal reports that the resampling algorithm can influence
 CPU usage; I tried different settings including 'trivial' and 'src-linear'
 and the effect was the same.

 The playback quality does not seem to change regardless of the CPU usage
 (this is a multi-core system).

-- 
Ticket URL: <http://pulseaudio.org/ticket/739>
PulseAudio <http://pulseaudio.org/>
The PulseAudio Sound Server


More information about the pulseaudio-bugs mailing list