420 likes | 602 Views
Transporte MPEG-2. Paulo Martinelli Hemmlepp pmh@cin.ufpe.br. Objetivos da aula. Entender conceitos básicos de transmissão de áudio, vídeo e dados em TV Digital. Roteiro. Conceitos Básico Multiplexação MPEG-2 Tabelas MPEG-2 Tabelas DVB. Especificações MPEG-2.
E N D
Transporte MPEG-2 Paulo Martinelli Hemmlepp pmh@cin.ufpe.br
Objetivos da aula • Entender conceitos básicos de transmissão de áudio, vídeo e dados em TV Digital.
Roteiro • Conceitos Básico • Multiplexação MPEG-2 • Tabelas MPEG-2 • Tabelas DVB
Especificações MPEG-2 • Conjunto de 10 especificações • ISO/IEC: • 13818-1 Systems. • 13818-2 Video Coding. • 13818-3 Audio Coding. • 13818-6 Data Broadcast and DSMCC. • 13818-7 Advanced Audio Coding(AAC). A maior parte dessa aula vem desta especificação
Elementary Stream • Elementary Stream (ES) é um conjunto de bytes(fluxo de dados) de um tipo de dado específico. • Áudio. • Vídeo. • Dados.
ES ES ES ES ES ES ES
Packetized Elementary Stream • Os fluxos de dados (ES) são divididos em pacotes. • Esse pacotes são chamados de Packetized Elementary Stream (PES). • A cada X número de bytes é adicionado um cabeçalho de 6 bytes. • Isso permite: • Detecção de erros • Multiplexação dos dados
Agora que temos vários pacotes de ES diferentes, eles tem de ser multiplexados para serem transmitidos.
Multiplexação MPEG-2 • Existem dois processos de multiplexação: • Program Stream • Transport Stream
Program Stream • Apenas um programa é multiplexado. • Conjunto de ES que tem um forte acoplamento temporal. • O tamanho dos pacotes PES são variáveis e podem sem muito grandes. • Mais difícil de decodificar devido a variação de tamanho dos pacotes. • Ideal para ser usado num ambiente robusto.
Onde Multiplexação Program Stream é Usada? • Ideal para ser usado num ambiente robusto.
Program Stream • O tamanho dos pacotes PES são variáveis e podem sem muito grandes. Por quê? • Em um filme, as partes lentas tem menos pacotes de vídeo do que as partes com muita ação. • Então a velocidade de transmissão varia de acordo com o tipo de vídeo. • Para o DVD é fácil alterar a velocidade de leitura do disco.
Transport Stream • Um ou mais programas podem ser multiplexados juntos. • O tamanho do pacote é constante. Ideal para ambientes não robustos: • Fácil de detectar o início e fim do pacote. • Mais fácil de detectar perda de dados. • Mais difícil de desmultiplexar devido os vários programas.
Transport Stream • Pacotes do tamanho de 188 bytes. • 4 bytes de cabeçalho • Todo pacote começa com 0x47 • Fácil de detectar o início do pacote. • Cada pacote que carrega um determinado ES tem o mesmo PID. • Cada pacote tem um contador para que se detecte perda de pacotes.
Program Specific Information (PSI) • Como o Transport Stream possuí vários programas e serviços, sua decodificação é mais complicada. • É necessário Metadados para dizer ao decodificador o que decodificar. • Para isso existe as Tabelas de Program Specific Information (PSI).
Program Specific Information (PSI) • Na verdade essas tabelas são pacotes padronizados. • Possuem PID específicos. • São transmitidos com uma certa regularidade.
Tabelas Program Specific Information • PAT • CAT • PMT • NIT
Program Specific Information • Exemplos de PID específicos: • PAT (Program Association Table) • ID: 0 • CAT (Conditional Access Table) • ID: 1 • Pacote nulo • ID: 8191
PAT (Program Association Table) • Tabela que mostra todos os programas que o Transport Stream está carregando. • Lista todas os IDs dos PMT (Program Map Table).
PMT (Program Map Table) • Lista todos os Elementary Stream que formam um programa.
CAT (Conditional Access Table) • Se o Transport Stream for criptografado, fornece informações de como o decodificador pode descriptografar.
NIT(Network Information Table) • Informações de modulação. • Freqüência. • Nome da operadora de rede.
Tabelas Service Information(SI) • Além das tabelas definidas no padrão MPEG-2, cada padrão de TV Digital define novas tabelas. • Entre elas temos as Tabelas de Service Information definidas no padrão de TV Digital DVB.
Padrão DVB • Tabelas: • SDT - Service Description • EIT - Event Information • TDT - Time and Date • AIT (Application Information Table) • BAT - Bouquet Association • RST - Running Status • ST - Stuffing Tables
Service Description Table • Lista o nome e outras informações de todos os serviços que estão no Transport Stream.
Event Information Table • Possui informações sobre o evento atual e dos eventos passados e futuros. • Horário de início • Duração • Descrição • Útil para fazer um EPG (Eletronic Service Guide).
Aplication Information Table • Informações sobre uma aplicação (Java) associada a um programa. • Qual classe é a principal. • Nome da aplicação.
Time and Date Table • Manda a hora e a data. • Quase todo STB usa essa tabela para sincronizar seu relógio. O usuário não tem nem como ajustar o relógio do mesmo.
Referências • http://www.interactivetvweb.org/ • http://dvbsnoop.sourceforge.net/ • http://www.videolan.org/vlc/ • http://www.coolstf.com/tsreader/ • http://erg.abdn.ac.uk/research/future-net/digital-video/mpeg2-trans.html • Especificações MPEG-2 e DVB-MHP