diff options
author | Dave Burke <daveburke@google.com> | 2012-04-19 00:14:27 -0700 |
---|---|---|
committer | Dave Burke <daveburke@google.com> | 2012-04-25 22:02:58 -0700 |
commit | aeb8fd460ed87d032b3fb8bb61e21eb542ce0f5b (patch) | |
tree | f8b459d895acef1717c96cb7133675dda3e458b7 /media/libmediaplayerservice/StagefrightRecorder.cpp | |
parent | e0fa467e1150c65a7b1b1ed904c579b40f97c9df (diff) | |
download | frameworks_av-aeb8fd460ed87d032b3fb8bb61e21eb542ce0f5b.zip frameworks_av-aeb8fd460ed87d032b3fb8bb61e21eb542ce0f5b.tar.gz frameworks_av-aeb8fd460ed87d032b3fb8bb61e21eb542ce0f5b.tar.bz2 |
Add Fraunhofer AAC encoder with AAC-ELD support.
Change-Id: I6cd499d257d72f50a5b508bed97796a591a51506
Diffstat (limited to 'media/libmediaplayerservice/StagefrightRecorder.cpp')
-rw-r--r-- | media/libmediaplayerservice/StagefrightRecorder.cpp | 10 |
1 files changed, 9 insertions, 1 deletions
diff --git a/media/libmediaplayerservice/StagefrightRecorder.cpp b/media/libmediaplayerservice/StagefrightRecorder.cpp index 2c5644f..b676cc7 100644 --- a/media/libmediaplayerservice/StagefrightRecorder.cpp +++ b/media/libmediaplayerservice/StagefrightRecorder.cpp @@ -24,6 +24,7 @@ #include <binder/IServiceManager.h> #include <media/IMediaPlayerService.h> +#include <media/openmax/OMX_Audio.h> #include <media/stagefright/foundation/ADebug.h> #include <media/stagefright/AudioSource.h> #include <media/stagefright/AMRWriter.h> @@ -817,6 +818,11 @@ sp<MediaSource> StagefrightRecorder::createAudioSource() { break; case AUDIO_ENCODER_AAC: mime = MEDIA_MIMETYPE_AUDIO_AAC; + encMeta->setInt32(kKeyAACProfile, OMX_AUDIO_AACObjectLC); + break; + case AUDIO_ENCODER_AAC_ELD: + mime = MEDIA_MIMETYPE_AUDIO_AAC; + encMeta->setInt32(kKeyAACProfile, OMX_AUDIO_AACObjectELD); break; default: ALOGE("Unknown audio encoder: %d", mAudioEncoder); @@ -852,7 +858,8 @@ status_t StagefrightRecorder::startAACRecording() { // Add support for OUTPUT_FORMAT_AAC_ADIF CHECK_EQ(mOutputFormat, OUTPUT_FORMAT_AAC_ADTS); - CHECK_EQ(mAudioEncoder, AUDIO_ENCODER_AAC); + CHECK(mAudioEncoder == AUDIO_ENCODER_AAC || + mAudioEncoder == AUDIO_ENCODER_AAC_ELD); CHECK(mAudioSource != AUDIO_SOURCE_CNT); mWriter = new AACWriter(mOutputFd); @@ -1435,6 +1442,7 @@ status_t StagefrightRecorder::setupAudioEncoder(const sp<MediaWriter>& writer) { case AUDIO_ENCODER_AMR_NB: case AUDIO_ENCODER_AMR_WB: case AUDIO_ENCODER_AAC: + case AUDIO_ENCODER_AAC_ELD: break; default: |