summaryrefslogtreecommitdiffstats
path: root/media/libmediaplayerservice/StagefrightRecorder.cpp
diff options
context:
space:
mode:
authorMingming Yin <mingming@codeaurora.org>2015-08-14 10:43:05 -0700
committerSatish Kamuju <skamuj@codeaurora.org>2015-10-06 17:34:34 +0530
commit61f6cfa961d22a9a54d91366fefec135f091012d (patch)
tree221d2afd5dde2a52bfa984bf0961a95d254cfeb8 /media/libmediaplayerservice/StagefrightRecorder.cpp
parentae614d22fd87feb1857e8041978ab2c38cfaa16e (diff)
downloadframeworks_av-61f6cfa961d22a9a54d91366fefec135f091012d.zip
frameworks_av-61f6cfa961d22a9a54d91366fefec135f091012d.tar.gz
frameworks_av-61f6cfa961d22a9a54d91366fefec135f091012d.tar.bz2
audio: add support for extended audio encoding
- add support for EVRC, QCELP, and LPCM encoding. Change-Id: I2f93a88ed5c9bd502399ef145a5802d1a15fcc45
Diffstat (limited to 'media/libmediaplayerservice/StagefrightRecorder.cpp')
-rw-r--r--media/libmediaplayerservice/StagefrightRecorder.cpp24
1 files changed, 16 insertions, 8 deletions
diff --git a/media/libmediaplayerservice/StagefrightRecorder.cpp b/media/libmediaplayerservice/StagefrightRecorder.cpp
index 3b4d0eb..d64f814 100644
--- a/media/libmediaplayerservice/StagefrightRecorder.cpp
+++ b/media/libmediaplayerservice/StagefrightRecorder.cpp
@@ -821,8 +821,10 @@ status_t StagefrightRecorder::prepareInternal() {
break;
default:
- ALOGE("Unsupported output file format: %d", mOutputFormat);
- status = UNKNOWN_ERROR;
+ if (handleCustomRecording() != OK) {
+ ALOGE("Unsupported output file format: %d", mOutputFormat);
+ status = UNKNOWN_ERROR;
+ }
break;
}
@@ -886,8 +888,10 @@ status_t StagefrightRecorder::start() {
default:
{
- ALOGE("Unsupported output file format: %d", mOutputFormat);
- status = UNKNOWN_ERROR;
+ if (handleCustomOutputFormats() != OK) {
+ ALOGE("Unsupported output file format: %d", mOutputFormat);
+ status = UNKNOWN_ERROR;
+ }
break;
}
}
@@ -972,8 +976,10 @@ sp<MediaSource> StagefrightRecorder::createAudioSource() {
break;
default:
- ALOGE("Unknown audio encoder: %d", mAudioEncoder);
- return NULL;
+ if (handleCustomAudioSource(format) != OK) {
+ ALOGE("Unknown audio encoder: %d", mAudioEncoder);
+ return NULL;
+ }
}
int32_t maxInputSize;
@@ -1638,8 +1644,10 @@ status_t StagefrightRecorder::setupAudioEncoder(const sp<MediaWriter>& writer) {
break;
default:
- ALOGE("Unsupported audio encoder: %d", mAudioEncoder);
- return UNKNOWN_ERROR;
+ if (handleCustomAudioEncoder() != OK) {
+ ALOGE("Unsupported audio encoder: %d", mAudioEncoder);
+ return UNKNOWN_ERROR;
+ }
}
sp<MediaSource> audioEncoder = createAudioSource();