summaryrefslogtreecommitdiffstats
path: root/media
diff options
context:
space:
mode:
authorGlenn Kasten <gkasten@google.com>2012-11-08 12:13:58 -0800
committerGlenn Kasten <gkasten@google.com>2012-11-08 12:18:59 -0800
commitb929e417853694e37aba1ef4399f188987b709d9 (patch)
tree670f2da01fd3d33df6da2998c78273e0701300ad /media
parenta47f3165f53c8e8fb8907a94de7417e2c3047eeb (diff)
downloadframeworks_av-b929e417853694e37aba1ef4399f188987b709d9.zip
frameworks_av-b929e417853694e37aba1ef4399f188987b709d9.tar.gz
frameworks_av-b929e417853694e37aba1ef4399f188987b709d9.tar.bz2
Move buffers pointer out of the control block
This is part of a series to clean up the control block. Change-Id: Ie474557db7cb360f2d9a0f11600a68f5a3d46f07
Diffstat (limited to 'media')
-rw-r--r--media/libmedia/AudioRecord.cpp4
-rw-r--r--media/libmedia/AudioTrack.cpp12
2 files changed, 8 insertions, 8 deletions
diff --git a/media/libmedia/AudioRecord.cpp b/media/libmedia/AudioRecord.cpp
index ae1842e..263a7c7 100644
--- a/media/libmedia/AudioRecord.cpp
+++ b/media/libmedia/AudioRecord.cpp
@@ -465,7 +465,7 @@ status_t AudioRecord::openRecord_l(
mCblkMemory.clear();
mCblkMemory = cblk;
mCblk = static_cast<audio_track_cblk_t*>(cblk->pointer());
- mCblk->buffers = (char*)mCblk + sizeof(audio_track_cblk_t);
+ mBuffers = (char*)mCblk + sizeof(audio_track_cblk_t);
mCblk->bufferTimeoutMs = MAX_RUN_TIMEOUT_MS;
mCblk->waitTimeMs = 0;
return NO_ERROR;
@@ -561,7 +561,7 @@ create_new_record:
audioBuffer->frameCount = framesReq;
audioBuffer->size = framesReq*cblk->frameSize;
- audioBuffer->raw = (int8_t*)cblk->buffer(u);
+ audioBuffer->raw = cblk->buffer(mBuffers, u);
active = mActive;
return active ? status_t(NO_ERROR) : status_t(STOPPED);
}
diff --git a/media/libmedia/AudioTrack.cpp b/media/libmedia/AudioTrack.cpp
index 7ce9879..468bd29 100644
--- a/media/libmedia/AudioTrack.cpp
+++ b/media/libmedia/AudioTrack.cpp
@@ -895,9 +895,9 @@ status_t AudioTrack::createTrack_l(
}
}
if (sharedBuffer == 0) {
- cblk->buffers = (char*)cblk + sizeof(audio_track_cblk_t);
+ mBuffers = (char*)cblk + sizeof(audio_track_cblk_t);
} else {
- cblk->buffers = sharedBuffer->pointer();
+ mBuffers = sharedBuffer->pointer();
// Force buffer full condition as data is already present in shared memory
cblk->stepUserOut(cblk->frameCount);
}
@@ -1027,7 +1027,7 @@ create_new_track:
audioBuffer->frameCount = framesReq;
audioBuffer->size = framesReq * cblk->frameSize;
- audioBuffer->raw = (int8_t *)cblk->buffer(u);
+ audioBuffer->raw = cblk->buffer(mBuffers, u);
active = mActive;
return active ? status_t(NO_ERROR) : status_t(STOPPED);
}
@@ -1373,7 +1373,7 @@ status_t AudioTrack::restoreTrack_l(audio_track_cblk_t*& refCblk, bool fromStart
if (user > server) {
frames = ((user - server) > newCblk->frameCount) ?
newCblk->frameCount : (user - server);
- memset(newCblk->buffers, 0, frames * newCblk->frameSize);
+ memset(mBuffers, 0, frames * newCblk->frameSize);
}
// restart playback even if buffer is not completely filled.
android_atomic_or(CBLK_FORCEREADY, &newCblk->flags);
@@ -1486,7 +1486,7 @@ void AudioTrack::AudioTrackThread::resume()
audio_track_cblk_t::audio_track_cblk_t()
: lock(Mutex::SHARED), cv(Condition::SHARED), user(0), server(0),
- userBase(0), serverBase(0), buffers(NULL), frameCount(0),
+ userBase(0), serverBase(0), frameCount(0),
loopStart(UINT_MAX), loopEnd(UINT_MAX), loopCount(0), mVolumeLR(0x10001000),
mSendLevel(0), flags(0)
{
@@ -1588,7 +1588,7 @@ bool audio_track_cblk_t::stepServer(uint32_t frameCount, bool isOut)
return true;
}
-void* audio_track_cblk_t::buffer(uint32_t offset) const
+void* audio_track_cblk_t::buffer(void *buffers, uint32_t offset) const
{
return (int8_t *)buffers + (offset - userBase) * frameSize;
}