diff options
author | Paul McLean <pmclean@google.com> | 2015-03-21 09:55:15 -0700 |
---|---|---|
committer | Paul McLean <pmclean@google.com> | 2015-04-08 09:51:07 -0700 |
commit | aa9811945f575614b3482d09e4d969792701cebb (patch) | |
tree | 1744aa567efe78c3062ec80da19277d96def0725 /include/media/AudioTrack.h | |
parent | 41efeb2b477066d96ad34a048f34fb6fb34213ec (diff) | |
download | frameworks_av-aa9811945f575614b3482d09e4d969792701cebb.zip frameworks_av-aa9811945f575614b3482d09e4d969792701cebb.tar.gz frameworks_av-aa9811945f575614b3482d09e4d969792701cebb.tar.bz2 |
Adding explicit routing API to AudioTrack
Change-Id: I40c048c7644c46f4e4f7103875206c0785c4b1dc
Diffstat (limited to 'include/media/AudioTrack.h')
-rw-r--r-- | include/media/AudioTrack.h | 24 |
1 files changed, 24 insertions, 0 deletions
diff --git a/include/media/AudioTrack.h b/include/media/AudioTrack.h index d9b7057..e7e0703 100644 --- a/include/media/AudioTrack.h +++ b/include/media/AudioTrack.h @@ -477,6 +477,26 @@ private: audio_io_handle_t getOutput() const; public: + /* Selects the audio device to use for output of this AudioTrack. A value of + * AUDIO_PORT_HANDLE_NONE indicates default (AudioPolicyManager) routing. + * + * Parameters: + * The device ID of the selected device (as returned by the AudioDevicesManager API). + * + * Returned value: + * - NO_ERROR: successful operation + * TODO: what else can happen here? + */ + status_t setOutputDevice(audio_port_handle_t deviceId); + + /* Returns the ID of the audio device used for output of this AudioTrack. + * A value of AUDIO_PORT_HANDLE_NONE indicates default (AudioPolicyManager) routing. + * + * Parameters: + * none. + */ + audio_port_handle_t getOutputDevice(); + /* Returns the unique session ID associated with this track. * * Parameters: @@ -817,6 +837,10 @@ protected: bool mInUnderrun; // whether track is currently in underrun state uint32_t mPausedPosition; + // For Device Selection API + // a value of AUDIO_PORT_HANDLE_NONE indicated default (AudioPolicyManager) routing. + int mSelectedDeviceId; + private: class DeathNotifier : public IBinder::DeathRecipient { public: |