[FFmpeg-devel] [PATCH] avcodec/dolby_e: set constant frame_size
Nicolas Gaullier
nicolas.gaullier at cji.paris
Tue Dec 15 19:13:24 EET 2020
Fixes pts generation.
Setting frame_size in dolby_e_init() or get_audio_frame_duration()
can result in a bad duration value for the first packet if dolby_e is
muxed in a container having a different sample_rate (ex:
container @48KHz, DolbyE @44.8KHz).
Maybe adding a parser to dolby_e would fix the issue and makes it
possible to set frame_size at decoder init which seems the best place.
---
libavcodec/dolby_e.c | 1 +
1 file changed, 1 insertion(+)
diff --git a/libavcodec/dolby_e.c b/libavcodec/dolby_e.c
index 429612ec08..b0e6d6aee3 100644
--- a/libavcodec/dolby_e.c
+++ b/libavcodec/dolby_e.c
@@ -577,6 +577,7 @@ static int filter_frame(DBEContext *s, AVFrame *frame)
reorder = ch_reorder_n;
frame->nb_samples = FRAME_SAMPLES;
+ s->avctx->frame_size = FRAME_SAMPLES;
if ((ret = ff_get_buffer(s->avctx, frame, 0)) < 0)
return ret;
--
2.27.0.windows.1
More information about the ffmpeg-devel
mailing list