[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