2 puan yazan GN⁺ 2025-08-23 | 1 yorum | WhatsApp'ta paylaş
  • FFmpeg 8.0 "Huffman", Vulkan compute tabanlı codec'ler, donanım hızlandırmalı çözme ve kodlama ile çeşitli yeni dosya formatları ve filtreler ekliyor
  • Altyapı baştan sona modernize edildi ve katkı süreci ile kod kalitesi de güçlendirildi
  • VVC çözücüsünün kararlılığı artırıldı, xHE-AAC çözücüsü ile MV-HEVC ve LC-EVC desteği gibi başlıca ses ve video codec alanlarında da ilerleme sağlandı
  • Açık kaynak multimedya teknolojisinin gelişiminde merkezi bir rol oynamaya devam ederken, sürekli özellik iyileştirmeleri ve güvenlik geliştirmelerini sürdürüyor

FFmpeg'e giriş

  • FFmpeg, ses ve videoyu kaydetmek, dönüştürmek ve stream etmek için esnek ve güçlü bir çözüm sunan tam teşekküllü genel amaçlı bir multimedya işleme araç takımıdır
  • ffmpeg -i input.mp4 output.avi gibi basit bir komutla video ve ses işleme yapılabilir

23 Ağustos 2025'te FFmpeg 8.0 "Huffman" yayınlandı

  • FFmpeg 8.0 "Huffman" duyuruldu. Birkaç gecikme ve altyapı yenileme sürecinin ardından, şimdiye kadarki en kapsamlı sürümlerden biri ortaya çıktı
  • Yeni özellikler arasında APV, ProRes RAW, RealVideo 6.0, Sanyo LD-ADPCM, G.728 gibi yerel çözücülerin eklenmesi, VVC çözücüsünde IBC, ACT, Palette Mode desteğinin güçlendirilmesi ve Vulkan compute tabanlı FFv1 (kodlama ve çözme), ProRes RAW (yalnızca çözme) gibi codec'ler yer alıyor
  • Vulkan tabanlı donanım hızlandırmalı çözme (ör. VP9, VVC, H264/5) ve kodlama (AV1, H264/5) ile çeşitli yeni formatlar (MCC, G.728, Whip, APV) ve filtreler (colordetect, pad_cuda, scale_d3d11, Whisper vb.) sunuluyor
  • Vulkan 1.3 üzerinde çalışan compute shader tabanlı yeni bir çözücü ve kodlayıcı ailesi eklendi. Bu yapı özel bir donanım hızlandırıcısı gerektirmiyor ve hwaccel API ile aynı şekilde çalışıyor. Kodlayıcıyı kullanmak için yeni kodlayıcının ayrıca belirtilmesi gerekiyor; şu anda yalnızca FFv1 (kodlama/çözme) ve ProRes RAW (çözme) destekleniyor. ProRes (iki yönlü) ve VC-2 (iki yönlü) ise hazırlık aşamasında
  • Bu yapı yalnızca paralel çözme için optimize edilmiş codec'lere uygulanabiliyor ve gelecekte daha çeşitli alanlarda yüksek performans artışı ile doğrusal olmayan video düzenleme ve kayıpsız kayıt gibi yeni kullanım senaryoları bekleniyor
  • Proje altyapısı da büyük ölçüde güncellendi. Mail listesi sunucusu tamamen değiştirildi ve artık code.ffmpeg.org üzerinden Forgejo tabanlı kod iş birliği destekleniyor
  • Kullanıcıların en yeni sürüme yükseltmesi öneriliyor

