Uma avaliação do impacto da utilização do MPEG DASH na rede em função da adaptabilidade desta técnica

clock 30/11/2012 TOON-pePaulo Silveira

OTT 6Adaptativo Streaming Dinâmico sobre HTTP (DASH) é uma abordagem conveniente para transferir vídeos de forma adaptativa e dinâmica para o usuário. Como consequência, esta “Proposta de Pesquisa para o Mestrado em Engenharia Elétrica na Universidade Federal do Paraná em 2013”, providencia a flexibilidade da largura de banda elevada que é especialmente adequada para os casos de utilização móveis onde as variações da largura de banda são enormes. Este projeto vai pesquisar as extensões da Codificação de Vídeo Escalonável (SVC) do padrão de Codificação de Vídeo Avançado (AVC) dentro do recente ratificado padrão MPEG-DASH. Além disso, vai avaliar uma solução sob condições restritas, investigando a largura de banda em ambientes móveis e comparando-a com uma versão melhorada da implementação do MPEG-DASH usando AVC, bem como as soluções principais da indústria.

 

1 INTRODUÇÃO

Na maior parte da década passada, foi muito difícil transmitir “live vídeo” (vídeo ao vivo) para um dispositivo. Variabilidade de banda larga, configurações de firewall desfavoráveis e a falta de suporte na infraestrutura da rede, todas criaram obstáculos importantes para o “live streaming”. Os primeiros e mais tradicionais protocolos de streaming, projetados para os formatos de pacotes pequenos e redes de distribuição gerenciadas, não foram nada amigáveis com os sistemas de “firewall”. Embora o HTTP “download” progressivo fosse desenvolvido parcialmente para se obter “stream” de áudio e vídeo depois de passar pelo “firewall”, ele ainda não oferece a verdadeira capacidade de “streaming”.

clip_image002[9]

Agora, com o advento da tecnologia de adaptativo “streaming” (fluxo de dados) sobre HTTP tudo mudou, transformando a entrega de vídeo para PCs, laptops, consoles de jogos, tablets, smartphones e outros dispositivos móveis, bem como para os dispositivos domésticos como TVs conectadas e set-top boxes (STBs) com IP hibrido, acarretando um aumento significativo no QoE (Qualidade de Experiência do Usuário). Como resultado, assistir vídeos “online” ou em movimento não é mais uma grande novidade, nem fazer “streaming” pela Internet para entregar conteúdo nas telas de TV domiciliares. Impulsionada pela explosão em dispositivos de vídeo habilitados, os consumidores rapidamente se movimentaram para a fase de adoção inicial do serviço de “TV Everywhere”, chegando ao ponto em que devido ao numero crescente de usuários mudou a exigência, onde a requisição passou a ser a de se obter qualquer mídia que esteja disponível, em qualquer dispositivo, através de qualquer conexão de rede, a qualquer momento. Cada vez mais, os consumidores também esperam a entrega de conteúdo para atender os mesmos elevados níveis de qualidade que eles têm vindo a conhecer e gostar como os serviços das TVs tradicionais.

Com o surgimento dos três principais protocolos de “streaming” adaptativo da Adobe, Apple e Microsoft nos últimos anos, fez com que o vídeo em multi telas (multiscreen) se tornasse uma realidade, apesar de significantes problemas ainda existirem. Cada uma das três plataformas proprietárias é um sistema fechado, com o seu próprio formato no uso de diferentes extensões de arquivo de texto, formatos de conteúdo e protocolos de “streaming”. Assim, os produtores de conteúdo e fornecedores de equipamentos tiveram que criar várias versões diferentes de seus produtos para atender a totalidade do mercado de “streaming” de vídeo, muitos elevando os custos e restringindo o desenvolvimento global do mercado.

clip_image004[9]

Em uma tentativa ambiciosa para resolver estes problemas importunos, MPEG adotou recentemente um novo padrão de streaming multimídia através da Internet. Conhecido como “MPEG Dinâmico Adaptativo Streaming” via HTTP (MPEG DASH), um novo padrão para a indústria com o intuito de criar um formato de distribuição universal para “streaming” de mídia, incorporando os melhores elementos das três principais soluções proprietárias de “streaming”. Ao fazer isso, MPEG DASH visa proporcionar uma busca de interoperabilidade entre diferentes servidores da rede e diferentes dispositivos de consumo eletrônico, impulsionando assim um ecossistema comum de conteúdos e serviços.

