[FFmpeg-cvslog] sbcdec: do not unnecessarily set frame properties

Anton Khirnov git at videolan.org
Fri Mar 20 11:42:00 EET 2020


ffmpeg | branch: master | Anton Khirnov <anton at khirnov.net> | Wed Jan 29 17:52:21 2020 +0100| [bdd31feec934bad07f5035250f9cb1ec5b571062] | committer: Anton Khirnov

sbcdec: do not unnecessarily set frame properties

Decoders are supposed to export stream properties in AVCodecContext, the
AVFrame properties are set from those in ff_get_buffer().

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

 libavcodec/sbcdec.c | 7 ++++---
 1 file changed, 4 insertions(+), 3 deletions(-)

diff --git a/libavcodec/sbcdec.c b/libavcodec/sbcdec.c
index d8ea6855fe..2ebde46627 100644
--- a/libavcodec/sbcdec.c
+++ b/libavcodec/sbcdec.c
@@ -324,6 +324,8 @@ static int sbc_decode_init(AVCodecContext *avctx)
     SBCDecContext *sbc = avctx->priv_data;
     int i, ch;
 
+    avctx->sample_fmt = AV_SAMPLE_FMT_S16P;
+
     sbc->frame.crc_ctx = av_crc_get_table(AV_CRC_8_EBU);
 
     memset(sbc->dsp.V, 0, sizeof(sbc->dsp.V));
@@ -348,9 +350,8 @@ static int sbc_decode_frame(AVCodecContext *avctx,
     if (frame_length <= 0)
         return frame_length;
 
-    avctx->channels =
-    frame->channels = sbc->frame.channels;
-    frame->format = AV_SAMPLE_FMT_S16P;
+    avctx->channels = sbc->frame.channels;
+
     frame->nb_samples = sbc->frame.blocks * sbc->frame.subbands;
     if ((ret = ff_get_buffer(avctx, frame, 0)) < 0)
         return ret;



More information about the ffmpeg-cvslog mailing list