[FFmpeg-devel] Major bump
Andreas Rheinhardt
andreas.rheinhardt at outlook.com
Mon Apr 5 18:01:57 EEST 2021
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?).
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
More information about the ffmpeg-devel
mailing list