From 4e26520039ad7b45fc8d46fa7274e96cc0bdf8f9 Mon Sep 17 00:00:00 2001 From: Andreas Rheinhardt Date: Tue, 24 Nov 2020 15:32:04 +0100 Subject: [PATCH] avcodec/mpeg12enc: Disallow using MPEG-2 intra VLC table for mpeg1video Using MPEG-2 intra VLC tables is spec-incompliant for MPEG-1 and given that an MPEG-1 bitstream can't signal whether MPEG-2 intra VLC tables have been used the output is broken. Therefore this option is removed immediately without any deprecation period. Reviewed-by: James Almer Reviewed-by: Marton Balint Reviewed-by: Anton Khirnov Signed-off-by: Andreas Rheinhardt --- libavcodec/mpeg12enc.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/libavcodec/mpeg12enc.c b/libavcodec/mpeg12enc.c index 2466db8a91..ac4af19ae7 100644 --- a/libavcodec/mpeg12enc.c +++ b/libavcodec/mpeg12enc.c @@ -1136,8 +1136,6 @@ av_cold void ff_mpeg1_encode_init(MpegEncContext *s) #define COMMON_OPTS \ { "gop_timecode", "MPEG GOP Timecode in hh:mm:ss[:;.]ff format. Overrides timecode_frame_start.", \ OFFSET(tc_opt_str), AV_OPT_TYPE_STRING, {.str=NULL}, 0, 0, VE },\ - { "intra_vlc", "Use MPEG-2 intra VLC table.", \ - OFFSET(intra_vlc_format), AV_OPT_TYPE_BOOL, { .i64 = 0 }, 0, 1, VE }, \ { "drop_frame_timecode", "Timecode is in drop frame format.", \ OFFSET(drop_frame_timecode), AV_OPT_TYPE_BOOL, { .i64 = 0 }, 0, 1, VE }, \ { "scan_offset", "Reserve space for SVCD scan offset user data.", \ @@ -1153,6 +1151,8 @@ static const AVOption mpeg1_options[] = { static const AVOption mpeg2_options[] = { COMMON_OPTS + { "intra_vlc", "Use MPEG-2 intra VLC table.", + OFFSET(intra_vlc_format), AV_OPT_TYPE_BOOL, { .i64 = 0 }, 0, 1, VE }, { "non_linear_quant", "Use nonlinear quantizer.", OFFSET(q_scale_type), AV_OPT_TYPE_BOOL, { .i64 = 0 }, 0, 1, VE }, { "alternate_scan", "Enable alternate scantable.", OFFSET(alternate_scan), AV_OPT_TYPE_BOOL, { .i64 = 0 }, 0, 1, VE }, { "seq_disp_ext", "Write sequence_display_extension blocks.", OFFSET(seq_disp_ext), AV_OPT_TYPE_INT, { .i64 = -1 }, -1, 1, VE, "seq_disp_ext" },