
GStreamer 1.26.5 Já está disponível como uma atualização de manutenção dentro do branch estável 1.26, com forte foco em estabilidade, correções de regressão e melhorias práticas em áreas que os usuários encontram diariamente. Es uma versão de correção de bugs que pode ser facilmente instalada em qualquer 1.26.x e que também vem com algumas pequenas adições muito úteis, desde suporte a JPEG XS em elementos específicos até ajustes na integração com Windows, V4L2, Vulkan ou monitor de dispositivos.
Esta versão se baseia no grande salto da versão 1.26.0, que adicionou novas tecnologias (H.266, LCEVC, JPEG XS), melhorias profundas no streaming adaptável, legendagem e rastreamento, mais integração com Vulkan, OpenGL, CUDA, Direct3D12 e VA, e uma série de novos elementos escritos em C e Rust. Nas linhas a seguir revisamos em detalhes tudo o que a versão 1.26.5 traz e lembramos o mais importante de toda a série 1.26. para que você tenha uma visão geral completa antes de atualizar.
O que é o GStreamer 1.26.5 e por que você deve se importar
A versão 1.26.5 é a quinta correção de bug da série 1.26., lançado em 7 de agosto, com foco em confiabilidade. Destacam-se correções e melhorias que abordam problemas reais descobertos em produção: o audioconvert corrige uma regressão na negociação de limites com matrizes de mixagem, o cea608overlay e o cea708overlay agora aceitam buffers de memória da GPU quando o downstream suporta composição de sobreposição, e o d3d12screencapture aprimora os provedores de origem e de dispositivo para um comportamento mais robusto.
Na parte de reprodução e descoberta, pontos críticos foram refinados.: decodebin3 não falha mais em fluxos com metadados ONVIF e uridecodebin3 evita o risco de travamento ao adicionar URIs às mensagens (por exemplo, se um decodificador estiver faltando). V4L2 elimina vazamento de memória em mudanças de resolução dinâmica e Os codificadores VA recebem correções para casos limítrofes.
Existem adições úteis de codecs: videorate e imagefreeze agora podem funcionar com JPEG XS, o que facilita os pipelines de sincronização e a geração de quadros com este formato. Vulkan recebe correção de integração, wasapi2 melhora o monitoramento de dispositivos no Windows Threadshare e rtpbin2 incorporam inúmeras correções y gst-device-monitor-1.0 ganha usabilidade a partir da linha de comando. Além disso, Em serviços de nuvem, a brevidade é adicionada ao AWS Translate. e uma opção para Dividir alto-falantes com awtranscriber2, junto com um Nova propriedade de profanidades de máscara no Speechmatics para abordar linguagem ofensiva na transcrição.
Lembrete: O grande salto na versão 1.26.0 (principais recursos)
1.26.0 (11 de março) introduziu melhorias de longo alcance sobre a API 1.x, com foco em novos codecs, legendagem, streaming, análises e aceleração. Os destaques incluem:
- Suporte ao codec VVC H.266: analisador, decodificador base para hw, decodificação VA-API, acesso ao decodificador FFmpeg e mux/demux em MP4, Matroska e MPEG-TS; um decodificador baseado em VVdeC foi adicionado em Rust.
- JPEG XS: Elementos de codificação e decodificação baseados em SVT JPEG XS com mux/demux em MPEG‑TS, suportando entrelaçado e progressivo.
- LCEVC: Elementos de codificação/decodificação sobre o V‑Nova SDK e suporte em h264parse para extrair a camada de aprimoramento com lcevch264decodebin.
- Legendas e legendas ocultas: Extratores/Insersores para H.264/H.265, sobreposição cea708 de Rust, cea708mux, tttocea708, melhorias em cccombinere cdpserviceinject para CDP.
- HLS/DASH: cliente adaptivedemux2 com suporte para file://, backoff e novas tentativas, hlscmafsink y hlssink3 para CMAF/TS, hlsmultivarianteink, e arranjos em dissipador de calor.
- splitmuxsrc/sink com carregamento lento e fragmentos dinâmicos, sinais de adição de fragmentos e política de arquivo aberto.
- MPEG-TS mais capaz
- MP4/Matroska: VVC, Hap, Lagarith, vídeo bruto, tags de rotação e inversão, modo de truque no qtdemux e suporte a ISO de vídeo bruto.
- SMPTE 2038 em Rust para metadados auxiliares (demux/mux e conversão CC).
- Analytics: novo GstTensorMeta, relacionamentos N para N, máscaras de segmentação, extrator de metadados onvif, buffer original y relaçãometa, bem como ligações Python mais refinadas.
- Aceleração e gráficos: grandes melhorias em Vulcão y OpenGL (v210, YUY2/UYVY, Y444_10/16, importação DMABuf), QML com importação direta de DMABuf, CUDA com compositor, nvenc AV1, Jetson NVMM e kernels pré-compilados, Direct3D12 com d3d12videosink, d3d12swapchainsink, d3d12desentrelaçamento, GPU IPC de cópia zero e captura HDR correta.
- Cartões de captura: : melhorias no AJA e Decklink (HDR PQ/HLG e planejamento de quadros).
- RTP / RTSP: rtspsrc com chaves MIKEY gerenciadas pelo cliente, novos modos de sincronização em rtpbin, jitterbuffer com estado RFC7273, melhorias em rtph265depay e regeneração de registros de data e hora em rtppassthroughpay, e novo rtpbin2 em ferrugem.
- WebRTC: webrtcbin com reversões e melhorias básicas; webrtcsink/fonte com mais codificadores, MSE e sincronização NTP/PTP; WHEP/WHIP já presente no ecossistema; e elementos LiveKit/Kinesis disponíveis em versões posteriores à 1.26.x.
- Novos itens como webview2src, Extratores CC para H.264/H.265, h266parse, svtjpegxsenc/dec e várias peças em VA e Rust.
Pequenas mudanças técnicas que fazem a diferença
Contêineres e transporte
Suporte VVC robusto foi adicionado ao MP4 e Matroska, formatos de nicho como Hap/Lagarith e vídeo bruto, além do correto manuseio de rotações e inversões por mídia e por trilha. MPEG-TS agora pode multiplexar e demultiplexar VVC, JPEG‑XS, VP9 e AV1 (com mapeamentos personalizados), medidor ID3 y SMPTE 302Me experimente M2TS de 192 bytes. Para transmissões ao vivo, mpegtslivesrc fornece um relógio baseado em PCR.
Em streaming adaptável la cliente adaptivedemux2 evita descargas ao vivo espúrias, suporta URIs file:// e novas tentativas com backoff e dissipador de calor corrige a duração dos períodos para MPDs dinâmicos. HLS ganha novos sumidouros focados em CMAF e variantes de dimensionamento.
Legendas, CC e SMPTE 2038
Os extratores/insertores H.264/H.265 manipulam CC na ordem de apresentação sem decodificação (útil para processar pipelines sem recodificação), e a família Rust incorpora st2038ancdemux/mux e conversores CC. sobreposição cea708 substitui cc708overlay com suporte moderno e aceitação de buffer de GPU em 1.26.5.
Análise e metadados
GstTensorMeta e novos relacionamentos N-para-N facilitar fluxos de trabalho complexos de visão computacional, com máscaras, conversões ONVIF e plugins utilitários para preservar buffers originais. Ligações Python aprimoradas agilizar a iteração e a edição de metas analíticas.
Aceleração: Vulkan, OpenGL, CUDA e D3D12
Vulkan melhora memória incoerente, colorimetria e piscinas, além de perfis H.264/H.265 e um codificador mais ágil. OpenGL amplia conversões (v210, YUY2/UYVY, alta profundidade Y444) e DMABuf. CUDA adicionar compositor, nvav1enc, suporte a Jetson NVMM e pré-compilado. Direct3D12 inaugura biblioteca pública, afunda com equilíbrio de cores, texturas mipmap, IPC de cópia zero e desentrelaçamento portátil.
RTP, RTSP e WebRTC
RTSP gerencia Mikey - O que é isso? no lado do cliente (útil com câmeras Axis), rtpbin ganha modos never/ntp e o jitterbuffer expõe o estado RFC7273. Solicitação de quadro-chave aprimorada em H.265 RTP e regeneração de registros de data e hora no gateway. Ferrugem fornece rtpbin2 e carregadores para AC3, AMR, JPEG, KLV, MPEG‑TS, MP4A/G, Opus, PCMU/A, VP8/9. No WebRTC Reversões, níveis de áudio e retransmissões estão sendo ajustados, e fontes Janus, LiveKit e WHEP foram adicionadas na versão 1.26.x.
API, desempenho e rastros
GstIdStr substitui GQuark em estruturas/caps para evitar vazamentos e melhorar o desempenho comparando correntes curtas; GstVecDeque insira o núcleo para filas mais simples e eficientes. Os utilitários de áudio/vídeo são expandidos (reordenações, caminhos rápidos v210⇄I420_10/I422_10), e novos traçadores são adicionados (memória, tempos de push e PCAP). O sistema de registro adiciona detalhes ricos para mensagens (URI, stream‑id) e a escrita de DOTs é otimizada.
