[FFmpeg-cvslog] lavc/aacdec_template: Fix 7.1 decoding with default strictness.
KM
git at videolan.org
Wed Feb 17 00:37:46 EET 2021
ffmpeg | branch: master | KM <the.real.laplace at gmail.com> | Tue Feb 16 23:19:19 2021 +0100| [fbe9b0c8f3ee1ff1d36c6a6cd7fe6fc0c6a9e80d] | committer: Carl Eugen Hoyos
lavc/aacdec_template: Fix 7.1 decoding with default strictness.
Broken in 4d9b9c5e
Fixes ticket #9057.
> http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=fbe9b0c8f3ee1ff1d36c6a6cd7fe6fc0c6a9e80d
---
libavcodec/aacdec_template.c | 11 +++++++----
1 file changed, 7 insertions(+), 4 deletions(-)
diff --git a/libavcodec/aacdec_template.c b/libavcodec/aacdec_template.c
index e5d311141f..aa89f7cbb8 100644
--- a/libavcodec/aacdec_template.c
+++ b/libavcodec/aacdec_template.c
@@ -639,11 +639,14 @@ static int set_default_channel_config(AACContext *ac, AVCodecContext *avctx,
* As actual intended 7.1(wide) streams are very rare, default to assuming a
* 7.1 layout was intended.
*/
- if (channel_config == 7 && avctx->strict_std_compliance < FF_COMPLIANCE_STRICT && (!ac || !ac->warned_71_wide++)) {
- av_log(avctx, AV_LOG_INFO, "Assuming an incorrectly encoded 7.1 channel layout"
- " instead of a spec-compliant 7.1(wide) layout, use -strict %d to decode"
- " according to the specification instead.\n", FF_COMPLIANCE_STRICT);
+ if (channel_config == 7 && avctx->strict_std_compliance < FF_COMPLIANCE_STRICT) {
layout_map[2][2] = AAC_CHANNEL_SIDE;
+
+ if (!ac || !ac->warned_71_wide++) {
+ av_log(avctx, AV_LOG_INFO, "Assuming an incorrectly encoded 7.1 channel layout"
+ " instead of a spec-compliant 7.1(wide) layout, use -strict %d to decode"
+ " according to the specification instead.\n", FF_COMPLIANCE_STRICT);
+ }
}
return 0;
More information about the ffmpeg-cvslog
mailing list