Panoramica di MPEG-2 Sistemi di

  • 05/31/2018
  • 2 minuti a leggere
    • s
    • v
    • m

Questa sezione offre una generale, non panoramica tecnica di MPEG-2 Sistemi di livello. MPEG-2 Systems è lo standard che definisce come i flussi audio e video sono multiplexati in MPEG-2.

Flussi elementari

Il multiplexing MPEG-2 inizia con uno o più flussi di byte, detti flussi elementari, che contengono video, audio o altri dati. Ad esempio, un video ES contiene fotogrammi video compressi, oltre a intestazioni di sequenza, intestazioni GOP (Group-of-Picture) e qualsiasi altra cosa necessaria al decodificatore per decodificare il flusso. Il livello Sistemi non definisce il contenuto del flusso di byte ES.

Un flusso elementare viene suddiviso in pacchetti, formando un flusso elementare packetizzato (PES). I pacchetti PES hanno lunghezza variabile. Il contenuto del pacchetto è chiamato payload. Ogni pacchetto PES include anche un’intestazione. Il multiplexer assegna un ID di flusso di 1 byte a ogni PES; i singoli pacchetti PES sono identificati dall’ID di flusso nell’intestazione del pacchetto. Per i flussi audio, l’ID del flusso ha la forma 110xxxxx. Per il video, l’ID del flusso ha la forma 1110yyyy.

Lo standard MPEG-2 definisce due modi per fornire flussi elementari packetizzati: flussi di programma e flussi di trasporto.

I flussi di programma

I flussi di programma sono progettati per ambienti relativamente privi di errori, come l’archiviazione di file locale. In un flusso di programma, i pacchetti PES sono multiplexati e organizzati in unità chiamate pacchetti. Tutti i flussi PES in un flusso di programma sono sincronizzati con lo stesso orologio.

Transport Stream

Transport stream (TS) sono progettati per ambienti inaffidabili o soggetti a errori, come le trasmissioni di rete. Inoltre, possono contenere più programmi sincronizzati con orologi diversi. Un flusso di trasporto aggiunge un secondo livello di packetizzazione: i flussi PES sono confezionati all’interno di pacchetti di flusso di trasporto, che hanno una dimensione fissa di 188 byte per pacchetto. I pacchetti TS possono anche contenere flussi di informazioni sul programma, che sono descritti nella sezione seguente.

Ogni pacchetto TS ha un’intestazione di 4 byte, oltre a un campo di adattamento opzionale che contiene informazioni aggiuntive sull’intestazione. Il multiplexer assegna un ID programma (PID) a ciascun flusso PES o flusso di informazioni sul programma. I PID vengono utilizzati per identificare i pacchetti TS, in modo simile al modo in cui gli stream ID identificano i pacchetti PES. Se un flusso di trasporto contiene più programmi, gli ID del flusso potrebbero non essere univoci, ma le assegnazioni PID sono univoche all’interno del flusso di trasporto.)

Informazioni specifiche del programma

Poiché un flusso di trasporto può trasportare più programmi, deve esserci un modo per associare i vari pacchetti PES ai programmi a cui appartengono. Questo viene realizzato utilizzando tabelle che identificano i flussi di programma. Collettivamente, questi dati sono chiamati Informazioni specifiche del programma (PSI). I dati PSI vengono trasportati in pacchetti TS, proprio come i dati PES. Esistono vari tipi di dati PSI, tra cui:

  • Tabella Associazione programma (PAT). Il PAT viene sempre assegnato al PID 0x000. Ogni voce nel PAT è un PID che identifica i pacchetti PMT per quel programma (vedi voce successiva).

  • Programma Mappa Tabella (PMT). Ogni PMT definisce un programma. Il PMT contiene un elenco di flussi; ogni voce della tabella fornisce il PID per quel flusso, oltre a un codice che identifica il tipo di flusso. ISO / IEC 13818-1 definisce alcuni tipi di flusso standard; un elenco abbreviato è mostrato nella seguente tabella.

    stream_type Descrizione
    0x01 MPEG-1 video
    0x02 MPEG-2 video
    0x03 MPEG-1 audio
    0x04 MPEG-2 audio
    0x80 – 0xFF Utente privato

    Altri standard sono basati su MPEG-2, come ATSC, può definire ulteriori tipi di stream nel “utente privato” gamma. Ad esempio, ATSC definisce 0x81 come audio Dolby AC-3.

  • Tabelle di accesso condizionale (CAT)

  • Tabelle di identificazione della rete (NIT)

Supporto MPEG – 2 in DirectShow