Multimedya çerçevesi GStreamer 1.20.0 mevcut

Bir buçuk yıllık geliştirme sürecinin ardından, medya oynatıcıları ve ses/video dosyası dönüştürücülerinden VoIP uygulamalarına ve akış sistemlerine kadar çok çeşitli multimedya uygulamaları oluşturmak için C ile yazılmış bir platformlar arası bileşen seti olan GStreamer 1.20 piyasaya sürüldü. GStreamer kodu LGPLv2.1 kapsamında lisanslanmıştır. Aynı zamanda, gst-plugins-base 1.20, gst-plugins-good 1.20, gst-plugins-bad 1.20, gst-plugins-ugly 1.20 eklentilerinin yanı sıra gst-libav 1.20 bağlaması ve gst-rtsp-server 20 akış sunucusu. API ve ABI düzeyinde, yeni sürüm 1.0 şubesiyle geriye dönük olarak uyumludur. Yakında Android, iOS, macOS ve Windows için ikili derlemeler hazırlanacak (Linux'ta dağıtımdaki paketlerin kullanılması önerilir).

GStreamer 1.20'deki önemli iyileştirmeler:

  • GitLab'daki geliştirmede, tüm modüller için ortak olan tek bir deponun kullanılmasına geçildi.
  • GstPlayer API'sinin yerini alan ve içeriği oynatmak için benzer işlevsellik sunan, GObject sinyalleri yerine uygulamaları bilgilendirmek için bir mesaj veriyolu kullanılmasıyla farklılık gösteren yeni bir üst düzey GstPlay kütüphanesi eklendi.
  • Şeffaf alanlarla VP8/VP9 videolarının oynatılmasına olanak tanıyan WebM şeffaflık bilgilerinin kodunun çözülmesi için destek eklendi.
  • Kodlama profilleri artık uygulamaya özel ek özellikleri ayarlama desteğine sahiptir.
  • Compositor, çok iş parçacıklı video dönüştürmeyi ve karıştırmayı destekler.
  • Yükleyici ve yükleyici sınıfları, ek RTP başlıklarıyla (RTP Başlık Uzantıları) çalışmak için birleşik desteğe sahiptir.
  • SMPTE 2022-1 2-D (İleri Hata Düzeltme) mekanizması için destek eklendi.
  • VP8, VP9 ve H.265 codec bileşenleri için Encodebin ve Transcodebin, kod dönüştürmenin yalnızca gerektiğinde gerçekleştirildiği ve geri kalan zamanda mevcut akışın iletildiği akıllı bir kodlama modunu uygular.
  • Souphttpsrc eklentisi artık libsoup2 ve libsoup3 ile uyumludur.
  • Tam çerçevenin alınmasını beklemeden kod çözmeye başlamanıza olanak tanıyan, ara çerçeveler (alt çerçeve) düzeyinde giriş verilerinin kodunu çözme yeteneği eklendi. Bu optimizasyona yönelik destek OpenJPEG JPEG 2000, FFmpeg H.264 ve OpenMAX H.264/H.265 kod çözücülerine dahildir.
  • RTP, WebRTC ve RTSP protokolleri için videonun kodu çözülürken paket kaybının, veri bozulmasının ve anahtar kare isteklerinin otomatik olarak işlenmesi sağlanır.
  • MP4 ve Matroska medya konteyner paketleyicilerine, codec verilerini anında değiştirme desteği eklendi; bu, H.264/H.265 giriş akışları için profili, düzeyi ve çözünürlüğü değiştirmenize olanak tanır.
  • Parçalanmış mp4 medya kapları oluşturmak için bir mod eklendi.
  • WPE (WebKit Port for Embedded) tabanlı bağlantı noktasına ses desteği eklendi.
  • Renk alanı dönüşümü, öğe ölçeklendirme ve öğe yükleme için CUDA'yı kullanma yeteneği eklendi.
  • OpenGL glupload ve gldownload öğeleri için NVMM (NVIDIA Bellek Modülü) belleği desteği eklendi.
  • Geliştirilmiş WebRTC desteği.
  • Daha fazla kod çözücüyü ve işlem sonrası öğeleri destekleyen VA-API (Video Hızlandırma API'si) için yeni bir eklenti önerildi.
  • AppSink API, arabelleklere ve arabellek listelerine ek olarak olaylar için de destek ekledi.
  • AppSrc'ye dahili kuyruklar için ek ayarlar eklendi.
  • Rust dil bağlantıları güncellendi ve Rust'ta yazılmış 26 yeni eklenti eklendi (gst-plugins-rs).
  • AES algoritmasını kullanarak şifreleme ve şifre çözme için aesdec ve aesenc öğeleri eklendi.
  • Test ve hata ayıklama için fakeaudiosink ve videocodectestsink öğeleri eklendi.
  • Minimalist GStreamer yapıları oluşturmaya yönelik geliştirilmiş araçlar.
  • FFmpeg 5.0 ile oluşturma yeteneği eklendi.
  • Linux için MPEG-2 ve VP9 codec'lerinin sürümleri, durum kaydetmeden (durum bilgisi olmadan) uygulanmıştır.
  • Windows için Direct3D11/DXVA tabanlı kod çözücüye AV1 ve MPEG-2 desteği eklenmiştir.

Kaynak: opennet.ru

Yorum ekle