clip_image006[9]

O dinâmico adaptativo streaming sobre HTTP (MPEG DASH) é um novo conceito para o “streaming” de vídeo, usando transferências consecutivas de segmentos de vídeo de curta duração. 3GPP desenvolveu o padrão MPEG DASH o qual alem disto é estendido pelo “Open IPTV Forum (OIPF) e MPEG”. Em todas as versões disponíveis até a presente data, apenas os simples conteúdos de casos de uso de proteção são habilitados. Extensões são necessárias para permitir importantes casos de uso avançado como o pay-per-view e mudança de licença de um canal de vídeo em curso.

clip_image008[9]

O “Forum do MPEG” desenvolveu várias tecnologias para o transporte de multimídia, como o MPEG-2 Transport Stream (TS) e o ISO (Media Base File Format). Essas tecnologias têm sido amplamente aceitas e muito usadas por várias indústrias e aplicações, como as “Emissoras de Televisão Digital”, “Provedores de Serviço” através do transporte de áudio e vídeo pela Internet, telefones celulares, tablets, etc.

Nos últimos anos, a Internet tornou-se um importante canal para a entrega de multimídia. Como o HTTP é amplamente utilizado na Internet, ele tem sido usado extensivamente para a entrega de conteúdo de multimídia. No entanto, não há um padrão para HTTP baseado no streaming de mídia MPEG. O “Forum do MPEG” pretende padronizar uma solução que atenda essas necessidades.

Esta avaliação vai procurar explicar a forma como a especificação MPEG DASH pode ser utilizada para oferecer uma tecnologia que, em combinação com o padrão HbbTV, pode se conectar para qualquer serviço e para qualquer dispositivo conectado no futuro. Ela irá analisar os aspectos técnicos do novo padrão MPEG DASH, como o MPEG DASH oferece suporte ao “streaming” de vídeo ao vivo, sobre demanda através da gravação de vídeos pessoais na rede (NDVR), assim como os dois principais formatos de vídeo – ISO que é à base de formato do arquivo de mídia (IBMFF) e MPEG-2 TS.

clip_image010[9]

A tecnologia do adaptativo “streaming” vinculado ao MPEG DASH tem como objetivo mostrar à adaptação dinâmica a taxa de bits do “streaming” nas diferentes condições da rede. Uma das características para a transmissão adaptável é quando do acesso orientado ao receptor (cliente) onde o arquivo de mídia é subdividido em segmentos, sendo que cada um dos segmentos é fornecido em várias taxas de bits, e a tarefa do receptor é selecionar a apropriada taxa de bits para cada um dos segmentos. O DASH como um componente de serviço ponto a ponto é o capacitador para a mais alta experiência do usuário (baixo inicio de reprodução e nenhum “re-buffer”), para reutilizar as tecnologias existentes (containers, DRM, codecs, etc.), para a implantação sobre o HTTP- CDNs e como um habilitador que fornece simples interoperabilidade nos pontos (perfis).

clip_image012[9]

clip_image014[9]

2 JUSTIFICATIVA

O rápido aumento na conexão e nas taxas de banda larga nos domicílios, a crescente popularidade dos aparelhos de TV conectados, e a propagação de terminais móveis habilitados (WiFi/3G/LTE) estão entre os principais fatores para a crescente popularidade do vídeo na internet. Além de conexões mais rápidas, a entrega de melhorias tecnológicas na codificação e entrega de vídeo, esta tornando possível que mais consumidores assistam conteúdo de vídeo “online”. A fim de garantir uma melhor experiência do usuário, a taxa de transferência de diferentes tecnologias de acesso à rede com variações dinâmicas nas condições da rede, é fundamental que se adote tecnologias que permitam uma entrega adequada do conteúdo de mídia. Uma dessas tecnologias é a transmissão adaptativa de vídeo ou (ABR – Adaptive Bit Rate) com o DASH, um capacitador o qual providencia formatos que permitem a entrega eficiente e de alta qualidade de serviços de “streaming” através da rede.

clip_image015[9]

