summaryrefslogtreecommitdiffstats
path: root/media/libmedia/AudioRecord.cpp
diff options
context:
space:
mode:
authorGlenn Kasten <gkasten@google.com>2012-11-12 07:58:20 -0800
committerGlenn Kasten <gkasten@google.com>2012-11-12 15:13:34 -0800
commit83a0382dc17364567667a4e6135db43f5bd92efc (patch)
treec3738c183fa49d9ccd023e27b37024860ccfff22 /media/libmedia/AudioRecord.cpp
parentbc0f6b92bba33ca9c2e76f2a520d290f055da6b2 (diff)
downloadframeworks_av-83a0382dc17364567667a4e6135db43f5bd92efc.zip
frameworks_av-83a0382dc17364567667a4e6135db43f5bd92efc.tar.gz
frameworks_av-83a0382dc17364567667a4e6135db43f5bd92efc.tar.bz2
Move frame size out of the control block
This is part of a series to clean up the control block. Change-Id: Ifab1c42ac0f8be704e571b292713cd2250d12a3f
Diffstat (limited to 'media/libmedia/AudioRecord.cpp')
-rw-r--r--media/libmedia/AudioRecord.cpp20
1 files changed, 9 insertions, 11 deletions
diff --git a/media/libmedia/AudioRecord.cpp b/media/libmedia/AudioRecord.cpp
index 263a7c7..b40aaf5 100644
--- a/media/libmedia/AudioRecord.cpp
+++ b/media/libmedia/AudioRecord.cpp
@@ -213,6 +213,13 @@ status_t AudioRecord::set(
mFrameCount = mCblk->frameCount;
mChannelCount = (uint8_t)channelCount;
mChannelMask = channelMask;
+
+ if (audio_is_linear_pcm(mFormat)) {
+ mFrameSize = channelCount * audio_bytes_per_sample(format);
+ } else {
+ mFrameSize = sizeof(uint8_t);
+ }
+
mActive = false;
mCbf = cbf;
mNotificationFrames = notificationFrames;
@@ -258,15 +265,6 @@ uint32_t AudioRecord::frameCount() const
return mFrameCount;
}
-size_t AudioRecord::frameSize() const
-{
- if (audio_is_linear_pcm(mFormat)) {
- return channelCount()*audio_bytes_per_sample(mFormat);
- } else {
- return sizeof(uint8_t);
- }
-}
-
audio_source_t AudioRecord::inputSource() const
{
return mInputSource;
@@ -560,8 +558,8 @@ create_new_record:
}
audioBuffer->frameCount = framesReq;
- audioBuffer->size = framesReq*cblk->frameSize;
- audioBuffer->raw = cblk->buffer(mBuffers, u);
+ audioBuffer->size = framesReq * mFrameSize;
+ audioBuffer->raw = cblk->buffer(mBuffers, mFrameSize, u);
active = mActive;
return active ? status_t(NO_ERROR) : status_t(STOPPED);
}