{"id":51756,"date":"2026-08-04T15:47:25","date_gmt":"2026-08-04T15:47:25","guid":{"rendered":"https:\/\/ubuntuhandbook.org\/?p=51756"},"modified":"2026-08-04T15:47:25","modified_gmt":"2026-08-04T15:47:25","slug":"ffmpeg-9-0-new-decoders-ubuntu-ppa","status":"publish","type":"post","link":"https:\/\/ubuntuhandbook.org\/index.php\/2026\/08\/ffmpeg-9-0-new-decoders-ubuntu-ppa\/","title":{"rendered":"FFmpeg 9.0 Released with New GPU Accelerated Decoders [Ubuntu PPA]"},"content":{"rendered":"<p><img loading=\"lazy\" decoding=\"async\" class=\"alignleft size-thumbnail wp-image-37497\" src=\"https:\/\/ubuntuhandbook.org\/wp-content\/uploads\/2022\/02\/ffmpeg-logo-250x250.webp\" alt=\"\" width=\"250\" height=\"250\" srcset=\"https:\/\/ubuntuhandbook.org\/wp-content\/uploads\/2022\/02\/ffmpeg-logo-250x250.webp 250w, https:\/\/ubuntuhandbook.org\/wp-content\/uploads\/2022\/02\/ffmpeg-logo-300x300.webp 300w, https:\/\/ubuntuhandbook.org\/wp-content\/uploads\/2022\/02\/ffmpeg-logo-600x600.webp 600w, https:\/\/ubuntuhandbook.org\/wp-content\/uploads\/2022\/02\/ffmpeg-logo-768x768.webp 768w, https:\/\/ubuntuhandbook.org\/wp-content\/uploads\/2022\/02\/ffmpeg-logo.webp 1200w\" sizes=\"auto, (max-width: 250px) 100vw, 250px\" \/><\/p>\n<p>FFmpeg, the popular free open-source multimedia library, released new major 9.0 version today.<\/p>\n<p>The new version of this library introduced some new decoders and encoders, hardware accelerated encoders and filters for better performance, as well as many other new features.<\/p>\n<p><!--more--><\/p>\n<p>First, FFmpeg 9.0 introduced <b>decoding animated WebP<\/b> images support, as well as, extracting its individual image frames and timing information.<\/p>\n<p><a href=\"https:\/\/ubuntuhandbook.org\/wp-content\/uploads\/2026\/08\/ffmpeg9-animatedwebp.webp\"><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-large wp-image-51758\" src=\"https:\/\/ubuntuhandbook.org\/wp-content\/uploads\/2026\/08\/ffmpeg9-animatedwebp-700x490.webp\" alt=\"\" width=\"610\" height=\"427\" srcset=\"https:\/\/ubuntuhandbook.org\/wp-content\/uploads\/2026\/08\/ffmpeg9-animatedwebp-700x490.webp 700w, https:\/\/ubuntuhandbook.org\/wp-content\/uploads\/2026\/08\/ffmpeg9-animatedwebp-300x210.webp 300w, https:\/\/ubuntuhandbook.org\/wp-content\/uploads\/2026\/08\/ffmpeg9-animatedwebp-768x538.webp 768w, https:\/\/ubuntuhandbook.org\/wp-content\/uploads\/2026\/08\/ffmpeg9-animatedwebp.webp 924w\" sizes=\"auto, (max-width: 610px) 100vw, 610px\" \/><\/a><\/p>\n<p>It added decoding the HE-AAC audio format used by DAB+ digital radio, specifically the variant where each AAC frame contains <i>960 audio samples<\/i> instead of the more common 1024 samples.<\/p>\n<p>It as well added hardware-accelerated decoding support for Apple <b>ProRes RAW<\/b> videos using <b>Apple&#8217;s VideoToolbox<\/b> framework, resulting in faster and more efficient playback on supported Apple hardware.<\/p>\n<p>And, now it supports decoding <b>APV<\/b> video using GPU hardware through the <b>Vulkan Video API<\/b>, reducing CPU usage and potentially improving playback performance on supported hardware.<\/p>\n<p>This version also introduced <b>Playdate video encoder and muxer<\/b>, allowing to convert\/create Playdate video file format (PDV) for the small gaming device with a 1-bit black-and-white display (400\u00d7240 pixels).<\/p>\n<div id=\"attachment_51757\" style=\"width: 630px\" class=\"wp-caption aligncenter\"><img loading=\"lazy\" decoding=\"async\" aria-describedby=\"caption-attachment-51757\" class=\"size-full wp-image-51757\" src=\"https:\/\/ubuntuhandbook.org\/wp-content\/uploads\/2026\/08\/Playdate.webp\" alt=\"\" width=\"620\" height=\"342\" srcset=\"https:\/\/ubuntuhandbook.org\/wp-content\/uploads\/2026\/08\/Playdate.webp 620w, https:\/\/ubuntuhandbook.org\/wp-content\/uploads\/2026\/08\/Playdate-300x165.webp 300w\" sizes=\"auto, (max-width: 620px) 100vw, 620px\" \/><p id=\"caption-attachment-51757\" class=\"wp-caption-text\">playdate handheld, image from wikipedia.org<\/p><\/div>\n<p>The 9.0 release also added <b>v360_vulkan filter<\/b> to convert 360-degree video between different spherical projection formats with GPU acceleration, making processing faster than the CPU-only v360 filter.<\/p>\n<p>It added <b>transpose_cuda filter<\/b> to rotate or flip a video using an NVIDIA GPU (CUDA), and a <b>bitstream filter<\/b> that can separate a Dolby Vision HEVC video containing multiple layers into its individual layers, without re-encoding the video.<\/p>\n<p>For AMD GPU, FFmpeg 9.0 introduced <b>vf_frc_amf filter<\/b> uses AMD&#8217;s Advanced Media Framework to convert a video&#8217;s frame rate by generating intermediate frames on an AMD GPU, resulting in smoother motion with much lower CPU usage.<\/p>\n<p>It added <b>AMF hardware memory mapping<\/b> support, that can share video frames in AMD GPU memory directly with AMF components, avoiding unnecessary CPU\/GPU memory copies and improving the performance of hardware-accelerated video processing.<\/p>\n<p>And, it improved the AMD GPU-based color conversion (<code>vf_vpp_amf<\/code>) filter so it can better process HDR (High Dynamic Range) video.<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-full wp-image-2213\" src=\"https:\/\/ubuntuhandbook.org\/wp-content\/uploads\/2013\/11\/AMD__42553.jpg\" alt=\"Radeon Dynamic Power Management (DPM)\" width=\"150\" height=\"150\" \/><\/p>\n<p>The release as well added LCEVC track muxing support in MP4 muxer, meaning it can now create MP4 files that include an LCEVC enhancement track alongside the base video stream, allowing compatible players to reconstruct higher-quality video while remaining compatible with players that only understand the base video.<\/p>\n<p>For AI, it added support for using ONNX Runtime as a deep-learning backend for its DNN (Deep Neural Network) features, including running neural networks on GPUs instead of only the CPU.<\/p>\n<p>Other changes include:<\/p>\n<ul>\n<li>Support reading, preserving, and passing through SMPTE 2094-50 HDR metadata without changing it.<\/li>\n<li>Remove old NVIDIA NVENC options and old NVIDIA&#8217;s NVENC SDK (before version 11.1) support.<\/li>\n<li>Remove ability to parse standalone CELT audio streams stored inside Ogg containers.<\/li>\n<li>Remove decoding support for the obsolete standalone CELT audio format, while keeping the CELT support inside the Opus codec.<\/li>\n<\/ul>\n<h3>Get FFmpeg 9.0<\/h3>\n<p>The official release note (not ready at the moment) as well the source tarball are available in FFmpeg website via the link below:<\/p>\n<div class=\"wp-block-buttons aligncenter\">\n<div class=\"wp-block-button is-style-fill\"><a class=\"wp-block-button__link has-vivid-cyan-blue-to-vivid-purple-gradient-background has-text-color has-background\" href=\"https:\/\/ffmpeg.org\/download.html\" target=\"_blank\" rel=\"noreferrer noopener\">Download FFmpeg 9.0<\/a><\/div>\n<\/div>\n<p>Besides building it from the source, the <a href=\"https:\/\/deb-multimedia.org\/\" target=\"_blank\" rel=\"noopener\">Deb Multimedia repository<\/a> has built the new version for Debian Unstable, and, I&#8217;ve backported it into this <a href=\"https:\/\/launchpad.net\/~ubuntuhandbook1\/+archive\/ubuntu\/ffmpeg9\" target=\"_blank\" rel=\"noopener\">unofficial PPA<\/a> for Ubuntu 26.04, Ubuntu 24.04 and Ubuntu 22.04.<\/p>\n<p><b>NOTE: The PPA package does install in my case but without well testing. Don&#8217;t install it in production machine, and use it at your risk!<\/b><\/p>\n<p><b>And, <code>amd64v3<\/code> build failed, due to missing <code>libvmaf<\/code> (optional but already enabled in <code>amd64<\/code> build). Please let me know if some of you need the <code>amd64v3<\/code> support.<\/b><\/p>\n<p>To add the PPA and install FFmpeg 9.0, open terminal and run commands below one by one:<\/p>\n<pre>sudo add-apt-repository ppa:ubuntuhandbook1\/ffmpeg9<\/pre>\n<pre>sudo apt update<\/pre>\n<pre>sudo apt install -t \"o=LP-PPA-ubuntuhandbook1-ffmpeg9\" ffmpeg<\/pre>\n<p>To uninstall, just install ppa-purge tool, then use it to purge the PPA, which will downgrade all the packages installed from that repository:<\/p>\n<pre>sudo apt install ppa-purge<\/pre>\n<pre>sudo ppa-purge ppa:ubuntuhandbook1\/ffmpeg9<\/pre>","protected":false},"excerpt":{"rendered":"<p>FFmpeg, the popular free open-source multimedia library, released new major 9.0 version today. The new version of this library introduced some new decoders and encoders, hardware accelerated encoders and filters for better performance, as well as many other new features.<\/p>\n","protected":false},"author":1,"featured_media":37497,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[9,6],"tags":[594],"class_list":["post-51756","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-howtos","category-news","tag-ffmpeg"],"_links":{"self":[{"href":"https:\/\/ubuntuhandbook.org\/index.php\/wp-json\/wp\/v2\/posts\/51756","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/ubuntuhandbook.org\/index.php\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/ubuntuhandbook.org\/index.php\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/ubuntuhandbook.org\/index.php\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/ubuntuhandbook.org\/index.php\/wp-json\/wp\/v2\/comments?post=51756"}],"version-history":[{"count":0,"href":"https:\/\/ubuntuhandbook.org\/index.php\/wp-json\/wp\/v2\/posts\/51756\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/ubuntuhandbook.org\/index.php\/wp-json\/wp\/v2\/media\/37497"}],"wp:attachment":[{"href":"https:\/\/ubuntuhandbook.org\/index.php\/wp-json\/wp\/v2\/media?parent=51756"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/ubuntuhandbook.org\/index.php\/wp-json\/wp\/v2\/categories?post=51756"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/ubuntuhandbook.org\/index.php\/wp-json\/wp\/v2\/tags?post=51756"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}