diff options
author | Glenn Kasten <gkasten@google.com> | 2012-11-08 17:13:02 -0800 |
---|---|---|
committer | Android (Google) Code Review <android-gerrit@google.com> | 2012-11-08 17:13:02 -0800 |
commit | 3f6f4393d0adf4465959059d69798aed55e34876 (patch) | |
tree | d79a1043adfa3cc4f09b0b95255f2e9bc97a5099 /services | |
parent | c6ccbabd2800e749bc86a34d2ae233f99102ba51 (diff) | |
parent | 2f6226ad7a3fa81dc102001fbc1d1288e55a0947 (diff) | |
download | frameworks_av-3f6f4393d0adf4465959059d69798aed55e34876.zip frameworks_av-3f6f4393d0adf4465959059d69798aed55e34876.tar.gz frameworks_av-3f6f4393d0adf4465959059d69798aed55e34876.tar.bz2 |
Merge "Move buffers pointer out of the control block"
Diffstat (limited to 'services')
-rw-r--r-- | services/audioflinger/AudioFlinger.cpp | 6 | ||||
-rw-r--r-- | services/audioflinger/AudioFlinger.h | 1 |
2 files changed, 4 insertions, 3 deletions
diff --git a/services/audioflinger/AudioFlinger.cpp b/services/audioflinger/AudioFlinger.cpp index 69ac3e3..c0f5c7b 100644 --- a/services/audioflinger/AudioFlinger.cpp +++ b/services/audioflinger/AudioFlinger.cpp @@ -5534,11 +5534,11 @@ AudioFlinger::PlaybackThread::OutputTrack::OutputTrack( int frameCount) : Track(playbackThread, NULL, AUDIO_STREAM_CNT, sampleRate, format, channelMask, frameCount, NULL, 0, IAudioFlinger::TRACK_DEFAULT), - mActive(false), mSourceThread(sourceThread) + mActive(false), mSourceThread(sourceThread), mBuffers(NULL) { if (mCblk != NULL) { - mCblk->buffers = (char*)mCblk + sizeof(audio_track_cblk_t); + mBuffers = (char*)mCblk + sizeof(audio_track_cblk_t); mOutBuffer.frameCount = 0; playbackThread->mTracks.add(this); ALOGV("OutputTrack constructor mCblk %p, mBuffer %p, mCblk->buffers %p, " \ @@ -5749,7 +5749,7 @@ status_t AudioFlinger::PlaybackThread::OutputTrack::obtainBuffer( } buffer->frameCount = framesReq; - buffer->raw = (void *)cblk->buffer(u); + buffer->raw = cblk->buffer(mBuffers, u); return NO_ERROR; } diff --git a/services/audioflinger/AudioFlinger.h b/services/audioflinger/AudioFlinger.h index 1417105..fc24bed 100644 --- a/services/audioflinger/AudioFlinger.h +++ b/services/audioflinger/AudioFlinger.h @@ -1035,6 +1035,7 @@ private: AudioBufferProvider::Buffer mOutBuffer; bool mActive; DuplicatingThread* const mSourceThread; // for waitTimeMs() in write() + void* mBuffers; // starting address of buffers in plain memory }; // end of OutputTrack PlaybackThread(const sp<AudioFlinger>& audioFlinger, AudioStreamOut* output, |