O conceito de fluxo de vídeo adaptativo é baseado na ideia de se adaptar a largura de banda requerida pelo fluxo de vídeo, para a taxa de transferência disponível sobre o caminho da rede a partir do fluxo de dados de origem para o cliente. A adaptação é executada variando a qualidade do fluxo de dados de vídeo transmitido e, deste modo a sua taxa de bits, que é o número de bits necessários para codificar um segundo de reprodução. Uma das abordagens é a de dividir o “streaming” de vídeo em segmentos e codificar cada um dos segmentos em vários níveis de qualidade, chamados representações. Com base em sua estimativa do rendimento disponível, um cliente pode solicitar segmentos subsequentes em diferentes níveis de qualidade, a fim de lidar com diferentes condições da rede. O processo algorítmico de decidir a representação ideal para cada um dos segmentos, a fim de otimizar a experiência de visualização é um elemento chave e um dos grandes desafios na adaptação de sistemas de “streaming”. Em particular, os desafios para o cliente são (I) estimar adequadamente a dinâmica da taxa de transferência disponível, (II) controlar o nível de preenchimento do “buffer” local para evitar que se atinja a máxima capacidade que uma maquina é capaz de armazenar, resultando em interrupções de leitura, (III) maximizar a qualidade do fluxo, evitando ao mesmo tempo as flutuações de qualidade desnecessárias e, por último, (IV) minimizar o atraso entre o pedido do utilizador (cliente) e o início da reprodução.

clip_image016[9]

clip_image018[9]

O DASH conduz ao aumento de consumo de vídeo pela rede (Internet, Cabo TV, Mobile), por fornecer um formato de distribuição universal, permitindo que as operadoras de forma rentável streaming o conteúdo em adaptativas quantidades, para qualquer dispositivo conectado que pode ser implementado em todos os meios de entrega de conteúdo – de radiodifusão, cabo, celular e internet – enquanto fornece a interoperabilidade entre todos os perfis DASH e dispositivos conectados.

clip_image020[9]

A distribuição de conteúdo de vídeo pela Internet começou em 1990 com a entrega de multimídia no apropriado tempo e o consumo de grandes quantidades de dados sendo o principal desafio. A organização que desenvolve padrões para a transferência de informação pela Internet (IETF) identificou que o “Protocolo em Tempo Real” ou o Protocolo de Streaming em Tempo Real (RTP/UDP ou RTSP) foi projetado para definir formatos de pacotes para conteúdo de áudio e vídeo, juntamente com a gestão do “streaming” da sessão o qual permite a entrega desses pacotes com sobrecarga muito baixa. RTP/UDP ou RTSP funciona bem em gestão de redes IP. No entanto, na Internet de hoje, as redes gerenciadas foram substituídas por redes de distribuição de conteúdo (CDN), muitas das quais não suportam “streaming” de RTP/UDP ou RTSP. Além disso, os pacotes RTP/UDP ou RTSP muitas vezes não são permitidos através de firewalls. Finalmente, a transmissão em RTP/UDP ou RTSP exige que o servidor possa gerenciar uma sessão separada do “streaming” para cada cliente, fazendo com que ocorram implantações em grande escala de recursos intensivos.

clip_image022[9]

clip_image024[9]

Com o aumento da largura de banda da Internet e do enorme crescimento da “WWW”, o valor da entrega de dados de áudio ou vídeo em pacotes muito pequenos diminuiu. Conteúdos multimídia podem agora ser entregues de forma muito mais eficiente em segmentos maiores (em contraste com os pequenos pacotes) usando HTTP. HTTP streaming tem vários benefícios. Primeiro, a infraestrutura de Internet evoluiu para apoiar eficazmente o HTTP. Por exemplo, CDN fornece localizado agrupamento de dados – “Cache” – que reduzem o tráfego de longa distância. Além disso, o HTTP é um protocolo com "firewall amigável", já que quase todos os firewalls são configurados para suportar suas conexões de saída. HTTP tecnologia de servidor é um produto de consumo e, portanto suporta o “streaming” em HTTP para milhares de usuários com um custo mais efetivo. Em segundo lugar, com o fluxo de HTTP o cliente gerencia o “streaming”, sem a necessidade de manter um estado de sessão no servidor. Portanto, o provisionamento de um grande número de clientes de streaming não impõe qualquer custo adicional sobre os recursos do servidor além do uso da web padrão de HTTP e pode ser gerenciado por uma CDN utilizando técnicas de otimização de HTTP padrão.

