[FFmpeg-devel] [PATCH 4/4] avcodec/mpeg12enc: Deprecate using MPEG-2 intra VLC table for mpeg1video

Marton Balint cus at passwd.hu
Tue Nov 24 23:56:54 EET 2020



On Tue, 24 Nov 2020, James Almer wrote:

> On 11/24/2020 11:41 AM, Andreas Rheinhardt wrote:
>> This option just creates broken output because an MPEG-1 bitstream
>> can't signal whether MPEG-2 intra VLC tables have been used.

If the output was really broken with this option then IMHO the deprecation 
is not really necessary here, and you can simply remove the option.

Regards,
Marton

>> 
>> Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt at gmail.com>
>> ---
>> Missing version bump.
>>
>>   doc/APIchanges         | 3 +++
>>   libavcodec/mpeg12enc.c | 7 +++++--
>>   2 files changed, 8 insertions(+), 2 deletions(-)
>> 
>> diff --git a/doc/APIchanges b/doc/APIchanges
>> index b70c78a483..dea54c4415 100644
>> --- a/doc/APIchanges
>> +++ b/doc/APIchanges
>> @@ -15,6 +15,9 @@ libavutil:     2017-10-21
>>
>>   API changes, most recent first:
>> 
>> +2020-xx-xx - xxxxxxxxxx - lavc 58.xx.100 - avcodec.h
>> +  Deprecate the "intra_vlc" option for the mpeg1video encoder.
>
> Options usually don't get APIChanges entries, either when they are added 
> or removed.
>
>> +
>>   2020-xx-xx - xxxxxxxxxx - lavf 58.64.100 - avformat.h
>>     Add AVSTREAM_EVENT_FLAG_NEW_PACKETS.
>> 
>> diff --git a/libavcodec/mpeg12enc.c b/libavcodec/mpeg12enc.c
>> index 2466db8a91..0b5badde3c 100644
>> --- a/libavcodec/mpeg12enc.c
>> +++ b/libavcodec/mpeg12enc.c
>> @@ -1114,6 +1114,7 @@ av_cold void ff_mpeg1_encode_init(MpegEncContext *s)
>>       if (s->codec_id == AV_CODEC_ID_MPEG1VIDEO) {
>>           s->min_qcoeff = -255;
>>           s->max_qcoeff = 255;
>> +        s->intra_vlc_format = 0;
>>       } else {
>>           s->min_qcoeff = -2047;
>>           s->max_qcoeff = 2047;
>> @@ -1136,8 +1137,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.", \
>> @@ -1147,12 +1146,16 @@ av_cold void ff_mpeg1_encode_init(MpegEncContext 
> *s)
>>
>>   static const AVOption mpeg1_options[] = {
>>       COMMON_OPTS
>> +    { "intra_vlc",           "deprecated, does nothing",
>> +      OFFSET(intra_vlc_format),    AV_OPT_TYPE_BOOL, { .i64 = 0 }, 0, 1, 
> VE | AV_OPT_FLAG_DEPRECATED },
>>       FF_MPV_COMMON_OPTS
>>       { NULL },
>>   };
>>
>>   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" },
>> 
>
> _______________________________________________
> ffmpeg-devel mailing list
> ffmpeg-devel at ffmpeg.org
> https://ffmpeg.org/mailman/listinfo/ffmpeg-devel
>
> To unsubscribe, visit link above, or email
> ffmpeg-devel-request at ffmpeg.org with subject "unsubscribe".


More information about the ffmpeg-devel mailing list