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@ffmpeg.org
https://ffmpeg.org/mailman/listinfo/ffmpeg-devel

To unsubscribe, visit link above, or email
ffmpeg-devel-requ...@ffmpeg.org with subject "unsubscribe".


_______________________________________________
ffmpeg-devel mailing list
ffmpeg-devel@ffmpeg.org
https://ffmpeg.org/mailman/listinfo/ffmpeg-devel

To unsubscribe, visit link above, or email
ffmpeg-devel-requ...@ffmpeg.org with subject "unsubscribe".

Reply via email to