The avcodec_close function was deprecated and removed in FFmpeg 7.
Replace it with avcodec_free_context, following the same pattern used
in other nixpkgs packages (loudgain, musly, oven-media-engine).
Cargo 1.84.0 seems to have changed the output format of cargo vendor
again, once again invalidating fetchCargoTarball FOD hashes. It's
time to fix this once and for all, switching across the board to
fetchCargoVendor, which is not dependent on cargo vendor's output
format.
It should be possible to reproduce this diff. To do so, get the list
of files changed by this commit, e.g. with git diff --name-only, then
run the following two commands, each with that list of files as their
standard input:
xargs sed -i 's/fetchCargoTarball/fetchCargoVendor/'
cut -d / -f 4 | xargs -n 1 nix-update --version=skip
This will take a long time. It might be possible to parallelize it
using xargs' -P option. I haven't tested it.
Per the adjusted FFmpeg pinning advice, packages that work on the
default version should use the unversioned variants to ease the
migration to future versions and reduce the number of packages that
end up referencing old versions.
I have left HandBrake pinned as it builds a custom patched FFmpeg.
I did once try to use this program (although it didn’t work, if I
recall correctly), so I guess I have no excuse not to…
If someone else stepped up to maintain this that would be better,
though.