On 02/04/2013 04:07 PM, Tanu Kaskinen wrote:
On Mon, 2013-02-04 at 15:50 +0100, David Henningsson wrote:
On 02/04/2013 03:44 PM, Tanu Kaskinen wrote:
I don't think merging ports with sinks/sources is the most relevant
question here. The question is how to simultaneously present a Bluetooth
headset as a single routing endpoint to the user and have means to
sufficiently distinguish between A2DP and HSP inside PulseAudio.
I haven't fully understood the problem with having merged ports for A2DP
and HSP - there are still different sources and sinks, so one could just
look at the current active sink if that's what you need to know.
I do understand that if something was modelled in one way, and then we
had to do an emergency fix because the model caused regressions in the
UI, the fixups become ugly as a result. What I don't know yet is why
multiple ports for A2DP and HSP would be a better model inside
PulseAudio from start?
I have proposed that we use the routing nodes of the policy work done by
Janos and Jaska to represent the headset as a single routing endpoint,
and associate multiple ports (A2DP and HSP) with that routing endpoint.
I would like to reach a consensus about this proposal. Is it ok for
everybody? David? Janos? Jaska? Please comment.
It is difficult to have an opinion without knowing more about the
routing framework and what a routing endpoint really is. But even if
this proposal gets implemented, still somebody needs to rewrite the UI
to use routing endpoints instead of ports - which should be an argument
against this proposal in the first place.
Mikel knows the details of the problem that he's working on right now,
I'll repeat an argument that I have stated earlier: sometimes the
Bluetooth setup is such that the HSP audio is routed through ALSA and
the A2DP audio is routed through BlueZ. Having a single port for the
headset is problematic in this scenario. I'd rather have a separate
"routing endpoint" concept for representing the headset. Do you prefer
merging ports even in this case?
If A2DP and HSP audio go through different sound cards, we have no
possibility to merge them right now.
Not that I have ever seen such a setup. Can it happen on desktop/laptop
computers you buy in the store, or only on highly specialised embedded
environments (which are likely to have their own UI anyway)?
I have no idea about desktop/laptop machines. I know that 100% of
smartphones that I've worked with (i.e. 3 Nokia models) have used ALSA
for HSP,
...and at the same time BlueZ for A2DP? Or everything through ALSA?
but I expect there to be phones that use the "normal"
everything-through-BlueZ setup. I don't consider phone UIs any more
specialized than desktop UIs: in both cases, one UI codebase should work
with a wide variety of hardware. I don't think the Ubuntu Phone UI
developers, for example, want to care about the Bluetooth hardware
details.
Okay, so how would PulseAudio autodetect that HSP and A2DP, even though
belonging to different cards, actually are connections to the same
physical headset?
--
David Henningsson, Canonical Ltd.
https://launchpad.net/~diwic
_______________________________________________
pulseaudio-discuss mailing list
[email protected]
http://lists.freedesktop.org/mailman/listinfo/pulseaudio-discuss