From 4759a880a30691a7ae9081154e2e06ac7eaf94be Mon Sep 17 00:00:00 2001 From: Luiz Augusto Von Dentz Date: Wed, 13 Jan 2010 16:56:23 +0200 Subject: [PATCH 1/4] Add media API documentation Media API is a replacement for the internal audio IPC which is no longer necessary as DBus 1.3 and newer are capable of transfering file descriptors. --- doc/media-api.txt | 123 +++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 files changed, 123 insertions(+), 0 deletions(-) create mode 100644 doc/media-api.txt diff --git a/doc/media-api.txt b/doc/media-api.txt new file mode 100644 index 0000000..b7c641c --- /dev/null +++ b/doc/media-api.txt @@ -0,0 +1,123 @@ +BlueZ D-Bus Media API description +********************************* + +Media hierarchy +=============== + +Service org.bluez +Interface org.bluez.Media +Object path [variable prefix]/{hci0,hci1,...} + +Methods void RegisterEndpoint(object endpoint, dict properties) + + Register a local end point to sender, the sender can + register as many end points as it likes. + + Note: If the sender disconnects the end points are + automatically unregistered. + + possible properties: + + string UUID: + + UUID of the profile which the endpoint + is for. + + byte Codec: + + Assigned mumber of codec that the + endpoint implements. The values should + match the profile specification which + is indicated by the UUID. + + array{byte} Capabilities: + + Capabilities blob, it is used as it is + so the size and byte order must match. + + void UnregisterEndpoint(object endpoint) + + Unregister sender end point. + +MediaEndpoint hierarchy +======================= + +Service unique name +Interface org.bluez.MediaEndpoint +Object path freely definable + +Methods void SetConfiguration(object transport, array{byte} configuration) + + Set configuration for the transport. + + array{byte} SelectConfiguration(array{byte} capabilities) + + Select preferable configuration from the supported + capabilities. + + Returns a configuration which can be used to setup + a transport. + + Note: There is no need to cache the selected + configuration since on success the configuration is + send back as parameter of SetConfiguration. + + void ClearConfiguration() + + Clear any configuration set. + +MediaTransport hierarchy +======================== + +Service org.bluez +Interface org.bluez.MediaTransport +Object path [variable prefix]/{hci0,hci1,...}/dev_XX_XX_XX_XX_XX_XX/fdX + +Methods dict GetProperties() + + Returns all properties for the interface. See the + properties section for available properties. + + fd Acquire(string accesstype) + + Acquire transport file descriptor. + + possible accesstype: + + "r" : Read only access + + "w" : Write only access + + "rw": Read and write access + + void Release(string accesstype) + + Releases file descriptor. + + void SetProperty(string name, variant value) + + Changes the value of the specified property. Only + properties that are listed a read-write are changeable. + On success this will emit a PropertyChanged signal. + +Signals void PropertyChanged(string name, variant value) + + This signal indicates a changed value of the given + property. + +Properties uint16 Delay [readwrite] + + Optional. Transport delay in 1/10 of milisecond, this + property is only writeable when the transport was + acquired by the sender and the sender is a sink. + + boolean NREC [readwrite] + + Optional. It tells if echo cancelling and noise + reduction functions are active in the transport, this + property is only writeable when the transport was + acquired by the sender. + + object Device [readonly] + + Device object which the transport is connected to. -- 1.6.3.3