Modul ador ISDB T B Layer A
BICM FEC
6.5 Protocolos de Transporte
Dois m´etodos de servi¸co de entrega de broadcast s˜ao suportados no ATSC 3.0:
O m´etodo representado ao lado esquerdo da Figura 6.17, baseado no MMT (MPEG Media Transport ). Usa o protocolo MMTP (Multi Media Transport Protocol ) para entre- gar MPU (Media Processing Unit ).
rum), que por sua vez ´e baseado no MPEG-DASH (Dynamic Adaptive Streaming over HTTP ). Ele usa o protocolo ROUTE (Real-Time Object Delivery over Unidirectional Transport ) para entregar os segmentos DASH. Conte´udos n˜ao destinados a uso em tempo real, como por exemplo, aplicativos baixados e informa¸c˜oes de ESG (Electronic Service Guide) ou EA (Emergency Alert ) tamb´em s˜ao entregues pelo ROUTE. A sinaliza¸c˜ao pode ser entregue atrav´es de MMTP e/ou ROUTE, enquanto a informa¸c˜ao de sinaliza¸c˜ao de bootstrap ´e fornecida por meio do SLT (Service List Table) [117].
Figura 6.17: Pilha de Protocolos do Sistema ATSC 3.0 [117].
Para oferecer suporte a servi¸cos h´ıbridos, no qual um ou mais elementos do pro- grama s˜ao fornecidos por meio da banda larga, o perfil DASH-IF sobre HTTP (Hypertext Transfer Protocol )/TCP (Transmission Control Protocol )/IP ´e usado na parte relativa `
a banda larga. Os arquivos de m´ıdia no perfil DASH-IF, baseados no ISO BMFF (ISO Base Media File Format ), s˜ao usados como formato de entrega, encapsulamento de m´ıdia e sincroniza¸c˜ao, tanto para transmiss˜ao em banda larga quanto broadcast.
6.5.1
MMT
Vis˜ao Geral
O MPEG-2 TS, apesar de fornecer mecanismos eficientes para multiplexar m´ultiplos fluxos de dados audiovisuais em um fluxo de transporte, tem enfrentado v´arios desafios t´ecnicos devido `as mudan¸cas emergentes em ambientes de servi¸cos multim´ıdia.
Para resolver essas deficiˆencias t´ecnicas dos padr˜oes existentes e suportar as ne- cessidades mais amplas de transporte multim´ıdia em ambientes de rede heterogˆeneos, incluindo o sistema de transmiss˜ao da pr´oxima gera¸c˜ao, foi desenvolvido o MMT, como
- Part 2: High Efficiency Video Coding
AL-FEC: application layer forward error correction
- Part 3: Multichannel audio
HEVC 3D Audio
Figura 6.18: Vis˜ao Geral do MPEG-H [118].
A pilha de protocolos do MMT, especificada em MPEG-H Parte 1, ´e mostrada na Figura 6.19. As caixas brancas indicam as ´areas no escopo das especifica¸c˜oes do MMT. O MMT adota tecnologias de trˆes principais ´areas funcionais:
- Encapsulamento: sinais de ´audio e v´ıdeo codificados s˜ao encapsulados em MFUs (Media Fragment Unit s)/MPUs.
- Entrega: uma carga ´util MMT ´e constru´ıda agregando MPUs ou fragmentando um MFU. O tamanho de uma carga ´util MMT precisa estar adequado para ser feito a entrega. Um pacote MMT ´e executado em protocolos baseados em IP, como o UDP (User Datagram Protocol ) ou o TCP. ´E um pacote de tamanho vari´avel apropriado para entrega em pacotes IP. Cada pacote cont´em uma carga ´util MMT e pacotes MMT contendo diferentes tipos de dados e mensagens de sinaliza¸c˜ao podem ser transferidos em um fluxo de dados IP ´unico [118].
- Sinaliza¸c˜ao: mensagens de sinaliza¸c˜ao MMT fornecem informa¸c˜oes para consumo de m´ıdia e entrega ao cliente MMT.
File Legacy media Encapsulation Delivery Signaling MMT signaling Package Storage format Media fragment unit (MFU)
Media processing unit (MPU)
MMT payload
MMT packet RTP, HTTP
UDP, TCP IP packet Delivery format : Outside the scope of MMT HTTP: Hypertext Transfer Protocol RTP: Real-time Transport Protocol UDP: User Datagram Protocol
Media CODEC
Figura 6.19: Pilha de protocolos do MMT [118].
Funcionamento do MMT
Um terminal cliente identifica as MPUs que constituem o conte´udo e seu tempo de apre- senta¸c˜ao processando a mensagem de sinaliza¸c˜ao. O tempo de apresenta¸c˜ao ´e descrito com base no UTC (Coordinated Universal Time). Portanto, o terminal pode consumir MPUs de maneira sincronizada, mesmo se forem entregues em canais diferentes de di- ferentes remetentes. O MMT define os c´odigos - AL-FEC (Application Layer Forward Error Corretion) - para recuperar pacotes perdidos, como mostra a Figura 6.20. MPEG- H Parte 1 especifica um framework AL-FEC e o MPEG-H Parte 10 especifica algoritmos AL-FEC. Al´em disso, o MPEG-H parte 11 define CI (Composition Information), que identifica a cena a ser exibida usando tanto as rela¸c˜oes espaciais quanto as temporais entre os conte´udos. Essas fun¸c˜oes mencionadas acima s˜ao os novos recursos do MMT e n˜ao s˜ao compartilhadas pelo MPEG-2 TS.
Figura 6.20: Transmiss˜ao de v´ıdeo confi´avel [118].
6.5.2
MPEG-DASH
Vis˜ao Geral
O MPEG-DASH nasceu como uma tentativa de se resolver as complexidades da entrega de m´ıdia para v´arios dispositivos com um padr˜ao comum unificado.
Ele ´e utilizado com muita frequˆencia nos chamados servi¸cos OTT (Over the Top), como Netflix e Amazon Video, implementado streaming com taxa de bits adapt´avel. Esse tipo de transferˆencia ´e uma combina¸c˜ao do software do servidor e do cliente, que detecta a capacidade de largura de banda do cliente e ajusta a qualidade do fluxo de v´ıdeo entre v´arias taxas de bits e/ou resolu¸c˜oes.
Funcionamento
A Figura 6.21 ilustra um cen´ario de streaming simples entre um servidor HTTP e um cliente DASH. Nesta figura, o conte´udo multim´ıdia ´e capturado e armazenado em um servidor HTTP, que ´e entregue usando HTTP. O conte´udo existe no servidor em duas partes: MPD (Media Presentation Description), que descreve os conte´udo dispon´ıveis, suas v´arias alternativas, seus endere¸cos de URL e outras caracter´ısticas; e segmentos, que contˆem os fluxos de bits multim´ıdia reais na forma de blocos, em arquivos ´unicos ou m´ultiplos [119].
Figura 6.21: Diagrama do MPEG-DASH [119].
Para reproduzir o conte´udo, o cliente DASH primeiro obt´em o MPD. Analisando o MPD, o cliente DASH aprende sobre o tempo do programa, disponibilidade de conte´udo de m´ıdia, tipos de m´ıdia, resolu¸c˜oes, larguras de banda m´ınimas e m´aximas e a existˆencia de recursos multim´ıdia codificados alternativos. Usando essas informa¸c˜oes, o cliente DASH seleciona a alternativa codificada apropriada e inicia o streaming do conte´udo, buscando os segmentos usando solicita¸c˜oes HTTP.