[FFmpeg-cvslog] avcodec/aac/aacdec: Avoid branch to set sample_fmt

Andreas Rheinhardt git at videolan.org
Tue May 7 01:08:19 EEST 2024


ffmpeg | branch: master | Andreas Rheinhardt <andreas.rheinhardt at outlook.com> | Mon May  6 11:49:05 2024 +0200| [41ea317ced70cc4da17ea814be124de650c3f0af] | committer: Andreas Rheinhardt

avcodec/aac/aacdec: Avoid branch to set sample_fmt

Reviewed-by: Lynne <dev at lynne.ee>
Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt at outlook.com>

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

 libavcodec/aac/aacdec.c | 11 ++++++-----
 1 file changed, 6 insertions(+), 5 deletions(-)

diff --git a/libavcodec/aac/aacdec.c b/libavcodec/aac/aacdec.c
index 0d4daeeebd..470e46b00f 100644
--- a/libavcodec/aac/aacdec.c
+++ b/libavcodec/aac/aacdec.c
@@ -1193,11 +1193,6 @@ static av_cold int aac_decode_init_internal(AVCodecContext *avctx)
     ac->avctx = avctx;
     ac->oc[1].m4ac.sample_rate = avctx->sample_rate;
 
-    if (ac->is_fixed)
-        avctx->sample_fmt = AV_SAMPLE_FMT_S32P;
-    else
-        avctx->sample_fmt = AV_SAMPLE_FMT_FLTP;
-
     if (avctx->extradata_size > 0) {
         if ((ret = decode_audio_specific_config(ac, ac->avctx, &ac->oc[1].m4ac,
                                                 avctx->extradata,
@@ -1247,14 +1242,20 @@ static av_cold int aac_decode_init_internal(AVCodecContext *avctx)
 static av_cold int aac_decode_init(AVCodecContext *avctx)
 {
     AACDecContext *ac = avctx->priv_data;
+
     ac->is_fixed = 0;
+    avctx->sample_fmt = AV_SAMPLE_FMT_FLTP;
+
     return aac_decode_init_internal(avctx);
 }
 
 static av_cold int aac_decode_init_fixed(AVCodecContext *avctx)
 {
     AACDecContext *ac = avctx->priv_data;
+
     ac->is_fixed = 1;
+    avctx->sample_fmt = AV_SAMPLE_FMT_S32P;
+
     return aac_decode_init_internal(avctx);
 }
 



More information about the ffmpeg-cvslog mailing list