MPEG-2

Innen telekommunikasjon er MPEG-2 en standard introdusert i 1994 av MPEG ( Moving Pictures Experts Group ). MPEG-2 er et digitalt kodesystem som definerer kildekoding eller lyd , videokomprimering og multipleksing og transportformat for kringkastede multimedietjenester i TV -kvalitet eller høyere. MPEG-2 er et av de mest populære formatene for video fordi det er det som brukes i DVD -video.

Beskrivelse

MPEG-2 har vært ment for TV- kringkasting siden introduksjonen i 1994 . Effektiv koding for interlaced video og skalerbarhet var funksjonene som gjorde at TV-signaler ble effektivt digitalisert . Takket være MPEG-2 oppnås TV-bilder av god kvalitet med bithastigheter mellom 4 og 9 Mbit /s

MPEG-2 består av "profiler" og "lag". Profilene definerer komprimeringsmodusen som brukes og etablerer faktisk avveiningen mellom komprimeringshastigheten og kostnaden for dekoderen. Nivåene definerer bildeoppløsningen og den maksimale bithastigheten som skal knyttes til hver profil. Det er totalt 4 nivåer og 5 profiler hvis egenskaper er beskrevet nedenfor. Kombinasjonen som for tiden brukes av digitale overføringer for direkte mottak bruker den såkalte "hovedprofil @ hovednivå" MP @ ML.

MPEG-2 Video Standard

MPEG-2-standarden bruker komprimeringsteknikker basert på å redusere den romlige og tidsmessige redundansen til videosekvensen. Romlig redundans reduseres gjennom teknikker som den diskrete cosinustransformasjonen ( DCT ), den tidsmessige redundansen reduseres ved hjelp av motorisk kompensasjon : denne metodikken kalles en hybridtransformasjonsteknikk.

Standarden definerer tre typer rammeverk:

Kodingen fungerer ved å dele bildet inn i 16x16 blokker, kalt makroblokker . Alle makroblokkene til en ramme I er kodet uten prediksjon. Hver makroblokk i en P-ramme kan predikeres fra en tidligere I- eller P-ramme (makroblokk P), eller den kan kodes uten prediksjon (type I makroblokk). Hver makroblokk i en ramme B kan predikeres toveis i forhold til forrige ramme I eller P og den påfølgende ramme I eller P (makroblokk B), eller predikeres med hensyn til forrige ramme I eller P (makroblokk P), eller kodes uten prediksjon (makroblokk I ).

For makroblokker I kodes makroblokken ved å bruke DCT og kvantisere til 8x8 komponentblokkene. For P makroblokker utføres motorkompensasjon av 16x16 makroblokken; forskjellen mellom prediksjonen og gjeldende blokk, kalt motorkompensasjonsrest, er kodet av DCT og kvantisert på 8x8 pikselblokker. For makroblokker B utføres motorkompensasjonen til makroblokken 16x16 med hensyn til den forrige referanseramme og til den følgende referanseramme; prediksjonen gjøres ved å beregne gjennomsnittet av de to 16x16 blokkene som er oppnådd på denne måten; forskjellen mellom gjeldende makroblokk og prediksjon, nevnte motorkompensasjonsrest er kodet av DCT og kvantisert på 8x8 pikselblokker.

Kodemodusen for hver makroblokk av P- eller B-rammene velges for å minimere antallet biter som kreves for å beskrive den. Siden bevegelsesvektorene til tilstøtende makroblokker er korrelert, er de differensielt kodet med hensyn til bevegelsesvektoren til den forrige tilstøtende makroblokken. Kvantisering innebærer et irreversibelt tap av informasjon og tilpasses egenskapene til det menneskelige visuelle apparatet, gjennom valg av passende kvantiseringsmatriser. Kvantiseringsmatriser kan variere fra ett bilde til et annet og overføres i begynnelsen av hvert bilde; videre kan kvantiseringsmatrisen skaleres fra makroblokk til makroblokk ved hjelp av en skaleringsfaktor ( quantizer_scale ), for å tilpasse presisjonen til bildekodingen til innholdet. Quantizer_scale kan være større enn, mindre enn eller lik 1, og kodet med en 5-bits verdi, med lineær eller ikke-lineær skalering.

Rammene i sekvensen er gruppert i en "gruppe av bilder" eller Group of Pictures (GOP), hvor den første rammen er av type I. Denne organiseringen av de kodede dataene tillater synkronisering av dekoderen med en forsinkelse som er høyst lik. til varigheten av GOP .

Flytkontroll i MPEG-2-koding

Kompresjonseffektiviteten varierer i henhold til de lokale egenskapene til videosignalet, og følgelig er bitstrømmen ved utgangen av videokoderen med variabel bithastighet. Kanalen har i stedet typisk konstant kapasitet, så det brukes en buffer mellom kanalen og koderen. Bufferfyllingstilstanden brukes til å kontrollere kodingsprosessen (kvantisering, innsetting av de nevnte rammer), for å unngå bufferoverløp eller bufferunderflyt-fenomener.

I et MPEG-2-system har koderen og dekoderen en symmetrisk atferdsbuffer. Koderbufferen blir fylt når bilder kodes, og tømmes med konstant hastighet under overføring. Dekoderbufferen fylles med konstant hastighet når data mottas og burst tømmes under avspilling. MPEG-2-standarden definerer en ideell dekodermodell ( Video Buffer Verifier , VBV), som skal brukes til å begrense den øyeblikkelige bithastigheten til koderen, slik at den gjennomsnittlige bithastigheten er slik at den unngår overløp eller underflyt av dekoderbufferen. VBV er identifisert som parametere for bithastigheten (målt i enheter på 400 bit/s), bildehastighet, vbv_buffer_size (målt i enheter på 2048 byte), vbv_delay (som definerer tiden mellom mottak av den første databiten til det første bildet i bufferen og dekodingen av selve dataene, målt i forhold til en klokke på 90 kHz).

MPEG-2 nivåer og profiler

Vi beskriver kort egenskapene til MPEG-2-nivåene og -profilene som representerer styrken til systemet når det gjelder fleksibilitet og tilpasningsevne til ulike applikasjoner. Det er overraskende hvordan MPEG-2 klarer å variere fra den laveste SIF-bildeoppløsningen til HDTV med høy oppløsning ganske enkelt ved å variere assosiasjonene mellom nivåer og profiler. De forventede nivåene er:

Beskrivelsen av profilene er i stedet litt mindre enkel enn nivåene, da den innebærer kunnskap om de grunnleggende metodikkene som MPEG-systemet opererer med; dette er en oppsummering som viser til effektene av å bruke de ulike profilene.

Profilene opprettholder en viss kompatibilitet oppover i den forstand at de høyere profilene i mottaksfasen kan dekode de lavere profilene.