From 5a8a95de6dad1a3bcf3da5a37b35766e89086e13 Mon Sep 17 00:00:00 2001 From: Ricardo Garcia Date: Sat, 18 Apr 2015 14:47:04 -0700 Subject: Use AudioPlaybackRate to hold TimestretchBufferProvider parameters Use this struct to handle the parameters for TimestretchBufferProvider all across the system. Add stretch mode and fallback mode to TimestretchBuffer Provider. Change-Id: I19099924a7003c62e48bb6ead56c785cb129fba2 --- media/libmedia/AudioTrackShared.cpp | 10 +++------- 1 file changed, 3 insertions(+), 7 deletions(-) (limited to 'media/libmedia/AudioTrackShared.cpp') diff --git a/media/libmedia/AudioTrackShared.cpp b/media/libmedia/AudioTrackShared.cpp index aee9fc2..1d7aed2 100644 --- a/media/libmedia/AudioTrackShared.cpp +++ b/media/libmedia/AudioTrackShared.cpp @@ -794,14 +794,10 @@ void AudioTrackServerProxy::tallyUnderrunFrames(uint32_t frameCount) (void) android_atomic_or(CBLK_UNDERRUN, &cblk->mFlags); } -void AudioTrackServerProxy::getPlaybackRate(float *speed, float *pitch) +AudioPlaybackRate AudioTrackServerProxy::getPlaybackRate() { // do not call from multiple threads without holding lock - AudioTrackPlaybackRate playbackRate; - if (mPlaybackRateObserver.poll(playbackRate)) { - mPlaybackRate = playbackRate; - } - *speed = mPlaybackRate.mSpeed; - *pitch = mPlaybackRate.mPitch; + mPlaybackRateObserver.poll(mPlaybackRate); + return mPlaybackRate; } // --------------------------------------------------------------------------- -- cgit v1.1