[pulseaudio-discuss] [RFC v0 15/15] bluetooth: Update to volume control in BlueZ 5

Tanu Kaskinen tanuk at iki.fi
Wed Jan 2 05:18:34 PST 2013


On Wed, 2012-12-19 at 13:58 +0100, Mikel Astiz wrote:
> From: Mikel Astiz <mikel.astiz at bmw-carit.de>
> 
> In BlueZ 5, the microphone and speaker gains are exposed as properties
> of the MediaTransport1 interface.
> ---
>  src/modules/bluetooth/bluetooth-util.c | 12 ++++++++++++
>  1 file changed, 12 insertions(+)
> 
> diff --git a/src/modules/bluetooth/bluetooth-util.c b/src/modules/bluetooth/bluetooth-util.c
> index 16aee20..8c96cc1 100644
> --- a/src/modules/bluetooth/bluetooth-util.c
> +++ b/src/modules/bluetooth/bluetooth-util.c
> @@ -1578,6 +1578,12 @@ void pa_bluetooth_transport_set_microphone_gain(pa_bluetooth_transport *t, uint1
>      pa_assert(t);
>      pa_assert(t->profile == PROFILE_HSP);
>  
> +    if (t->device->discovery->version >= BLUEZ_VERSION_5) {
> +        set_property(t->device->discovery, t->owner, t->path, "org.bluez.MediaTransport1",
> +                     "MicrophoneGain", DBUS_TYPE_UINT16, &gain);
> +        return;
> +    }
> +
>      set_property(t->device->discovery, "org.bluez", t->device->path, "org.bluez.Headset",
>                   "MicrophoneGain", DBUS_TYPE_UINT16, &gain);
>  }
> @@ -1588,6 +1594,12 @@ void pa_bluetooth_transport_set_speaker_gain(pa_bluetooth_transport *t, uint16_t
>      pa_assert(t);
>      pa_assert(t->profile == PROFILE_HSP);
>  
> +    if (t->device->discovery->version >= BLUEZ_VERSION_5) {
> +        set_property(t->device->discovery, t->owner, t->path, "org.bluez.MediaTransport1",
> +                     "SpeakerGain", DBUS_TYPE_UINT16, &gain);
> +        return;
> +    }
> +
>      set_property(t->device->discovery, "org.bluez", t->device->path, "org.bluez.Headset",
>                   "SpeakerGain", DBUS_TYPE_UINT16, &gain);
>  }

The MicrophoneGain and SpeakerGain properties aren't parsed in
transport_parse_property(). You probably knew that already, but I'm
reminding anyway just to be sure.

-- 
Tanu



More information about the pulseaudio-discuss mailing list