On Sun, Feb 27, 2022 at 9:46 PM Ian McInerney via devel <devel@xxxxxxxxxxxxxxxxxxxxxxx> wrote: > > I noticed in the electron thread that we now have FFMPEG 5.0 in the official Fedora repos, but this will of course mean that certain codecs are removed due to legal concerns. This prompts a few questions though: > > 1) How are these removed codecs handled in the library? Can we link an upstream application against FFMPEG in Fedora now and have it gracefully fail when it tries to access a non-free codec that was removed, or does the removal of these codecs create a different API that upstream applications would have to code around? e.g. does it mean they have to add conditional compilation for the specific codecs they need to use from FFMPEG instead of just around FFMPEG itself? > The libavcodec library will tell the application requesting a codec if it's available. If it's not available, it'll return an error and the application should handle the returned error. > 2) Is there an easily accessible list of the enabled codecs we can point upstreams to when talking about this? > Yes, there's a list in the packaging itself. Decoders: https://src.fedoraproject.org/rpms/ffmpeg/blob/rawhide/f/enable_decoders Encoders: https://src.fedoraproject.org/rpms/ffmpeg/blob/rawhide/f/enable_encoders Note that hardware codecs for some codecs do not work unless the required hardware enablement driver software is present in Fedora, which will not be available in base Fedora for obvious reasons for some codecs. The libavcodec library will return an error correctly in those circumstances as well. We do also have OpenH264 support enabled via dlopening the library, so if the openh264 package is present on the system, it'll "just work" and provide H.264 support. If it is not installed, it'll return the correct error for applications to handle. -- 真実はいつも一つ!/ Always, there's only one truth! _______________________________________________ devel mailing list -- devel@xxxxxxxxxxxxxxxxxxxxxxx To unsubscribe send an email to devel-leave@xxxxxxxxxxxxxxxxxxxxxxx Fedora Code of Conduct: https://docs.fedoraproject.org/en-US/project/code-of-conduct/ List Guidelines: https://fedoraproject.org/wiki/Mailing_list_guidelines List Archives: https://lists.fedoraproject.org/archives/list/devel@xxxxxxxxxxxxxxxxxxxxxxx Do not reply to spam on the list, report it: https://pagure.io/fedora-infrastructure