[pulseaudio-discuss] Routing questions of module-switch-on-connect, module-device-manager and device profiles

Tanu Kaskinen tanu.kaskinen at digia.com
Thu Sep 22 07:45:29 PDT 2011


On Thu, 2011-09-22 at 04:53 +0300, Lin, Mengdong wrote:
> Streams prioritization would be nice. At least a "phone" stream shall
> have the highest priority, which is true in all customer's policy
> requirements. And all "non-phone" streams can have a same priority,
> lower than phone. I feel it's hard to further prioritize other streams
> based on their media roles or applications, as customers never unify
> on this. In addition, some device have profiles for "phone" or
> "non-phone" respectively (e.g. Bluetooth HSP and A2DP profiles).This
> can make things simple, we need only care the 1st priority "phone"
> stream. When a new "phone" stream is created and routed to a device or
> an existing "phone" stream is routed to a new connected device/card,
> if that card has a profile more suitable than active profile, that
> card need change profile and phone stream will be routed to the new
> sink/source. This will also trigger other stream's routing to the new
> device but no further profile changes. And when the "phone" stream is
> unlinked, the card can change to
>   a profile more suitable for "non-phone" streams, if
> SINK_INPUT/SOURCE_OUTPUT_UNLINK hooks can tell me the original device
> it linked to. 
> 
> It seems to me that the above work can be done a module based on
> sink-input/source-output's PUT/MOVE_FINISH/UNLINK hooks. 
> Please correct me if I miss something. I'm not sure if there are other
> similar "stream role & profile" relationships like "phone & Bluetooth
> profiles".

There are many other possible role & profile/port relationships. On a
handset, for example, you may have a sink that can play to the IHF
(integrated hands-free) speakers and to the earpiece (the small ear
speaker). When a call comes in, you'll want to play the ringtone to the
IHF speaker and after that switch to the earpiece for the call audio.
The switching can be done by changing the sink port.

There can be a lot of this kind of policy rules.

-- 
Tanu



More information about the pulseaudio-discuss mailing list