[FFmpeg-cvslog] aacenc: mark SBR absent

Alex Converse git
Sun Jan 23 21:01:55 CET 2011


ffmpeg | branch: master | Alex Converse <alex.converse at gmail.com> | Sat Jan 22 05:23:43 2011 +0000| [d67a6aa59c1b94f01fceebc3dbd7624e78829031] | committer: Michael Niedermayer

aacenc: mark SBR absent

Use backwards compatible explicit signalling to denote the absence of
SBR.

Signed-off-by: Janne Grunau <janne-ffmpeg at jannau.net>
(cherry picked from commit 8ae0fa243e1f7a03cb5f23e2d9a32d3cc88b4def)

> http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=d67a6aa59c1b94f01fceebc3dbd7624e78829031
---

 libavcodec/aacenc.c |    9 +++++++--
 1 files changed, 7 insertions(+), 2 deletions(-)

diff --git a/libavcodec/aacenc.c b/libavcodec/aacenc.c
index c52ffa0..f8f0eb4 100644
--- a/libavcodec/aacenc.c
+++ b/libavcodec/aacenc.c
@@ -149,6 +149,11 @@ static void put_audio_specific_config(AVCodecContext *avctx)
     put_bits(&pb, 1, 0); //frame length - 1024 samples
     put_bits(&pb, 1, 0); //does not depend on core coder
     put_bits(&pb, 1, 0); //is not extension
+
+    //Explicitly Mark SBR absent
+    put_bits(&pb, 11, 0x27b); //sync extension
+    put_bits(&pb, 5,  AOT_SBR);
+    put_bits(&pb, 1,  0);
     flush_put_bits(&pb);
 }
 
@@ -193,8 +198,8 @@ static av_cold int aac_encode_init(AVCodecContext *avctx)
 
     s->samples            = av_malloc(2 * 1024 * avctx->channels * sizeof(s->samples[0]));
     s->cpe                = av_mallocz(sizeof(ChannelElement) * aac_chan_configs[avctx->channels-1][0]);
-    avctx->extradata      = av_mallocz(2 + FF_INPUT_BUFFER_PADDING_SIZE);
-    avctx->extradata_size = 2;
+    avctx->extradata      = av_mallocz(5 + FF_INPUT_BUFFER_PADDING_SIZE);
+    avctx->extradata_size = 5;
     put_audio_specific_config(avctx);
 
     sizes[0]   = swb_size_1024[i];




More information about the ffmpeg-cvslog mailing list