FFmpeg 9.0

(github.com)

298 points | by gyan 4 hours ago ago

52 comments

  • gyan 4 hours ago

    Changelog:

    - Extend AMF Color Converter (vf_vpp_amf) HDR capabilities

    - LCEVC track muxing support in MP4 muxer

    - Playdate video encoder and muxer

    - Add v360_vulkan filter

    - HE-AAC 960 decoding (DAB+)

    - transpose_cuda filter

    - Add AMF Frame Rate Converter (vf_frc_amf) filter

    - SMPTE 2094-50 metadata support and passthrough

    - ProRes RAW VideoToolbox hwaccel

    - APV Vulkan hwaccel

    - Animated WebP decoder

    - Animated WebP demuxer

    - Remove CELT decoding support (doesn't affect Opus CELT)

    - Remove ogg/celt parsing

    - Bitstream filter to split Dolby Vision multi-layer HEVC

    - Add AMF hardware memory mapping support.

    - ONNX Runtime DNN backend with GPU execution provider support

    - Remove deprecated NVENC options and support for pre-11.1 SDK versions

    • harshreality 3 hours ago

      > - Animated WebP decoder

      Nice. browsers have supported this for a long time, and it was annoying ffmpeg did not, because that meant a lot of non-browser desktop apps couldn't view them either.

      • GlumWoodpecker 3 hours ago

        I've been waiting for this feature! Whenever I've encountered an animated WebP, I've had to drop it into ezgif.com to convert it to mp4, now I can just write a quick Bash function to transform it with ffmpeg.

    • embedding-shape 3 hours ago

      > - ONNX Runtime DNN backend with GPU execution provider support

      Oh, wonder what fancy new things this will enable. Any examples in the wild already perhaps?

      • alex7o an hour ago

        Some people might want to remove it, but onnx is one of the few ways you can run hw accelerated convolutions

      • sbinnee 2 hours ago

        I wonder if it’s going to be some custom encoder/decoder using DNN. I would also want to see some examples!

    • amelius 3 hours ago

      I'm curious if they used LLMs to do the tedious work of porting the (de/en)coders to different architectures, and how useful they are here.

      • rzerowan 3 hours ago

        Seems like Yes. https://nitter.net/FFmpeg/status/2084084810813743614 "Thank you @ClaudeDevs and @AnthropicAI for supporting FFmpeg through the Claude for Open Source program!

        So far, Claude has helped find missing backports for the upcoming 9.0 release."

        Although i was under the impression that they ususally preferred hand optimized assembly. Not sure what their LLM/AI contribution policy looks like compared to other fundamental OSS projects.

        • dspillett 2 hours ago

          > Although i was under the impression that they usually preferred hand optimized assembly.

          Using LLMs/agents to do gap analysis and fill boilerplate doesn't rule out also reviewing the output and hand-optimising. That is how the tools should be used (if you aren't being a luddite like me and not using them at all) rather than click-and-hope vibe-coding.

          • brookst 2 hours ago

            And as a ffmpeg user with some old/weird hardware, I would much prefer click-and-hope support to no support at all. Ideally they’d have the resources for a real live human to hand-code assembly for every codec for every platform, but that’s probably not realistic. I’ll take what I can get and dust off my assembly skills if a click-and-hope implementation is close but not quite enough.

            • shevy-java 2 hours ago

              Makes sense.

              The problem I see is that LLM use deters many potential contributors. I understand that in your use case this is not an issue since you prefer working code over theoretical contributors (as said makes a lot of sense), but I am noticing this in many projects that transitioned hard into an AI dependency. It puts a barrier to some people. If 99% of a project's contributions are via AI, is that project still alive?

              • cjmcqueen 2 hours ago

                Yes, contribution is what keeps a project alive. It's up to the people involved to maintain quality. That's management. Two different things, both important.

        • rawling 2 hours ago

          No domain knowledge at all here but "find missing backports" doesn't sound like writing/porting code.

      • world2vec 3 hours ago

        In FFmpeg's twitter page it says that several of their developers got six free months of Claude Max 20x plan through Anthropic's Claude for Open Source Program, and that it was used, so far, to help find missing backports for this 9.0 release.

        • shevy-java 2 hours ago

          Sounds like advertisement though.

          • cjmcqueen 2 hours ago

            That's how sponsorship works, it's an exchange of goods or funds for visibility of an audience. Nothing wrong with that

          • vachina 2 hours ago

            Sounds like getting them hooked on LLM so they come back for more.

            • selcuka an hour ago

              No wonder both drug dealers and software developers call their customers "users".

  • Lucasoato 3 hours ago

    I feel we’re blessed to have a project like FFmpeg. This open source tool is so important for everyone.

    • richardstahl 3 hours ago

      I recommend watching the Lex Fridman interview with Jean-Baptiste Kempf and Kieran Kunhya. Amazing work on and amazing project.

      • cm2187 an hour ago

        Though there is one part I didn’t understand in that interview. They were complaining of being overwhelmed by AI submitted bug reports (fair), including for obscure codecs that must have been used by a couple of users at most. And therefore implying that securing those codecs is low priority/important.

        I don’t understand that. To me the severity has nothing to do with how popular is a code path, but whether that code path is accessible to an attacker. If I upload a specially crafted .mkv with a little known codec on YouTube and they use ffmpeg to process it, and I compromise YouTube’s infrastructure that way, it’s a pretty big deal, no matter the popularity of that codec.

        • rbultje an hour ago

          That sounds nice in theory, but it seems obvious to me there is a major discrepancy between who is burdened with this responsibility, and who benefits from the result. Given many of these contributors are unpaid volunteers, maybe the infrastructure provider needs to secure FFmpeg in another way, for example by restricting codecs or by running it in a container?

          • kontain 34 minutes ago

            The creator of borg and k8s of course already run such tools for untrusted inputs in containers, but there is also an endless stream of container escapes.

      • meerita 3 hours ago

        It's a really good interview. I recommend it too.

      • hahn-kev 2 hours ago

        Link?

    • shoobiedoo 3 hours ago

      It's incredible how much it does, how quickly it does it, and how it just works every time. Whether I'm trying to deal with gigs of 4k video, embedding multiple subtitles into an mkv file, or just fiddling around with trimming a few seconds of audio off a wav, ffmpeg does it without skipping a beat.

    • shevy-java 2 hours ago

      I think most everyone agrees with that. FFmpeg is kind of a corner stone when it comes to multimedia.

  • jbk 13 minutes ago

    For those interested in the work being done, with a bit more details that just the Changelog, I wrote a longer blogpost about the work here: https://jbkempf.com/blog/2026/ffmpeg-9.0/

    More details about the ongoing work on Swscale rewrite, on the various Vulkan changes, the assembly detailed and a bit of statistics about this release.

  • xuhu 2 hours ago

    I still hope a future FFmpeg release will make Intel QSV encoding available on Windows laptops where the manufacturer disabled this capability from the ACPI tables. The only way to use it on these laptops is currently FFmpeg on Linux.

    • DiabloD3 2 hours ago

      They can't, unfortunately.

      Linux's drivers makes that happen, not ffmpeg; ffmpeg merely calls the API.

      Intel's own first party drivers simply follow the ACPI tables, Linux ignores them.

    • SG- 2 hours ago

      how common is this with laptop manufacturers, and why would they do this? what brands are doing this so I can know to avoid them in the future.

  • alfg 3 hours ago

    One of my favorite pieces of software. FFmpeg has done so much for my career. Happy to see it still going strong.

  • hparadiz 3 hours ago

    Watching ffmpeg go from a niche tool for web back ends to what it is now has been incredible.

    • gregoriol 3 hours ago

      It's still very niche though, I bet not a single youtuber or OF-girl known they use it

      • okdood64 4 minutes ago

        > I bet not a single youtuber

        I know this is hyperbole to make a point even this is ridiculous. A lot of YouTubers mess around with their audio/video files, and am sure they have heard of ffmpeg.

      • tclancy 2 hours ago

        OF guys though?

  • ape4 an hour ago

    Naive question... would it be possible to make a language that describes multimedia formats that could then be automatically converted into code.

    • hereonout2 an hour ago

      Should take a look at some of the ISO specs for various MPEG standards for example.

      The container formats are defined in a way that could potentially make this possible.

  • superkickstart 3 hours ago

    Sometimes the world carrying ancient god shift position in their on throne. These updates always feel like that.

  • alphabeta3r56 2 hours ago

    Ffmpeg has patented codes and is GPLv3, what gives?

    • LtdJorge 2 hours ago

      The patents for software don’t apply in their country

  • daun_gee 3 hours ago

    Finally, some real fucking technology.

  • timonoko 2 hours ago

    Only slightly broken already. Dont remember the details, but Gemini could not this to work just by reading the manual. https://github.com/timonoko/Skipperi

  • shevy-java 2 hours ago

    Seems Michael Niedermayer wrote that manually, without AI. Good for him. :P

    ffmpeg is great, I think nobody disputes this. I use it in two ways mostly:

    1) one, via mpv, and 2) two, as conversion tool primarily

    ffmpeg also has many really powerful filters, but these are very confusing to use IMO and not elegant at all. I'd wish we could use some kind of simple meta-language or so, in part similar to virtualdub/avisynth (not necessarily suggesting the same API or DSL here, but just the main idea to think of multimedia data as tangible to manipulation as if it were an object oriented system or datastream system; every time I have to use ffmpeg's filter system, I ask myself if nobody designs any of this ...).

  • sylware 2 hours ago

    twitch.tv has new HLS streamers which break ffmpeg HLS.

  • TZubiri 3 hours ago

    Do I understand right that the last version (v8) was released 8 years ago? So this breaks a long hiatus?

  • sparkling 3 hours ago

    Not a Lex Friedman fan, but I highly recommend the recent podcast he did with two leading engineers (and founder) from the ffmpeg project: https://www.youtube.com/watch?v=nepKKz-MzFM

    In a world full of endless AI slop, it is refreshing to see that there are still folks out there hand-rolling assembler code to squeeze out another 5% efficiency.

    • world2vec 3 hours ago

      They used Claude for this release, as stated yesterday in their twitter page.

      • AlecSchueler 3 hours ago

        Yes, to find missing backports. The hand rolled aspects are still there and haven't been replaced by slop.