diff options
author | Mingming Yin <mingming@codeaurora.org> | 2015-08-14 10:43:05 -0700 |
---|---|---|
committer | Satish Kamuju <skamuj@codeaurora.org> | 2015-10-06 17:34:34 +0530 |
commit | 61f6cfa961d22a9a54d91366fefec135f091012d (patch) | |
tree | 221d2afd5dde2a52bfa984bf0961a95d254cfeb8 /media/libmediaplayerservice/StagefrightRecorder.cpp | |
parent | ae614d22fd87feb1857e8041978ab2c38cfaa16e (diff) | |
download | frameworks_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.cpp | 24 |
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(); |