summaryrefslogtreecommitdiffstats
path: root/media/libmedia/AudioRecord.cpp
diff options
context:
space:
mode:
authorGlenn Kasten <gkasten@google.com>2014-02-24 15:13:40 -0800
committerGlenn Kasten <gkasten@google.com>2014-02-24 17:21:32 -0800
commitc85df82b1e8b05714268926a8bb3deb9c65f9a22 (patch)
tree877f382a6a014e10634fc6dd40661eabd84eb467 /media/libmedia/AudioRecord.cpp
parent86f04663032ddaa25110149d709bbf896ad83b02 (diff)
downloadframeworks_av-c85df82b1e8b05714268926a8bb3deb9c65f9a22.zip
frameworks_av-c85df82b1e8b05714268926a8bb3deb9c65f9a22.tar.gz
frameworks_av-c85df82b1e8b05714268926a8bb3deb9c65f9a22.tar.bz2
Permit AudioRecord to support non-linear formats in future
But still restricted to 16-bit PCM currently Change-Id: I5df0e5033da9144ca73e44addf14a63d31406034
Diffstat (limited to 'media/libmedia/AudioRecord.cpp')
-rw-r--r--media/libmedia/AudioRecord.cpp7
1 files changed, 5 insertions, 2 deletions
diff --git a/media/libmedia/AudioRecord.cpp b/media/libmedia/AudioRecord.cpp
index b6b6d14..e18819c 100644
--- a/media/libmedia/AudioRecord.cpp
+++ b/media/libmedia/AudioRecord.cpp
@@ -211,8 +211,11 @@ status_t AudioRecord::set(
uint32_t channelCount = popcount(channelMask);
mChannelCount = channelCount;
- // Assumes audio_is_linear_pcm(format), else sizeof(uint8_t)
- mFrameSize = channelCount * audio_bytes_per_sample(format);
+ if (audio_is_linear_pcm(format)) {
+ mFrameSize = channelCount * audio_bytes_per_sample(format);
+ } else {
+ mFrameSize = sizeof(uint8_t);
+ }
// validate framecount
size_t minFrameCount = 0;