Çokluortam dosyalarını yönetmek üzere program ve kütüphaneler üreten özgür yazılım projesi FFmpeg yazılımının 5.0 sürümü 17 Ocak 2022 tarihinde yayımlandı.

Lorentz kod adlı FFmpeg 5.0 sürümü, çok sayıda uygulama programlama arayüzü değişikliği ve çeşitli yeni özelliklerle birlikte geliyor. Ayrıca bu sürümü özel yapan bir diğer konu da uzun süreli destek sürümü olması.

FFmpeg 5.0 özellikleri

FFmpeg 4.4 sürümünün üzerinden daha dokuz ay geçmesine rağmen FFmpeg 5.0 sürümünde dikkat çekici birçok şey var. FFmpeg 5.0’ın öne çıkan özelliklerinden bazıları şunlar:

  • Video yatay/dikey çevirme için yeni Vulkan destekli filtreler.
  • Yeni bir Apple Graphics SMC kodlayıcı.
  • Speex kod çözücü.
  • Argonaut Games CVG ve deneysel bir IMF demuxer’ı gibi çeşitli yeni muxer’lar/demuxer’lar.
  • Bir AV1 düşük yüklü bitstream biçim çoklayıcı.
  • Swscale dilimleme için iş parçacığı desteği.
  • Yeni ses ve video filtreleri.
  • LoongArch CPU mimarisi desteği.
  • Vulkan desteğinde ve özellikle Vulkan filtrelerinde iyileştirmeler.
  • Sıkıştırılmamış video için RTP paketleyici (RFC 4175).
  • Tüm HDR ihtiyaçları için libplacebo video filtresi desteği.

FFmpeg 5.0 uygulama programlama arayüzünde büyük değişiklikler

FFmpeg, geçmişi boyunca çok sayıda UPA değişikliği yaşamış ancak proje bu hem kütüphaneden tamamen kaldırılanlar hem de sadece kullanımdan kaldırılanlar konusunda çok dikkatli olmuştur. FFmpeg’de önce özellikler veya fonksiyonlar kullanımdan kaldırılır, sonra da kullanıcıların yükseltme yapmasına izin vermek için beklenir, en sonunda da UPA’lar kaldırılır. Mevcut programların bozulmasına neden olabileceğinden bu işlem sona bırakılır

Bununla birlikte son zamanlarda kullanımdan kaldırılmış olarak işaretlenen UPA’ların çoğu tutulmuştur. Daha da fenası, en son herhangi bir şeyi kaldıralı dört yıl olduğundan bu UPA’lardan bazıları hâlâ dahili olarak FFmpeg’de kullanılıyordu.

Bu nedenle, FFmpeg 5.0’da, tüm bu kullanımdan kaldırılan UPA’ları tamamen kaldıran devasa bir yama seti geçen Nisan ayında FFmpeg’in ana kod tabınıyla birleştirildi.

Bazı UPA’lar 2013’ten beri kullanımdan kaldırılmış durumdaydı ve değişiklikler uygulama geliştiricileri için çok büyük görünebilir. Zamanla biriken ve hoşa gitmeyen hurda veya süprüntülerden kaçınmak her proje için iyi bir şey. Tabii ki uygulama geliştiricilerinin muhtemelen uygulamalarını güncellemesi gerektirecektir.

UPA değişikliklerinden bazıları şunlardır:

  • avcodec kodlaması+kod çözmesi değişikliği
  • Ses ve video için Tek UPA
  • Ayrıştırılmış kodlayıcı/kod çözücü girişi ve çıkışı
  • Kodlayıcıların verileri kullanıcı tarafından yönetilen arabelleklere çıkarmasına izin veren yeni geriçağrım
  • swscale’de AVFrame tabanlı UPA
  • Çözülmüş avformat ve avcodec
  • Yeni bitstream filtreleme UPA’sı
  • codec/format kayıt UPA’ları kaldırıldı, artık tüm biçimler her zaman kayıtlıdır
  • Artırılmış tür güvenliği: çeşitli UPA’larda int yerine size_t kullanılmaya başlandı
  • libavresample silindi

Tüm bunlara ek olarak son bir hatırlatma hâlâ FFmpeg 4.4’ün desteği sürmektedir ve kullanılmaya bir süre daha devam edilebilir.

Sonuç

Bir yazılım geliştirici olmasınız da büyük ihtimalle FFmpeg’i duymuş ve FFmpeg’den yararlanan uygulamalar kullanmışsınızdır. Bir son kullanıcının FFmpeg’i doğrudan kullanarak video işlemeyle ilgili temel işlemleri nasıl kolayca yapabileceğini görmek isterseniz de useful-FFmpeg-commands projesinin Türkçe sayfasına https://github.com/aokocax/useful-FFmpeg-commands/blob/main/readme.TR.md bakabilirsiniz.

Kaynaklar

FFmpeg – Vikipedi
https://tr.wikipedia.org/wiki/FFmpeg

FFmpeg 5.0 Released For This Popular, Open-Source Multimedia Library
https://www.phoronix.com/scan.php?page=news_item&px=FFmpeg-5.0-Released

FFmpeg 5.0 – JB Kempf
http://www.jbkempf.com/blog/post/2022/FFmpeg-5.0