[pulseaudio-discuss] [PATCH v1 0/3] Request audio-stream (SCO) on profile switch?

Mikel Astiz mikel.astiz.oss at gmail.com
Mon Dec 3 02:03:56 PST 2012

From: Mikel Astiz <mikel.astiz at bmw-carit.de>

This second proposal is similar to v0 with the following improvements as suggested by Tanu:
1. setup_stream() is called directly from thread_func() to avoid a race condition.
2. The profile switch to "hsp" or "a2dp" now fails if the bt_transport_acquire() fails. This avoids the unlikely but still undesired situation of PA_SUSPEND_IDLE state, which the user could not easily fix.

>From original cover-letter:

Current module-bluetooth-device relies on module-suspend-on-idle with regard to when the audio-stream (SCO) gets resumed/suspended. The bluetooth card assumes that SCO should be down (i.e. saving battery and radio bandwidth) until somebody starts to use it.

This can be considered a regresion in case some average users have PulseAudio without module-suspend-on-idle. Therefore, the simplest solution -only affecting the use headsets- would be to start SCO by default, and wait until it gets suspended some seconds later.

Mikel Astiz (3):
  bluetooth: Trivially refactor to call setup_stream() directly
  bluetooth: Do not setup stream before thread starts
  bluetooth: Request headset audio during profile switch

 src/modules/bluetooth/module-bluetooth-device.c | 18 +++++++++++++-----
 1 file changed, 13 insertions(+), 5 deletions(-)


More information about the pulseaudio-discuss mailing list