Quando leio sobre formatos de streaming de mídia e métodos de empacotamento, fico confuso com a forma como o WebM é descrito como mutuamente exclusivo paraRTMPeTransmissão ao vivo HTTP.
Pelo que entendi, WebM é um formato de vídeo, como uma forma de codificar um arquivo de vídeo, com a .webm
extensão, enquanto tanto RTMP quanto HLS são formas de enviar formatos de vídeo pela web em uma transmissão ao vivo (uma forma de empacotar bits de informação e enviando-os através de algum protocolo web, como HTTP TCP).
O WebM possui seu próprio método proprietário para se enviar pela web? Será que o RTMP e o HLS não conseguem enviar vídeos formatados em WebM?
Responder1
WebM é essencialmente um formato contêiner para transportar vídeo VP8 ou VP9 e áudio Vorbis ou Opus. Ele não especifica como deve ser transmitido e, geralmente, não possui amplo suporte para streaming, em comparação com outros formatos de contêiner como MPEG-2 TS ou MP4. No entanto, ainda pode ser usado para streaming.
Observe que por "streaming" não me refiro apenas ao download de um único arquivo de um site ou à incorporação de um único clipe (longo) em uma <video>
tag HTML5. Nos últimos anos, várias tecnologias de streaming mais avançadas foram utilizadas:
Transmissão RTMP(Real Time Messaging Protocol), requer um servidor RTMP comoServidor de mídia Adobe Flash, que transmitirá formatos de arquivo compatíveis com Flash (MP4, FLV) para o cliente. Isso ainda é bastante difundido, mas está desaparecendo lenta e seguramente – como todas as tecnologias baseadas em Flash.
Como WebM não é compatível com Flash, você não pode usá-lo lá.
Transmissão RTSP(Real Time Streaming Protocol) é um protocolo de controle para servidores de streaming, como oServidor de streaming QuickTimeouServidor Hélice. O cliente e o servidor trocarão mensagens de controle através deste protocolo, enquanto os dados são transmitidos atravésRTPCarga útil (protocolo de transporte em tempo real). Isso raramente é encontrado na Web, mas simIPTV.
Existem especificações sobre comoencapsular WebM em RTP.
Transmissão ao vivo HTTPeMPEG-DASHsão tecnologias de streaming adaptativas nas quais o cliente solicita pedaços de um vídeo de um servidor por meio de solicitações HTTP simples, com base em um arquivo de lista de reprodução M3U8 (no caso de HLS) ou em um manifesto MPD (no caso de DASH). Este arquivo indexa esses pedaços de arquivo contendo os dados reais de áudio e vídeo.
No HLS o vídeo deve ser armazenado em arquivos MPEG-2 TS ou, desde 2017, em arquivos MP4 (formato de mídia base ISO) fragmentados. MPEG-DASH tem suporte mais amplo; aqui,WebM segmentado também pode ser usado.