diff options
author | Adrian Bunk <adrian.bunk@movial.com> | 2011-06-03 09:17:04 +0000 |
---|---|---|
committer | Adrian Bunk <adrian.bunk@movial.com> | 2011-06-03 09:17:04 +0000 |
commit | 799757ccf1d03c33c75bc597cd5ef77741dcb6a7 (patch) | |
tree | a8c3be85c730de28b012586591b76301033d3d21 /doc/audio-api.txt |
Imported upstream 4.91upstream-4.91upstreampackaging
Diffstat (limited to 'doc/audio-api.txt')
-rw-r--r-- | doc/audio-api.txt | 458 |
1 files changed, 458 insertions, 0 deletions
diff --git a/doc/audio-api.txt b/doc/audio-api.txt new file mode 100644 index 0000000..e7991f3 --- /dev/null +++ b/doc/audio-api.txt @@ -0,0 +1,458 @@ +BlueZ D-Bus Audio API description +********************************* + +Copyright (C) 2004-2010 Marcel Holtmann <marcel@holtmann.org> +Copyright (C) 2005-2007 Johan Hedberg <johan.hedberg@nokia.com> +Copyright (C) 2005-2006 Brad Midgley <bmidgley@xmission.com> + +Audio hierarchy +=============== + +Service org.bluez +Interface org.bluez.Audio +Object path [variable prefix]/{hci0,hci1,...}/dev_XX_XX_XX_XX_XX_XX + +This is a generic audio interface that abstracts the different audio profiles. + +Methods void Connect() + + Connect all supported audio profiles on the device. + + void Disconnect() + + Disconnect all audio profiles on the device + + dict GetProperties() + + Returns all properties for the interface. See the + properties section for available properties. + +Signals void PropertyChanged(string name, variant value) + + This signal indicates a changed value of the given + property. + +Properties string State + + Possible values: "disconnected", "connecting", + "connected" + + "disconnected" -> "connecting" + Either an incoming or outgoing connection + attempt ongoing. + + "connecting" -> "disconnected" + Connection attempt failed + + "connecting" -> "connected" + Successfully connected + + "connected" -> "disconnected" + Disconnected from the remote device + +Headset hierarchy +================= + +Service org.bluez +Interface org.bluez.Headset +Object path [variable prefix]/{hci0,hci1,...}/dev_XX_XX_XX_XX_XX_XX + +Methods void Connect() + + Connect to the HSP/HFP service on the remote device. + + void Disconnect() + + Disconnect from the HSP/HFP service on the remote + device. + + boolean IsConnected() {deprecated} + + Returns TRUE if there is a active connection to the + HSP/HFP connection on the remote device. + + void IndicateCall() + + Indicate an incoming call on the headset + connected to the stream. Will continue to + ring the headset about every 3 seconds. + + void CancelCall() + + Cancel the incoming call indication. + + void Play() + + Open the audio connection to the headset. + + void Stop() + + Close the audio connection. + + boolean IsPlaying() {deprecated} + + Returns true if an audio connection to the headset + is active. + + uint16 GetSpeakerGain() {deprecated} + + Returns the current speaker gain if available, + otherwise returns the error NotAvailable. + + uint16 GetMicrophoneGain() {deprecated} + + Returns the current microphone gain if available, + otherwise returns the error NotAvailable. + + void SetSpeakerGain(uint16 gain) {deprecated} + + Changes the current speaker gain if possible. + + void SetMicrophoneGain(uint16 gain) {deprecated} + + Changes the current speaker gain if possible. + + dict GetProperties() + + Returns all properties for the interface. See the + properties section for available properties. + + Possible Errors: org.bluez.Error.InvalidArguments + + 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. + + Possible Errors: org.bluez.Error.DoesNotExist + org.bluez.Error.InvalidArguments + +Signals void AnswerRequested() + + Sent when the answer button is pressed on the headset + + void Connected() {deprecated} + + Sent when the device has been connected to. + + void Disconnected() {deprecated} + + Sent when the device has been disconnected from. + + void Stopped() {deprecated} + + Sent when the audio connection is closed + + void Playing() {deprecated} + + Sent when the audio connection is opened + + void SpeakerGainChanged(uint16 gain) {deprecated} + + The speaker gain changed. + + void MicrophoneGainChanged(uint16 gain) {deprecated} + + The microphone gain changed. + + PropertyChanged(string name, variant value) + + This signal indicates a changed value of the given + property. + +properties string State [readonly] + + Possible values: "disconnected", "connecting", + "connected", "playing" + + "disconnected" -> "connecting" + Either an incoming or outgoing connection + attempt ongoing. + + "connecting" -> "disconnected" + Connection attempt failed + + "connecting" -> "connected" + Successfully connected + + "connected" -> "playing" + SCO audio connection successfully opened + + "playing" -> "connected" + SCO audio connection closed + + "connected" -> "disconnected" + "playing" -> "disconnected" + Disconnected from the remote device + + boolean Connected [readonly] + + Indicates if there is a active connection to the + HSP/HFP connection on the remote device. + + boolean Playing [readonly] + + Indicates if an audio connection to the headset + is active. + + uint16 SpeakerGain [readwrite] + + The speaker gain when available. + + uint16 MicrophoneGain [readwrite] + + The speaker gain when available. + + +AudioSink hierarchy +=================== + +Service org.bluez +Interface org.bluez.AudioSink +Object path [variable prefix]/{hci0,hci1,...}/dev_XX_XX_XX_XX_XX_XX + +Methods void Connect() + + Connect and setup a stream to a A2DP sink on the + remote device. + + void Disconnect() + + Disconnect from the remote device. + + boolean IsConnected() {deprecated} + + Returns TRUE if a stream is setup to a A2DP sink on + the remote device. + + dict GetProperties() + + Returns all properties for the interface. See the + properties section for available properties. + + Possible Errors: org.bluez.Error.InvalidArguments + +Signals void Connected() {deprecated} + + Sent when a successful connection has been made to the + remote A2DP Sink + + void Disconnected() {deprecated} + + Sent when the device has been disconnected from. + + void Playing() {deprecated} + + Sent when a stream with remote device is started. + + void Stopped() {deprecated} + + Sent when a stream with remote device is suspended. + + PropertyChanged(string name, variant value) + + This signal indicates a changed value of the given + property. + +properties string State [readonly] + + Possible values: "disconnected", "connecting", + "connected", "playing" + + "disconnected" -> "connecting" + Either an incoming or outgoing connection + attempt ongoing. + + "connecting" -> "disconnected" + Connection attempt failed + + "connecting" -> "connected" + Successfully connected + + "connected" -> "playing" + Audio stream active + + "playing" -> "connected" + Audio stream suspended + + "connected" -> "disconnected" + "playing" -> "disconnected" + Disconnected from the remote device + + boolean Connected [readonly] + + Indicates if a stream is setup to a A2DP sink on + the remote device. + + boolean Playing [readonly] + + Indicates if a stream is active to a A2DP sink on + the remote device. + +AudioSource hierarchy +===================== + +Service org.bluez +Interface org.bluez.AudioSource +Object path [variable prefix]/{hci0,hci1,...}/dev_XX_XX_XX_XX_XX_XX + +Methods void Connect() + + Connect and setup a stream to a A2DP source on the + remote device. + + void Disconnect() + + Disconnect from the remote device. + + dict GetProperties() + + Returns all properties for the interface. See the + properties section for available properties. + + Possible Errors: org.bluez.Error.InvalidArguments + +Signals PropertyChanged(string name, variant value) + + This signal indicates a changed value of the given + property. + +properties string State [readonly] + + Possible values: "disconnected", "connecting", + "connected", "playing" + + "disconnected" -> "connecting" + Either an incoming or outgoing connection + attempt ongoing. + + "connecting" -> "disconnected" + Connection attempt failed + + "connecting" -> "connected" + Successfully connected + + "connected" -> "playing" + Audio stream active + + "playing" -> "connected" + Audio stream suspended + + "connected" -> "disconnected" + "playing" -> "disconnected" + Disconnected from the remote device + + +HeadsetGateway hierarchy +======================== + +Service org.bluez +Interface org.bluez.HeadsetGateway +Object path [variable prefix]/{hci0,hci1,...}/dev_XX_XX_XX_XX_XX_XX + +This interface is available for remote devices which can function in the Audio +Gateway role of the HFP profiles. + +Methods void Connect() + + Connect to the AG service on the remote device. + + void Disconnect() + + Disconnect from the AG service on the remote device + + void AnswerCall() + + It has to called only after Ring signal received. + + void TerminateCall() + + Terminate call which is running or reject an incoming + call. This has nothing with any 3-way situation incl. + RaH. Just plain old PDH. + + void Call(string number) + + Dial a number 'number'. No number processing is done + thus if AG would reject to dial it don't blame me :) + + string GetOperatorName() + + Find out the name of the currently selected network + operator by AG. + + void SendDTMF(string digits) + + Will send each digit in the 'digits' sequentially. Would + send nothing if there is non-dtmf digit. + + string GetSubscriberNumber() + + Get the voicecall subscriber number of AG + + dict GetProperties() + + Returns all properties for the interface. See the + properties section for available properties. + +Signals void Ring(string number) + + Someone's calling from 'number'. + Caller number is provided as received from AG. + + void CallTerminated() + + Call failed to set up. It means that we tried to call + someone or someone tried to call us but call was not + accepted. + + void CallStarted() + + Call set up successfully. + + void CallEnded() + + Call was started and now ended. In contrast with + CallTerminated where call didn't started + + PropertyChanged(string name, variant value) + + This signal indicates a changed value of the given + property. + +properties boolean Connected [readonly] + + Indicates if there is an active connection to the + AG service on the remote device. + + uint16 RegistrationStatus [readonly] + + Service availability indicatior of AG, where: + 0 implies no service. No Home/Roam network available. + 1 implies presense of service. Home/Roam network + available. + + uint16 SignalStrength [readonly] + + Signal strength indicator of AG, the value ranges from + 0 to 5. + + uint16 RoamingStatus [readonly] + + Roaming status indicator of AG, where: + 0 means roaming is not active + 1 means a roaming is active + + uint16 BatteryCharge [readonly] + + Battery Charge indicator of AG, the value ranges from + 0 to 5. + + uint16 SpeakerGain [readonly] + + The speaker gain when available. + + uint16 MicrophoneGain [readonly] + + The speaker gain when available. |