Framework-ul multimedia GStreamer 1.28.0 este disponibil

După aproape un an de dezvoltare, a fost lansată versiunea GStreamer 1.28, un set de componente multiplatformă pentru crearea unei game variate de aplicații multimedia, de la player-e media și convertoare de fișiere audio/video, până la aplicații VoIP și sisteme de streaming. Codul GStreamer este distribuit sub licența LGPLv2.1. Actualizări separate sunt dezvoltate pentru plugin-urile gst-plugins-base, gst-plugins-good, gst-plugins-bad, gst-plugins-ugly, precum și wrapper-ul gst-libav și serverul de streaming gst-rtsp-server. La nivelul API și ABI, noua versiune este compatibilă înapoi cu ramura 1.0. Pachetele binare vor fi pregătite curând pentru Android, iOS, macOS și Windows (pe Linux este recomandat să se utilizeze pachetele din distribuție).

Îmbunătățiri cheie GStreamer 1.28:

  • A fost adăugat un nou plugin HIP (Heterogeneous-computing Interface for Portability) pentru a sprijini interfața de programare dezvoltată de compania AMD pentru calculul heterogeneous, în care, pe lângă CPU, sunt utilizate resursele de calcul paralel GPU. HIP simplifică implementarea suportului pentru diferite GPU într-o singură bază de cod (pentru executarea pe GPU-uri AMD este utilizat stack-ul ROCm, iar pe GPU-uri NVIDIA – un overlay pentru traducerea în CUDA). Pluginul oferă componente implementate folosind HIP pentru a efectua operații precum amestecarea video, conversii între diferite spații de culoare, redimensionarea video și organizarea transferului de date între memoria sistemului și memoria video. De asemenea, a fost pregătită o bibliotecă pentru integrarea suportului HIP în aplicații.
  • A fost adăugat suport pentru standardul de codificare video LCEVC (Low Complexity Enhancement Video Coding), care implementează un strat suplimentar de metadate deasupra codec-urilor standard H.265 și H.266 pentru a îmbunătăți calitatea video. Implementarea encoder-ului și decoder-ului LCEVC se bazează pe bibliotecile din SDK V-Nova.
  • A fost adăugat suport pentru capabilitățile API-ului grafic Vulkan pentru accelerarea decodării video în formatele AV1 și VP9, precum și pentru codificarea video în formatul H.264. Decodorul video H.265 bazat pe Vulkan a primit suport pentru adâncimea de culoare de 10 biți pe canal.
  • În elementul gtkwaylandsink, destinat redării folosind GTK4 și Wayland, au fost extinse funcționalitățile pentru gestionarea culorilor, de exemplu, a fost adăugat suport pentru analiza și setarea metadatelor HDR10.
  • A new element has been added for separating audio sources (e.g., separating voice and background music), based on the charon-audio library, which implements the Demucs method in Rust. Additionally, a Deepgram plugin for speech recognition, written in Rust, has been included.
  • The analytics and object recognition capabilities have been expanded. Elements for merging and separating analytics have been added. The tensor-decoder classifier, facedetector for face detection, YOLOv8 object detector, a component for executing and a decoder for the YOLOX object recognition model have been implemented. The tensordecodebin element for auto-connecting decoders and an element for executing AI models using LiteRT (which replaces TensorFlow Lite) have been added.
  • A new element for decoding GIF images, written in Rust and supporting looping animations, has been introduced.
  • The input-selector element has implemented a two-phase mechanism for switching between input streams (sinkpad), eliminating the occurrence of race conditions during switching.
  • The webrtcsink element has added support for hardware-accelerated encoding using VA-API and the ability to renegotiate connections.
  • Elements for combining and extracting streams in accordance with the broadcast standard ST-2038 have been added.
  • Support for encoded streams has been added to the fallbacksrc element.
  • Support for H.265 video and multi-channel audio has been improved in the FLV multimedia container used for RTMP broadcasting.
  • The glupload element has added support for a loader based on udmabuf, allowing buffer sharing between software decoders/sources and GPU, display engines (Wayland), and other devices.
  • The qml6 element for rendering using Qt6 QML has been added.
  • Operations for cropping, scaling, rotating, and shifting have been added to the video processing library.
  • The GstContext object has been added, allowing the use of a shared thread pool during element execution to enhance the performance of operations such as compositing and video transformation.
  • The icecastsink element for receiving streams from IceCast, supporting the AAC format and written in Rust, has been added.
  • A new voice cloning element from ElevenLabs has been introduced.
  • A mode for speeding up playback while preserving pitch has been added to the speech synthesizer.
  • Un element vmaf a fost adăugat pentru evaluarea percepției calității video folosind cadrul VMAF de la Netflix.
  • A fost adăugat un nou plugin de decodare audio MPEG-H, bazat pe decodorul Fraunhofer MPEG-H și care suportă extragerea containerelor media MP4.
  • Suportul pentru subtitrări ascunse (CC — Closed Captions) și procesarea textului a fost extins.

Sursa: opennet.ro

Cumpără un hosting fiabil pentru site-uri cu protecție DDoS, servere VPS VDS 🔥 Cumpără un hosting fiabil pentru site-uri cu protecție DDoS, servere VPS VDS | ProHoster