[pulseaudio-discuss] [PATCH] profile-switcher: New module to switch card profiles based on roles

Arun Raghavan arun.raghavan at collabora.co.uk
Tue Nov 1 05:59:28 PDT 2011


On Tue, 2011-11-01 at 17:24 +0800, Lin, Mengdong wrote:
> How about making profile switch more general?
> 
> 1. When a card adds a new profile, add a property "intended roles" to the profile, same as what we do to a device:
>   Add a line to proplist.h
>   #define PA_PROP_DEVICE_PROFILE_DESCRIPTION     "device.profile. intended_roles"
> 
>   And change the API to create a profile:
>   From pa_card_profile *pa_card_profile_new(const char *name, const char *description, size_t extra);
>   To pa_card_profile *pa_card_profile_new(const char *name, pa_profile_new_data *data);
>   The "pa_profile_new_data" structure can contain both a description and the intended roles property.

Other than on Bluetooth (and *maybe* USB devices with sufficient
metadata), there really isn't a way to accurately tag a sink (especially
ALSA sink) with an intended role.

> 2. Then the module-device-switch can query the profile intended roles and select the best profile for a stream.
> 
> Is this doable? If yes, I can write a patch for it and change the Bluetooth device module to add "phone" property for "hsp" profile?

This is already done in the bluetooth module.

Regards,
Arun



More information about the pulseaudio-discuss mailing list