Pelas razões acima, HTTP streaming tornou-se uma abordagem popular em implementações comerciais comparativamente ao protocolo RTP/UDP ou RTSP. Por exemplo, plataformas de “streaming”, como o HTTP “Live Streaming” da Apple (HLS) [3], “Smooth Streaming” da Microsoft [4], e “HTTP Dynamic Sreaming” da Adobe [5] todos usam HTTP “streaming” como o seu método subjacente de entrega. No entanto, cada implementação usa diferente extensão de arquivo de texto (inventario de carga) e formatos de segmento, portanto, para receber o conteúdo de cada servidor, um dispositivo tem de suportar seu correspondente protocolo proprietário do cliente. Um padrão para o “streaming” HTTP de conteúdo para multimídia permitiria um padrão baseado no cliente para fazer “streaming” de conteúdo de qualquer servidor baseado em padrões, o que permite a interoperabilidade entre servidores e clientes de diferentes fornecedores.

clip_image026[9]

A entrega de conteúdo de vídeo dentro da Web tornou-se hoje onipresente, o qual se baseia principalmente em “Hypertext Transfer Protocol” (HTTP) e, consequentemente o protocolo de controle de transmissão (TCP). Portais de vídeo online como o YouTube Netflix ou Hulu contam com milhares de usuários assistindo seu conteúdo a cada dia. A maioria destas plataformas adota soluções proprietárias baseadas em download progressivo via HTTP. Recentemente, o HTTP adaptativo streaming foi introduzido, incluindo implementações baseadas nas três principais soluções proprietárias de “streaming”. Neste contexto, a norma ISO/IEC desenvolveu o MPEG DASH permitindo dinâmicas de transmissão adaptáveis sobre HTTP (MPEG DASH) [4].

Todos estes sistemas podem alavancar as mesmas vantagens sobre “streaming” de vídeo tradicional, ou seja, usando RTP/UDP ou RTSP. Em primeiro lugar, HTTP adaptativo “streaming” é capaz de adaptar o fluxo de vídeo para as condições de largura de banda variável, o que é especialmente importante quando se trata de cenários móveis usando “smartphones” ou “tablets” em redes de celulares 3G/4G. Usando esta adaptação é possível entregar o vídeo continuamente, sem atraso ou longos períodos de “buffer” para o usuário. Além disso, é possível alavancar redes de conteúdo existentes para a entrega (CDN) e infraestruturas de “Cache” e de “Proxy”, que são otimizados para a entrega pelo HTTP e no qual os custos são significativamente menores do que as infraestruturas dedicadas de “streaming”.

clip_image028[9]

Todas as soluções da indústria, bem como o MPEG DASH, seguem a mesma abordagem de blocos, “streaming” baseado em HTTP. A ideia básica é que o conteúdo de mídia será codificado em diferentes versões, que diferem em bitrates, resoluções, etc., e, então será cortado em segmentos que podem ser acessados individualmente pelo cliente através de solicitações HTTP GET. No MPEG DASH uma versão do conteúdo de mídia com uma característica específica (por exemplo, bitrate, resolução) é referenciado como uma representação. Uma representação pode ser constituída por vários segmentos de um determinado comprimento, que correspondem ao conteúdo de mídia cortado em pequenos pedaços. Assim, o cliente tem a possibilidade de alternar entre essas representações nos segmentos limites para ajustar o bitrate de mídia para a sua atual capacidade de taxa de transferência da sua conexão pela Internet. Estes segmentos são transferidos “Over The Top” (OTT) da infraestrutura atual da Internet, seguindo um modelo de “puxar” orientado para o cliente. Além disso, todos os sistemas adaptativos de HTTP “streaming” mantém como já foi comentado algum tipo de arquivo que usa diferentes extensões de arquivos de texto (inventario de carga), como a descrição de apresentação de mídia (MPD) do MPEG DASH, a qual é baixado pelo cliente no início da sessão de “streaming” para obter as informações sobre a taxa de bits de mídia, resolução, etc., de cada representação, bem como as URLs dos segmentos [5] [6].

clip_image030[9]

O próximo padrão HTML 5 [7] oferecera novas formas de integrar áudio e vídeo em sites da Web, aproveitando incorporadas capacidades dos browsers. Por exemplo, o YouTube [8] já está experimentando o elemento de vídeo em grande escala, alavancando seu formato WebM recipiente [9], em combinação com o vídeo VP8 e “codecs” de áudio “Vorbis”. Com a “Fonte de Mídia” API [1] é agora também possível usar o adaptativo “streaming” HTTP em combinação com o elemento de vídeo possibilitando a implementação do MPEG DASH com “Java Script” com o uso do elemento de vídeo HTML 5.

