From: Mikel Astiz <[email protected]>

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(-)

-- 
1.7.11.7

_______________________________________________
pulseaudio-discuss mailing list
[email protected]
http://lists.freedesktop.org/mailman/listinfo/pulseaudio-discuss

Reply via email to