[FFmpeg-devel] Major bump

James Almer jamrial at gmail.com
Mon Apr 5 18:38:05 EEST 2021


On 4/5/2021 12:01 PM, Andreas Rheinhardt wrote:
> Anton Khirnov:
>> Hi,
>> this patchset bumps major version of all the libraries and removes many
>> deprecated APIs, as discussed at length during past months. Patches
>> 11-16 will be squashed together on push, but are sent separately for
>> ease of review. FATE passes (here at least).
>>
>> As agreed during the last developer call, I am disabling the
>> uspp/mcdeint filters that depend on removed libavcodec APIs. They should
>> be easy to re-enable if anyone finds the motivation to update them.
>>
>> I am postponing the removal of compute_muxer_pkt_fields() in lavf, along
>> with usage of AVCodecContext.time_base for decoding, since removing them
>> without breakage requires a fair bit of additional infrastructure that
>> is not yet there. I have plans for all these and hopefully I'll get to
>> it before the next bump.
>>
>> Carl asked during the last meeting for some reasoning for the bump. The
>> general reasons are that
>> - old APIs are unable to provide all the features of the new ones
>>    (that's usually why new APIs are added)
>> - old APIs tend to be harder to use correctly, they often have obscure
>>    quirks or corner cases
>> - maintaining compatibility wrappers for them is a major obstacle to
>>    further development
>> I'm appending some notes for the specific changes further down, they
>> could be added to the wiki or the website news entry.
>>
>> Please comment,
>>
> Seems like we have duplicated work here; my branch for major bump
> preparations is here: https://github.com/mkver/FFmpeg/commits/bump (it
> is not based upon current master, but a month or so old). It contains
> quite a lot of things that are missing here, like lots of
> constifications (i.e. AVFormatContext.(audio|video|subtitle)_codec;
> avcodec_find_(de|en)coder and the corresponding *_by_name functions
> return const AVCodec*; av_find_best_stream() has been made
> const-correct; avdevice_list_(input_sources|output_sinks); the
> avdevice_next API (the last next API in existence -- does someone know
> why?).

I sent a patch adding an iterate API and it was suggested it should not 
be not applied. Lavd is supposed to be either merged into lavf, or 
rewritten to stop depending on lavf, so better not add API that would 
ultimately be deprecated and removed.

> 
> Your list contains errors, besides the first entry being duplicated:
> 
>> * AV_CODEC_CAP_INTRA_ONLY and AV_CODEC_CAP_INTRA_ONLY removed, use corresponding
>>    AVCodecDescriptor.props values instead
> ...
>> * avcodec_find_best_pix_fmt_of_2 replaced by avcodec_find_best_pix_fmt_of_2
> 
> - Andreas
> _______________________________________________
> 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