Internet Video Streaming
Protocolos de transmissão

O video live streaming ao transmitir o conteúdo pela internet lida com ligações não perfeitas (smartphones fora de rede, wi-fi não confiável, velocidades de serviço baixas quando a rede é usada por muitos utilizadores…). Por esta razão são utilizados protocolos, projectados para radiodifusão através da internet, para situações de largura de banda variável.

Os primeiros protocolos a serem utilizados foram o RTP (Real Time Protocol) e o RTSP (Real Time Streaming Protocol).

O RTP é um protocolo que realiza o transporte de pacotes de video e áudio. Utiliza a internet para transferir, por exemplo, uma conversa telefónica.

O RTSP foi desenvolvido com o objectivo de controlar a entrega de dados em tempo real. É utilizado, por exemplo, na transmissão de eventos desportivos ou em vídeos jogos on-line.

Mais tarde surgiu o HTTP live streaming que dispõe de adaptive streaming, ou seja, o programa do utilizador escolhe o bit rate dos fragmentos solicitados ao servidor. Neste protocolo o cliente, através do seu programa de reprodução, dá a indicação ao servidor dos fragmentos que devem por ele ser enviados e quando o fará. Por seu lado o servidor, depois de ser contactado pelo programa de reprodução do utilizador, envia um ficheiro metadata, denominado manifest, com os fragmentos disponíveis aquando do pedido.

Sendo assim o servidor tem apenas duas tarefas, codificar e transmitir os fragmentos em tempo real. [6]

Baseados no protocolo HTTP surgiram:

Apple HLS

O HLS (HTTP Live Streaming) permite enviar áudio e vídeo através de HTTP desde um servidor comum para dispositivos que possuem um dos sistemas operativos Apple iOS ou Safari. Suporta conteúdos em directo como on demand.

Protocolo Apple HLS

Possui três componentes: servidor, distribuição e cliente. [8]

Protocolo que faz diversas divisões do streaming em pequenos downloads do conteúdo, com todos os ficheiros baseados em HTTP, permitindo utilizar os vários servidores internet.

Durante períodos que existam falhas na conexão, o conteúdo é armazenado temporariamente em trechos até que a ligação volte a estar disponível, evitando assim perdas de transmissão.

Microsoft smooth streaming

O Smooth Streaming utiliza códigos de tempo nos pedidos dos fragmentos, desta maneira o utilizador não tem que fazer múltiplas vezes download do manifest.

Utiliza os codecs H.264 para video e AAC para áudio e ficheiros do tipo ISO BMFF (ISSO Base Media File Format).

Com esta tecnologia os utilizadores conseguem um buffer reduzido e um tempo de arranque rápido, sendo a qualidade de transmissão adaptada à largura de banda e CPU do cliente. [7]

Adobe HDS

O streaming dinâmico em HTTP (HDS) permite o acesso de vídeo com uma taxa de transmissão de bits adaptável, tanto em directo como on-demand, baseando- se num padrão MP4 através de conexões regulares HTTP.

Utiliza ficheiros fragmentados do tipo ISO BMFF tal como o Smooth Streaming, contundo a diferença reside no envio do manifest. O HDS utiliza uma sequência de números nos pedidos dos fragmentos de maneira a que o utilizador não necessite de estar repetidamente a fazer download do manifest, levando a que a duração recomendada dos fragmentos em HDS seja 2-5 segundos. [9]

MPEG-DASH

Ao serem criados diferentes protocolos é também necessário criar vários formatos dos produtos para alcançar todo o mercado de video live streaming, o que eleva os custos. Viu-se a necessidade por parte dos produtores de conteúdo e fornecedores de equipamentos de criar um formato universal, um novo padrão de streaming que junte o melhor dos anteriores protocolos. Surge assim o MPEG-DASH, MPEG para Dynamic Adaptive Streaming over HTTP. [9]

Neste novo protocolo o ficheiro manifest, criado em XML, passa a ser denominado media presentation description (MPS) e a tecnologia está instruída para trabalhar tanto em MPEG-TS como em ISO BMFF. Não existe também um codec predefinido na codificação/descodificação, dando a escolher qual será utilizado.

Para o conteúdo podem ser criados também perfis, onde se podem definir formatos de protecção, bit rate, codecs, resoluções…

Apesar de ter sido projectado para ser adoptado mundialmente e de permitir uma grande flexibilidade na transmissão de conteúdos em streaming ainda não ganhou empatia por parte dos gigantes da industria.