[FFmpeg-devel] [PATCH 1/2] avcodec/ac3dec: don't override existing downmix coefficient with default ones
James Almer
jamrial at gmail.com
Thu Jan 16 03:20:11 EET 2025
With this, if the eac3 dependent frame doesn't have coded downmix values when
parsed by ff_eac3_parse_header(), it inherit the coded ones from the core ac3
frame instead of ignoring them.
Signed-off-by: James Almer <jamrial at gmail.com>
---
libavcodec/ac3dec.c | 6 ++++--
1 file changed, 4 insertions(+), 2 deletions(-)
diff --git a/libavcodec/ac3dec.c b/libavcodec/ac3dec.c
index a796ddf44e..eb5cfd9818 100644
--- a/libavcodec/ac3dec.c
+++ b/libavcodec/ac3dec.c
@@ -345,9 +345,11 @@ static int parse_frame_header(AC3DecodeContext *s)
s->frame_size = hdr.frame_size;
s->superframe_size += hdr.frame_size;
s->preferred_downmix = AC3_DMIXMOD_NOTINDICATED;
- s->center_mix_level = hdr.center_mix_level;
+ if (hdr.bitstream_id <= 10) {
+ s->center_mix_level = hdr.center_mix_level;
+ s->surround_mix_level = hdr.surround_mix_level;
+ }
s->center_mix_level_ltrt = 4; // -3.0dB
- s->surround_mix_level = hdr.surround_mix_level;
s->surround_mix_level_ltrt = 4; // -3.0dB
s->lfe_mix_level_exists = 0;
s->num_blocks = hdr.num_blocks;
--
2.48.1
More information about the ffmpeg-devel
mailing list