O framework multimídia GStreamer 1.28.0 está disponível

Após quase um ano de desenvolvimento, foi lançado o GStreamer 1.28, um conjunto de componentes multiplataforma para criar uma ampla gama de aplicações multimídia, desde reprodutores de mídia e conversores de arquivos de áudio/vídeo até aplicações VoIP e sistemas de streaming. O código do GStreamer é distribuído sob a licença LGPLv2.1. Atualizações para os plugins gst-plugins-base, gst-plugins-good, gst-plugins-bad, gst-plugins-ugly, bem como a ligação gst-libav e o servidor de streaming gst-rtsp-server estão em desenvolvimento separado. Em termos de API e ABI, a nova versão é retrocompatível com a versão 1.0. Compilações binárias em breve estarão disponíveis para Android, iOS, macOS e Windows (no Linux, recomenda-se usar pacotes do distribuidor).

Principais melhorias do GStreamer 1.28:

  • Adicionado um novo plugin HIP (Interface de Computação Heterogênea para Portabilidade) para suportar a interface de programação em desenvolvimento pela AMD para computação heterogênea, na qual, além da CPU, são utilizados recursos de computação paralela da GPU. O HIP simplifica a implementação do suporte a diferentes GPUs em uma única base de código (para execução na GPU AMD, é utilizado o stack ROCm, e na GPU NVIDIA, uma camada de tradução para CUDA). O plugin fornece componentes implementados usando HIP, para executar operações como mistura de vídeo, conversões de um espaço de cores para outro, redimensionamento de vídeo e organização da troca de dados entre a memória do sistema e a memória de vídeo. Além disso, foi preparada uma biblioteca para integrar o suporte ao HIP em aplicações.
  • Adicionada suporte ao padrão de codificação de vídeo LCEVC (Low Complexity Enhancement Video Coding), que implementa, sobre os codecs padrão H.265 e H.266, uma camada adicional com metadados para melhorar a qualidade do vídeo. A implementação do codificador e decodificador LCEVC é baseada em bibliotecas do SDK V-Nova.
  • Adicionada suporte para as funcionalidades da API gráfica Vulkan para acelerar a decodificação de vídeo nos formatos AV1 e VP9, bem como a codificação de vídeo no formato H.264. O decodificador de vídeo H.265 baseado em Vulkan agora suporta profundidade de cor de 10 bits por canal.
  • No elemento gtkwaylandsink, destinado à renderização usando GTK4 e Wayland, foram ampliadas as capacidades de manipulação de cores, incluindo o suporte à análise e definição de metadados HDR10.
  • Foi adicionado um novo elemento para dividir fontes de áudio (por exemplo, separação de voz e música de fundo), baseado na biblioteca charon-audio, que implementa o método Demucs em Rust. Além disso, foi incluído um plugin Deepgram para reconhecimento de fala, escrito em Rust.
  • As capacidades de análise e reconhecimento de objetos foram ampliadas. Adicionados elementos para combinar e separar análises. Implementados o classificador tensor-decoder, o detector facial facedetector, o detector de objetos YOLOv8, um elemento para execução e um decodificador para o modelo de reconhecimento de objetos YOLOX. O elemento tensordecodebin foi adicionado para conectar decodificadores automaticamente e um elemento para executar modelos de IA usando LiteRT (substituindo o TensorFlow Lite).
  • Foi adicionado um novo elemento para decodificar imagens GIF, escrito em Rust e que suporta animação em loop.
  • No elemento input-selector, foi implementado um mecanismo de comutação em duas fases entre fluxos de entrada (sinkpad), eliminando o estado de corrida durante a comutação.
  • O elemento webrtcsink agora suporta aceleração de hardware para codificação usando VA-API e possui a capacidade de renegociar a conexão.
  • Foram adicionados elementos para combinar e extrair fluxos no formato do padrão de transmissão ST-2038.
  • No elemento fallbacksrc, foi adicionada suporte a fluxos codificados.
  • No contêiner multimídia FLV, utilizado para transmissão RTMP, melhorou o suporte a vídeo H.265 e foi adicionada suporte a áudio multicanal.
  • No elemento glupload, foi adicionada suporte para um uploader baseado em udmabuf, permitindo compartilhar buffers entre decodificadores/fontes de software e GPU, mecanismos de exibição (wayland) e outros dispositivos.
  • Foi adicionado o elemento qml6 para renderização utilizando Qt6 QML.
  • Na biblioteca de manipulação de vídeo, foram adicionadas operações para corte, redimensionamento, rotação e deslocamento.
  • Foi adicionado o objeto GstContext, permitindo o uso de um pool compartilhado de threads ao executar elementos para aumentar a performance de operações como composição e transformação de vídeo.
  • Foi adicionado o elemento icecastsink para receber fluxos do IceCast, compatível com o formato AAC e escrito em Rust.
  • Foi adicionado um novo elemento para clonar a voz ElevenLabs.
  • No sintetizador de voz, foi adicionado um modo para acelerar a reprodução mantendo a altura do tom.
  • Adicionado o elemento vmaf para avaliação da percepção de qualidade de vídeo utilizando a estrutura VMAF da Netflix.
  • Adicionado um novo plugin de decodificação de áudio MPEG-H, baseado no decodificador Fraunhofer MPEG-H e suportando a extração de containers de mídia MP4.
  • Expandido o suporte a legendas ocultas (CC — Closed Captions) e processamento de texto.

Fonte: opennet.ru

Compre hospedagem confiável para sites com proteção contra DDoS, servidores VPS VDS 🔥 Compre hospedagem confiável para sites com proteção contra DDoS, servidores VPS VDS | ProHoster