1 yorum

 
GN⁺ 2025-08-23
Hacker News yorumları
  • FFmpeg geliştiricilerine ve katkıda bulunanlara teşekkür ediyor

    • Ses/video otomasyonu gerektiğinde her zaman FFmpeg kullandığını, çevrimiçi video araçlarının da çoğunlukla bu aracı çekirdek motor olarak ya da bir UI sarmalayıcısı olarak kullandığını söylüyor
    • Bugün FFmpeg.Wasm projesi olduğunu da öğrenmiş (https://github.com/ffmpegwasm/ffmpeg.wasm)
    • 2024 Ocak ayında 1993 yapımı bir animasyon filmin karelerini 15 dakikalık parçalar halinde çıkarıp, Real-ESRGAN-ncnn-vulkan(https://github.com/xinntao/Real-ESRGAN-ncnn-vulkan) ile upscale ettikten sonra sonuç karelerini tekrar 4K olarak birleştirdiği deneyimini paylaşıyor
    • Bu iş akışına bir UI eklenmiş olsaydı, bugün popüler olan Topaz AI gibi bir araç olabileceğini düşündüğünü söylüyor
    • Upscale edilmiş örnek görseller de paylaşıyor (örnek görsel)
    • Doğrudan ffmpeg kullanmadığında bile, onu gömülü olarak barındıran araçları sık kullandığını söylüyor
      • Yakın zamanda eski bir DVD’den çıkardığı düşük kaliteli animeleri k4yt3x/video2x ile upscale etmiş, kurulumu kolaymış ve libffmpeg gömülü geliyormuş
      • Kodlama sırasında FFmpeg ile aynı argümanları kullanabilmiş
      • En iyi argümanları seçmek için kısa bir sahneyi ffmpeg ile çeşitli parametre setleriyle encode etmiş, sonra yine ffmpeg ile sabit kareler çıkarıp karşılaştırmış
  • FFmpeg’in compute shader tabanlı video encoder ve decoder’lar sunmaya başlamasından memnun olduğunu söylüyor

    • Donanımda yaygın biçimde desteklenen codec’lerin H.264, H.265 ve AV1 civarında kaldığını, bu yüzden diğer codec’lerin de platform hızlandırması alabilmesinin iyi olacağını düşünüyor (verim biraz düşük olsa bile anlamlı olurdu)
    • Yeni ProRes encoder’ın şu anda yürüttüğü bir proje için faydalı göründüğünü belirtiyor
    • Yaygın ve genel amaçlı codec’lerin paralel decode için pek uygun olmaması nedeniyle desteğin zor olduğuna dair açıklamayı anlaşılır buluyor
    • On binlerce thread kullanmak gerektiğini, ama kareler ve tile’lar arasındaki veri bağımlılıkları yüzünden paralelleştirmenin kolay olmadığını söylüyor
    • Encoder tarafının decoder’a göre biraz daha esnek olabileceğini, ama VP9(https://blogs.gnome.org/rbultje/2016/12/13/overview-of-the-vp9-video-codec/) gibi bir şeyi compute shader ile encode etmenin zorlu bir iş olacağını düşünüyor
    • Video encoder/decoder’ların compute shader ile uygulanmasına dair sevincini bir kez daha paylaşıyor

      • Geçmişte yalnızca standartlaştırılmış in-silicon donanım arayüzleri olduğu için Vulkan tabanlı encoder/decoder’ların genel amaçlı olup olmadığını sorduğunda alay konusu olduğunu anlatıyor
      • Bu iyileştirmelerin eski donanımlarda da sunulmasının gerçekten harika olduğunu, bu sayede yeni codec’ler ve genel kalite artışı için yeni yollar açılmasını umduğunu söylüyor
    • Decoder tarafındaki son gelişmeleri 10 yılı aşkın süredir takip etmediğini, ama sezgisel olarak GPU hızlandırmasının piksel verisine dönüşen son işleme aşamasında çok faydalı olacağını düşündüğünü söylüyor

      • İlk decompression’ın CPU’da yapılıp, sonra açılmış verinin GPU’ya aktarılıp son dönüşümlerin (motion vector uygulama, iDCT vb.) orada yapılmasının mantıklı göründüğünü belirtiyor
      • Tamamlanmış kare zaten GPU texture’ı olarak mevcutsa görüntüleme ek yükünün de düşük olacağını ekliyor
      • Sezgisinin ne kadar doğru olduğunu merak ediyor
    • FFmpeg maintainer’larının yeteneğine her seferinde şaşırdığını, bu kadar zor işleri ücretsiz yapmalarının etkileyici olduğunu söylüyor

    • Bu sürüm notlarını çok ilginç buluyor

      • Son birkaç haftadır WebGPU compute shader ile bir ProRes decoder yaptığını ve yeterince hızlı çalıştığını söylüyor (Apple’ın muhtemelen kendi donanım hızlandırmasını kullandığını düşünüyor)
      • Bu yaklaşımın Android’in yeni APV codec’i için de iyi uyacağını düşünüyor
      • ProRes bitstream spesifikasyonunun SMPTE’ye sunulduğunu, ama ProRes RAW hakkında bilgi bulmanın zor olduğunu belirtiyor
      • Yazılım ve compute tabanlı implementasyonların ortaya çıkmasını çok ilginç buluyor; muhtemelen ffmpeg geliştiricilerinin reverse engineering yaptığını düşünüyor
      • Koda kabaca baktığında, normal ProRes’ten çok farklı görünmediğini söylüyor
      • ProRes spesifikasyon belgesi
  • FFmpeg kullandığında her seferinde etkilendiğini söylüyor (kılavuza tekrar bakmak ya da bir LLM’den yardım almak gerekse bile, hatta görsel seçeneklerden komut üreten bir GUI kullanırken bile)

    • Artık vazgeçilmez bir transcoding çoklu aracı haline geldiğini düşünüyor
    • Vulkan 1.3 tabanlı processing eklenmesinin iyi bir karar olduğunu söylüyor
    • Dün, Mac üzerinde Asahi Linux’un da aynı standardı desteklediğini fark ettiğini ekliyor
    • FFmpeg argümanlarının “orijinal prompt engineering” olduğunu söyleyerek espri yapıyor

    • LLM ile FFmpeg, ImageMagick gibi karmaşık komut satırı araçlarının harika bir kombinasyon olduğunu söylüyor

      • İstenen işi doğal dille anlatmanın yeterli olduğu, neredeyse mükemmel bir gelecek UI/UX’u gibi hissettirdiğini belirtiyor
      • Örnek olarak, bir klasördeki tüm görselleri belirli bir boyuta crop etme, doygunluk ayarlama, TIFF olarak kaydetme, ardından bir video döngüsüne dönüştürüp web için encode etme senaryosunu hayal ediyor
    • LLM’lerin FFmpeg için arayüz olarak mükemmel çalıştığını söylüyor

      • Doğal dille kullanıma yardımcı olan birçok araç olduğunu, kendi script’ini de paylaştığını belirtiyor (https://github.com/jjcm/llmpeg)
  • ffmpeg ile karmaşık CLI komutları üretmek için çabanın %50’sini harcadığını, kalan %50’yi de shell escaping ile boğuşarak geçirdiğini söyleyip yarı şaka yarı gerçek bir durum anlatıyor

    • Özellikle videonun üstüne metin bindirirken metin escaping’in çok zor geldiğini söylüyor
    • Python’da ffmpeg’i çok sayıda argümanla (filtreler vb.) çağırmanın kusursuz bir yolunu bulan olup olmadığını merak ediyor (r-strings? heredoc’lar? vb.)
  • FFmpeg’in çeşitli özelliklerini rahat kullanmayı sağlayan iyi bir GUI frontend olup olmadığını soruyor

    • Bazen sadece remux yapmak ya da aynı codec’li video/ses akışlarını yalnızca birleştirmek istediğini söylüyor
    • Video birleştirmenin kolay gibi görünse de sanılandan daha çok değişken ve sorun içerdiğini vurguluyor

      • Timebase, başlangıç offset’i, kare crop’u, FPS farkı, B-frame’ler, open GOP gibi değişkenlerin belirli oynatma ortamlarında sorun çıkarabildiğini söylüyor
      • Ses tarafında da örnekleme oranı farkları gibi çeşitli değişkenler bulunduğunu ekliyor
      • Lossless-Cut programından söz ediliyor; uyumluluk denetimi özelliğinin faydalı olduğu belirtiliyor
      • Ama videoyu önce MPEG-TS’ye çevirip sonra birleştirmenin pek çok sorunu aşmak için iyi olduğunu, RAM disk üzerinde hızlıca yapılabildiğini söylüyor
      • Örnek olarak kullanılabilecek bir ffmpeg komut satırı dizisini de paylaşıyor
    • Handbrake’in bu işi iyi yaptığını söylüyor

      • Özellikler açısından yeterli olduğunu, biraz eski görünse de hâlâ gayet kullanışlı olduğunu belirtiyor
    • Mac kullanıcılarına ffWorks’ü öneriyor (https://www.ffworks.net/index.html)

      • Çoğu özelliğe kolay erişim sunduğunu, toplu işleme ve preset desteği verdiğini söylüyor
      • Geliştiricinin çok ilgili olduğunu, bunun en sevdiği uygulamalardan biri olmasına yol açtığını ve değerli bulduğu için bağış yaptığını anlatıyor
      • Handbrake ve Losslesscut’ın da harika olduğunu, ama ffWorks’ün olgunluğuyla yarışacak başka bir uygulamanın diğer platformlarda olmadığını düşünüyor
    • Kendi için en iyi frontend’in ChatGPT olduğunu söylüyor

      • İstediği işi doğal dille anlattığında oldukça isabetli ffmpeg komutları ürettiğini belirtiyor
    • Lossless-cut programına bakılmasını öneriyor

  • FFmpeg değişiklik kaydını görebilecekleri bağlantıyı paylaşıyor (https://github.com/FFmpeg/FFmpeg/blob/master/Changelog)

  • Bunun ilginç bir haber olduğunu kısa bir ifadeyle söylüyor

    • Bu videonun bir hiciv mi yoksa ciddi mi olduğunu merak ediyor
  • ffmpeg’in ssl, zlib ve sqlite’tan sonra en çok kullanılan dördüncü kütüphane olabileceğine dair kişisel görüşünü paylaşıyor (2025’te videonun gerçekten her yerde olduğu varsayımıyla)

    • Buna katılmanın zor olduğunu düşünüyor; çünkü video işleme daha çok medya alan sunucularda gerekiyor

      • Çoğu telefonun videoyu ffmpeg ile işlemediğini hatırlatıyor
    • curl’ün daha üst sıralarda olabileceğini, “SSL” tarafında ise farklı implementasyonlar olduğu için sayıların dağılacağını söylüyor

    • NixOS altyapısının fastly metrik günlüklerini veri kaynağı olarak öneriyor (https://github.com/NixOS/infra/blob/main/metrics/fastly/README.md)

    • Qt, libpng, libusb gibi ffmpeg’den daha yaygın kullanılan birçok kütüphane olduğunu düşündüğünü söylüyor

    • Arch Linux paket istatistiklerine de bakılabileceğini belirtiyor (https://pkgstats.archlinux.de/packages)

  • Vulkan compute shader implementasyonunun özellikle FFv1 ve ProRes RAW için etkileyici olduğunu düşünüyor

    • Sabit işlevli donanım decoder’larını tamamen baypas ettiği için bunun bellek bant genişliğini nasıl etkilediğini merak ediyor
    • FFv1’in context-adaptive arithmetic coding yapısının doğası gereği seri olduğunu ve hızlandırmanın zor olması gerektiğini düşünürken, çok büyük hız artışları görülmesine şaşırıyor
    • Bunun birden çok sembolün aynı anda paralelleştirilmesiyle mi, yoksa slice düzeyinde paralelleştirmeyle mi yapıldığını; arithmetic coding’i GPU’da hızlandırmanın geleneksel olarak zor olmasının nedenlerini ve ffmpeg ekibinin ne tür ödünleşimler yaptığını merak ediyor
    • Bu implementasyonun profiling’iyle deneyimi olan varsa, entropy decoding aşamasındaki doluluk ve bant genişliği tercihleri hakkında duymak istediğini söylüyor
  • ffmpeg’in sayısız aracın temelini oluşturduğunu söylüyor

    • Genel kullanıcıların ffmpeg’in medya sektörüne ne kadar katkı yaptığını çoğu zaman bilmediğini belirtiyor
    • Ses/video otomasyonu gerektiğinde her zaman dönüp baktığı araç olduğunu ekliyor