summaryrefslogtreecommitdiffstats
path: root/media
diff options
context:
space:
mode:
authorAndreas Huber <andih@google.com>2010-02-10 15:16:09 -0800
committerAndroid (Google) Code Review <android-gerrit@google.com>2010-02-10 15:16:09 -0800
commitaa82768b8c6b6e81bb048d2d72b6586eb66b5b5d (patch)
tree7ce92cf06d8de0bbf184370ebf21661250a4905d /media
parenta5cbed967d98926a89c8da6ea76635a9c597e579 (diff)
parent259b7c1c1bc40a4a47214944b8a0587c36e8c144 (diff)
downloadframeworks_base-aa82768b8c6b6e81bb048d2d72b6586eb66b5b5d.zip
frameworks_base-aa82768b8c6b6e81bb048d2d72b6586eb66b5b5d.tar.gz
frameworks_base-aa82768b8c6b6e81bb048d2d72b6586eb66b5b5d.tar.bz2
Merge "Fixing AMR recording code."
Diffstat (limited to 'media')
-rw-r--r--media/libmediaplayerservice/StagefrightRecorder.cpp5
-rw-r--r--media/libstagefright/AMRWriter.cpp9
2 files changed, 11 insertions, 3 deletions
diff --git a/media/libmediaplayerservice/StagefrightRecorder.cpp b/media/libmediaplayerservice/StagefrightRecorder.cpp
index 6383f0c..1a8109c 100644
--- a/media/libmediaplayerservice/StagefrightRecorder.cpp
+++ b/media/libmediaplayerservice/StagefrightRecorder.cpp
@@ -185,6 +185,11 @@ sp<MediaSource> StagefrightRecorder::createAMRAudioSource() {
mAudioEncoder == AUDIO_ENCODER_AMR_NB
? MEDIA_MIMETYPE_AUDIO_AMR_NB : MEDIA_MIMETYPE_AUDIO_AMR_WB);
+ int32_t maxInputSize;
+ CHECK(audioSource->getFormat()->findInt32(
+ kKeyMaxInputSize, &maxInputSize));
+
+ encMeta->setInt32(kKeyMaxInputSize, maxInputSize);
encMeta->setInt32(kKeyChannelCount, 1);
encMeta->setInt32(kKeySampleRate, sampleRate);
diff --git a/media/libstagefright/AMRWriter.cpp b/media/libstagefright/AMRWriter.cpp
index caff452..bf4424b 100644
--- a/media/libstagefright/AMRWriter.cpp
+++ b/media/libstagefright/AMRWriter.cpp
@@ -173,12 +173,15 @@ void AMRWriter::threadFunc() {
buffer->range_length(),
mFile);
- buffer->release();
- buffer = NULL;
-
if (n < (ssize_t)buffer->range_length()) {
+ buffer->release();
+ buffer = NULL;
+
break;
}
+
+ buffer->release();
+ buffer = NULL;
}
Mutex::Autolock autoLock(mLock);