diff options
author | Andy Hung <hunga@google.com> | 2015-03-26 19:13:55 -0700 |
---|---|---|
committer | Andy Hung <hunga@google.com> | 2015-04-09 18:49:15 -0700 |
commit | 8edb8dc44b8a2f81bdb5db645b6b708548771a31 (patch) | |
tree | 663bda0f8a3d43894fa6d3d3f4283ed0df427f03 /media/libmedia/AudioTrackShared.cpp | |
parent | c5656cc900aeb4a705e27508dd82c70030a97709 (diff) | |
download | frameworks_av-8edb8dc44b8a2f81bdb5db645b6b708548771a31.zip frameworks_av-8edb8dc44b8a2f81bdb5db645b6b708548771a31.tar.gz frameworks_av-8edb8dc44b8a2f81bdb5db645b6b708548771a31.tar.bz2 |
Add playback rate to AudioTrack
Bug: 19196501
Change-Id: I6411e1d3ce652b711a71a6d9df020cb5f60d4714
Diffstat (limited to 'media/libmedia/AudioTrackShared.cpp')
-rw-r--r-- | media/libmedia/AudioTrackShared.cpp | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/media/libmedia/AudioTrackShared.cpp b/media/libmedia/AudioTrackShared.cpp index 6d5f1af..ba67b40 100644 --- a/media/libmedia/AudioTrackShared.cpp +++ b/media/libmedia/AudioTrackShared.cpp @@ -793,6 +793,16 @@ void AudioTrackServerProxy::tallyUnderrunFrames(uint32_t frameCount) (void) android_atomic_or(CBLK_UNDERRUN, &cblk->mFlags); } +void AudioTrackServerProxy::getPlaybackRate(float *speed, float *pitch) +{ // do not call from multiple threads without holding lock + AudioTrackPlaybackRate playbackRate; + if (mPlaybackRateObserver.poll(playbackRate)) { + mPlaybackRate = playbackRate; + } + *speed = mPlaybackRate.mSpeed; + *pitch = mPlaybackRate.mPitch; +} + // --------------------------------------------------------------------------- StaticAudioTrackServerProxy::StaticAudioTrackServerProxy(audio_track_cblk_t* cblk, void *buffers, |