3 OBJETIVOS

· Avaliar a tecnologia do adaptativo “streaming” vinculado ao MPEG DASH com o objetivo de mostrar à adaptação dinâmica a taxa de bits do “streaming” nas diferentes condições da rede.

· Comparar o “streaming” de vídeo tradicional, que é baseado na utilização do protocolo de “streaming” de transporte em tempo real (RTP/ UDP ou RTSP) com o dinâmico adaptativo “streaming” sobre HTTP ( MPEG DASH).

clip_image032[9]

clip_image034[9]

4 MÉTODOLOGIA DA PESQUISA

Para execução da avaliação será efetuada uma pesquisa bibliográfica através de estudo de casos e de um levantamento bibliográfico para a fundamentação teórica do projeto que será realizado utilizando artigos publicados na Internet e documentos da EBU, SMPTE e IEEE pertinentes ao tema MPEG DASH, OTT e HbbTV.

REFERÊNCIAS

[1] Miller, P., SVP/GM Digital Media at NBC Sports, keynote, http://blogs.msdn.com/b/tims/archive/2009/03/18/mix09-day-1-keynote-pt-2-scott-guthrie-on-advancing-user-experiences.aspx, March 2009.

[2] Cisco Networks, “Cisco’s Visual Networking Index Global IP Traffic Forecast 2010-2015,” http://www.cisco.com/en/US/netsol/ns827/networking_solutions_sub_solution.html#~ forecast, June 2011.

[3] Pantos, R. and May, E. W., “HTTP Live Streaming”, Informational Internet Draft, http://tools.ietf.org/html/draft-pantos-http-live-streaming-06, March 2011.

[4] Microsoft, “IIS Smooth Streaming Transport Protocol,” http://www.iis.net/community/files/media/smoothspecs/%5BMS-SMTH%5D.pdf, September 2009.

[5] Adobe, “Adobe HTTP Dynamic Streaming,” http://www.adobe.com/products/httpdynamicstreaming/.

[6] 3GPP TS 26.247: "Transparent end-to-end Packet-switched Streaming Service (PSS); Progressive Download and Dynamic Adaptive Streaming over HTTP".

[7] “MPEG systems technologies — Part 6: Dynamic adaptive streaming over HTTP (DASH), ISO/IEC FCD 23001-6,” http://mpeg.chiariglione.org/working_documents/mpeg-b/dash/dash-dis.zip, January 2011.

[8] : ISO/IEC 23001-6 Information technology – MPEG systems technologies – Part 6 Dynamic adaptive streaming over HTPP (DASH)

[9] Adobe HTTP Dynamic Streaming, http://www.adobe.com/products/httpdynamicstreaming/ (last access: Mar., 2012).

[10] ISO/IEC DIS 23009-1.2, ―Information technology — Dynamic adaptive streaming over HTTP (DASH) — Part 1: Media presentation description and segment formats‖

[11] T. Stockhammer, ―Dynamic Adaptive Streaming over HTTP – Standards and Design Principles‖, ACM Multimedia Systems, San Jose, California, USA, Feb. 2011, pp. 133-143.

[12] I. Sodagar, ―The MPEG-DASH Standard for Multimedia Streaming Over the Internet‖, IEEE Multimedia, vol. 18, no. 4, Oct.-Dec. 2011, pp. 62-67

[13] I. Hickson, HTML5 – W3C Working Draft 25 May 2011, http://www.w3.org/TR/html5/ (last access: Mar. 2012)

[14] YouTube HTML5 Video Player, http://www.youtube.com/html5 (last access: Mar. 2012).

[15] WebM Project, http://www.webmproject.org

por Paulo Silveira

Deixe uma resposta

Preencha os seus dados abaixo ou clique em um ícone para log in:

Logotipo do WordPress.com

Você está comentando utilizando sua conta WordPress.com. Sair / Alterar )

Imagem do Twitter

Você está comentando utilizando sua conta Twitter. Sair / Alterar )

Foto do Facebook

Você está comentando utilizando sua conta Facebook. Sair / Alterar )

Foto do Google+

Você está comentando utilizando sua conta Google+. Sair / Alterar )

Conectando a %s