Fundamentos y Mediciones en MPEG2

88
1 Fundamentos y Mediciones en MPEG2 Oscar G. Silva Ingeniero de Aplicaciones de Video Tektronix México Tel. +52 (55) 5666.63.33 x 103 Fax +52 (55) 5666.63.36 Cel. +52 (55) 5435.38.15

Transcript of Fundamentos y Mediciones en MPEG2

Page 1: Fundamentos y Mediciones en MPEG2

1

Fundamentos y Mediciones en MPEG2

Oscar G. SilvaIngeniero de Aplicaciones de Video

Tektronix MéxicoTel. +52 (55) 5666.63.33 x 103

Fax +52 (55) 5666.63.36Cel. +52 (55) 5435.38.15

Page 2: Fundamentos y Mediciones en MPEG2

2

Temario

4Porqué comprimir el Video?4Arquitectura del sistema DTV4Compresión MPEG24Muestreo 4:2:2 y 4:2:04Compresión Intra-Frame4Compresión Inter-Frame4Discrete Cosine Transform (DCT)4Limites & Cuantificación4Codificación

4Sistema MPEG (de Access Units a Transport Stream)4TR101 290

Page 3: Fundamentos y Mediciones en MPEG2

3

Compresión

+ =6 MHz

Video Analógico

Audio Analógico

PERO…

Page 4: Fundamentos y Mediciones en MPEG2

4

Compresión

SDI a 270 Mbps

83.5 MHz

6 MHz

MPEG19.34 Mbps

Page 5: Fundamentos y Mediciones en MPEG2

5

Porqué comprimir el video?

4La transmisión del video sin compresión SDI a 270 Mbits/s no es algo viable fuera de los estudios0Más ancho de banda cuesta mas dinero

4 Demasiada memoria en equipo de almacenamientoes requerida para el video SDI sin compresión078 Gbytes/hora

Page 6: Fundamentos y Mediciones en MPEG2

6

El Estándar ATSC

4 19.39 Mb/s en un canal de 6 MHz4 2 formatos de HD: 1920x1080I y 1280x720 P4 Varios formatos de SDTV, incluyendo 6014 Canal de Audio en Dolby AC-3 5.14 Los receptores deben funcionar con todos los formatos4 Estándares para Datos Auxiliares no definidos totalmente

4 see www.atsc.org

Page 7: Fundamentos y Mediciones en MPEG2

7

Calidad de Servicio (VQoS)

44 Los Los proveedoresproveedores del del servicioservicio de Video de Video ComprimidoComprimidoquierenquieren00TransmisiónTransmisión queque sea sea redituableredituable (no (no tiempostiempos muertosmuertos))00UsoUso efectivoefectivo de de AnchoAncho de Banda de Banda parapara entregarentregar másmás

serviciosservicios con la con la calidadcalidad esperadaesperada o o aúnaún mejormejor calidadcalidad

QualityQuality ServicesServices

Page 8: Fundamentos y Mediciones en MPEG2

8

Arquitectura del sistema de DTV

Production and Display

Transmission

Multiple Picture Formatsand Frame Rates

Video Compression

Data Transport

Variable Length Codes

Video Packet Video PacketAudio Packet Data Packet

Data Headers Motion vectors DCT CoefficientsMPEG-2

Packets withheader/descriptors

19.39 Mbs @ 6MHz8VSB6 MHz

Page 9: Fundamentos y Mediciones en MPEG2

9

Factores que afectan la Calidad del Video

4Calidad del Video Fuente0Amplitud, nivel de dc, ancho de banda, ringing, jitter0Ruido, Artifacts de decodificación de

composite/component0Prefiltraje para eliminar los problemas anteriores

4Naturaleza del video fuente0Complejidad espacial y temporal de la imágen

4Parámetros de Codificación Utilizados0Profile/nivel, campo/cuadro, bit rate, GOP

4Algoritmo de Codificación0Velocidad requerida, hardware vs. software0Diseño del Algoritmo

Page 10: Fundamentos y Mediciones en MPEG2

10

CompresiónCompresión MPEGMPEG

Page 11: Fundamentos y Mediciones en MPEG2

11

Compresión MPEG2

• 1) 10 Bit a 8 Bit & 4:2:2 a 4:2:0• 2) Intra-Frame (Dentro del mismo cuadro)• 3) Inter-Frame (Cuadro a Cuadro)• 4) Discrete Cosine Transform (DCT)• 5) Limites & Cuantificación• 6) Codificación

4MPEG - Moving Picture Experts Group

4Proceso de 6 pasos

Page 12: Fundamentos y Mediciones en MPEG2

12

Muestreo 4:2:2 y 4:2:0

4:2:2 4:2:0

Page 13: Fundamentos y Mediciones en MPEG2

13

CompresionIntra-Frame

4El Video contiene redundancia significante4Intra-Frame analiza dentro de un mismo frame Areas planas de imágen, Sin cambios, e.g. Cielo azúl, Sólo necesitamos guardar un Valor de referencia y el resto De la imagen puede ser Derivada de la referencia.

Page 14: Fundamentos y Mediciones en MPEG2

14

CompresionIntra-Frame

11001010,10001011,10100100,01111010,10101010,00101010,10011010,00101000,1001010,10001011,10100100,01111010,10101010,00101010,10011010,00101000,11001010,10001011,10100100,01111010,10101010,00101010,10011010,00101000,1001010,10001011,10100100,01111010,10101010,00101010,10011010,00101000,1001010,10001011,10100100,01111010,10101010,00101010,10011010,00101000,11001010,10001011,10100100,01111010,10101010,00101010,10011010,00101000,1001010,10001011,10100100,01111010,10101010,00101010,10011010,00101000,1001010,10001011,10100100,01111010,10101010,00101010,10011010,00101000.

60 * 88 = 5280 bloques de 8 * 8 pixeles

704 pixeles

1er. bloque

2do. bloque

11001010,10001011.

Si 1er. Bloque es exactamente igual

483

l i n e a s

al 1er. Bloque, entonces:

Page 15: Fundamentos y Mediciones en MPEG2

15

CompresionIntra-Frame

704 pixeles

bloque n 11001010,10001011.

483

l i n e a s

Si el bloque “n” no es exactamenteigual al 1er. Bloque, entonces:

• Dependera del tamaño de la compresion y de la calidad requerida si este bloque se codifica individualmente o se toma como si fuera igual al 1er. bloque

Page 16: Fundamentos y Mediciones en MPEG2

16

Redundancias Temporales

4Redundancias Frame to Frame

4Nuevas localidades mismosdatos

4Nuevos datos descubiertos

Page 17: Fundamentos y Mediciones en MPEG2

17

Compresión Inter-Frame

4Analisis de cuadros con respecto al anterior4Solo se requiere almacenar las diferencias entre cuadros

Page 18: Fundamentos y Mediciones en MPEG2

18

Estimación de Movimiento

Frame N Frame N + 1

Macro Block 16x16 Pixels

Search Range

Motion Vector

Page 19: Fundamentos y Mediciones en MPEG2

19

Vectores de Movimiento

4Macrobloques0La figura muestra los

vectores de movimiento paralos macrobloques que se mueven sobre el background estático

Page 20: Fundamentos y Mediciones en MPEG2

20

Predicción de Movimiento

Cuadro I Cuadro B Cuadro PCuadro completamente

codificadoPelota codificada con un

vector de movimiento desdeel cuadro I

Solo se codifica el movimientode la pelota bi-direccionalmente desde I & P

Y revela la rodilla del cuadro P

Redundancia Temporal

Page 21: Fundamentos y Mediciones en MPEG2

21

Motion Vectors

MotionVectors

PredictedPresentFrame

Video in

Rate Control

Quantizing Data

Group of Pictures Control

MotionEstimation

MotionCompensation

Fixed Store

Subtract/Pass DCT Q RLC VLC MUX

Buffer

Q-1

DCT-1

SUM

Cuadro I

Page 22: Fundamentos y Mediciones en MPEG2

22

Motion Vectors

MotionVectors

PredictedPresentFrame

Video in

Rate Control

Quantizing Data

Group of Pictures Control

MotionEstimation

MotionCompensation

Fixed Store

Subtract/Pass DCT Q RLC VLC MUX

Buffer

Q-1

DCT-1

SUM

Cuadro P

Page 23: Fundamentos y Mediciones en MPEG2

23

I Frame

B FrameB FrameI Frame P Frame

P Frame

Forward MotionVector

Reverse MotionVector

Cuadro B

Page 24: Fundamentos y Mediciones en MPEG2

24

Encoder

1- I 2 - B 3 - B 4 - P

Reordenamiento MPEG

1- I 2 - B4 - P 3 - B

Page 25: Fundamentos y Mediciones en MPEG2

25

Rec 601Video Frames

ElementaryStream

Reordenamiento MPEG

0 3 1 2 6 4 5 0 3 1 2

I B B P B B P I B B P

I P B B P B B I B BP

Page 26: Fundamentos y Mediciones en MPEG2

26

Temporal Compression – I/P/B Frames4 I Frame – Intra (Anchor) Frame0No Motion Vectors

4 P Frame – Predicted Frame0Forward Motion Vectors

4 B Frame – Bi-direction Frame0Forward and Reverse Motion

Vectors

B Frame P Frame

Page 27: Fundamentos y Mediciones en MPEG2

27

Temporal Compression – I/P/B Frames4ES Analyzer Display0Click on “Show Frame Size” icon next to Zoom icon

Page 28: Fundamentos y Mediciones en MPEG2

28

15/3 Frame Sequence

IB

BP

BB

PB

BP

BB

PB

BI

Page 29: Fundamentos y Mediciones en MPEG2

29

El Elementary Stream de Video

Imágen (830Kbytes) Imágen (830Kbytes) Imágen (830Kbytes) Imágen (830Kbytes)

Stream de Video Digital sin compresión a 270 Mbps (ITU-R 601)

Cuadro “I”comprimido100 kbytes

Cuadro “B”comprimido+12 kbytes

Cuadro “B”comprimido12 kbytes

Cuadro “P”comprimido33 kbytes

(Tamaños aproximados – depende de la complejidad del cuadro )

MPEG-2 Compresión a 5Mbits/sPresentation Unit

AccessUnit

830KB/100KB=8.3 830KB/12KB=69.1 830KB/33KB=25.1

Page 30: Fundamentos y Mediciones en MPEG2

30

Función DCT

4Transformada del Coseno Discreto4Bloques de 8 X 8 pixeles que son convertidos del

dominio espacial al dominio de la frecuencia. 4Los bloques transformados son representados

numericamente como coeficientes DCT 8 X 84Los coeficientes DCT son más fáciles de reducir

en bit rate con estas técnicas4El proceso de transformación no reduce la

cantidad de información.

Page 31: Fundamentos y Mediciones en MPEG2

31

MPEG2 Compresión Espacial

4Cuál de los bloquesa la derecha, se parece más al patrónde 8x8 pixelesmostrado abajo?

Page 32: Fundamentos y Mediciones en MPEG2

32

MPEG2 Compresión Espacial

4En este caso, sólo el primer bloque y ningúnotro.

Page 33: Fundamentos y Mediciones en MPEG2

33

MPEG2 Compresión Espacial

64 Pixel Values(512 bits)

Now just 1 DCT Coefficient (DC_Avg)

(8 bits)

2A5 0 0 0 0 0 0 0

0 0 0 0 0 0 0 0

0 0 0 0 0 0 0 0

0 0 0 0 0 0 0 0

0 0 0 0 0 0 0 0

0 0 0 0 0 0 0 0

0 0 0 0 0 0 0 0

0 0 0 0 0 0 0 0

4Asignar valores al patrón de DCT igual al grupo de 8X8 pixeles.

4Todos los demás patrones serániguales a 0.

88

2A5 2A5 2A5 2A5 2A5 2A5 2A5 2A5

2A5 2A5 2A5 2A5 2A5 2A5 2A5 2A5

2A5 2A5 2A5 2A5 2A5 2A5 2A5 2A5

2A5 2A5 2A5 2A5 2A5 2A5 2A5 2A5

2A5 2A5 2A5 2A5 2A5 2A5 2A5 2A5

2A5 2A5 2A5 2A5 2A5 2A5 2A5 2A5

2A5 2A5 2A5 2A5 2A5 2A5 2A5 2A5

2A5 2A5 2A5 2A5 2A5 2A5 2A5 2A5

Page 34: Fundamentos y Mediciones en MPEG2

34

MPEG2 Compresión Espacial

64 Pixel Values(512 bits)

125 105 85 75 55 35 15 5

125 105 85 75 55 35 15 5

125 105 85 75 55 35 15 5

125 105 85 75 55 35 15 5

125 105 85 75 55 35 15 5

125 105 85 75 55 35 15 5

125 105 85 75 55 35 15 5

125 105 85 75 55 35 15 5

Now just 2 DCT coefficients.

(16 bits)

62.5 100 0 0 0 0 0 0

0 0 0 0 0 0 0 0

0 0 0 0 0 0 0 0

0 0 0 0 0 0 0 0

0 0 0 0 0 0 0 0

0 0 0 0 0 0 0 0

0 0 0 0 0 0 0 0

0 0 0 0 0 0 0 0

4El primer valor DCT igual al nivelpromedio de la luminancia del grupode 8X8 pixeles.

4Valor del Segundo patrón 100.4Todos los demás 0.

Page 35: Fundamentos y Mediciones en MPEG2

35

MPEG2 Compresión Espacial

64 Pixel Values(512 bits)

5 15 35 55 75 85 105 125

5 15 35 55 75 85 105 125

5 15 35 55 75 85 105 125

5 15 35 55 75 85 105 125

5 15 35 55 75 85 105 125

5 15 35 55 75 85 105 125

5 15 35 55 75 85 105 125

5 15 35 55 75 85 105 125

Now just 2 DCT coefficients.

(16 bits)

62.5 -100 0 0 0 0 0 0

0 0 0 0 0 0 0 0

0 0 0 0 0 0 0 0

0 0 0 0 0 0 0 0

0 0 0 0 0 0 0 0

0 0 0 0 0 0 0 0

0 0 0 0 0 0 0 0

0 0 0 0 0 0 0 0

4 1er. Valor DCT igual al promedio de la luminancia del grupo de 8X8 pixeles.

4 2do. Valor -100 porque los pixeles esel inverso del 2do. patrón.

4Otros patrones igual a 0.

Page 36: Fundamentos y Mediciones en MPEG2

36

MPEG2 Compresión Espacial

64 Pixel Values(512 bits)

Now just 1 DCT coefficient.

(8bits)

25 0 0 0 0 0 0 0

0 0 0 0 0 0 0 0

0 0 0 0 0 0 0 0

0 0 0 0 0 0 0 0

0 0 0 0 0 0 0 0

0 0 0 0 0 0 0 0

0 0 0 0 0 0 0 0

0 0 0 0 0 0 0 0

4Utilizando nuestro primer ejemplo, Qué hacemos con todos los ‘0’s?

88

2A5 2A5 2A5 2A5 2A5 2A5 2A5 2A5

2A5 2A5 2A5 2A5 2A5 2A5 2A5 2A5

2A5 2A5 2A5 2A5 2A5 2A5 2A5 2A5

2A5 2A5 2A5 2A5 2A5 2A5 2A5 2A5

2A5 2A5 2A5 2A5 2A5 2A5 2A5 2A5

2A5 2A5 2A5 2A5 2A5 2A5 2A5 2A5

2A5 2A5 2A5 2A5 2A5 2A5 2A5 2A5

2A5 2A5 2A5 2A5 2A5 2A5 2A5 2A5

Page 37: Fundamentos y Mediciones en MPEG2

37

Zigzag o Clásico(por cuadro)

Secuencia de Procesamiento

25 0 0 0 0 0 0 0

0 0 0 0 0 0 0 0

0 0 0 0 0 0 0 0

0 0 0 0 0 0 0 0

0 0 0 0 0 0 0 0

0 0 0 0 0 0 0 0

0 0 0 0 0 0 0 0

0 0 0 0 0 0 0 0

25, EOB (End of Block)

Page 38: Fundamentos y Mediciones en MPEG2

38

MPEG2 Compresión Espacial

4Cuáles valores DCT describen mejor a este grupo de pixeles?

Page 39: Fundamentos y Mediciones en MPEG2

39

7842 199 448 362 342 112 31 22

198 151 181 264 59 37 14 3

142 291 218 87 27 88 27 12

111 133 159 119 58 65 36 2

49 85 217 50 8 3 14 12

58 120 60 40 41 11 2 1

30 121 61 22 30 1 0 1

22 28 2 33 24 51 44 81

8 16 19 22 26 27 29 34

16 16 22 24 27 29 34 37

19 22 26 27 29 34 34 38

22 22 26 27 29 34 37 40

22 26 27 29 32 35 40 48

26 27 29 32 35 40 48 58

26 27 29 34 38 48 56 69

27 29 35 38 46 56 69 83

980 12 23 16 13 4 1 0

12 9 8 11 2 1 0 0

7 13 8 3 0 2 0 1

5 6 6 4 2 1 0 0

2 3 8 1 0 0 0 0

2 4 2 1 1 0 0 0

1 4 2 1 0 0 0 0

0 0 1 0 0 0 0 0

Code Linear Non-LinearQuant Scale Quant Scale

1 2 1

8 16 8

16 32 24

20 40 40

24 48 56

28 56 88

31 62 112

Input DCT Coefficients(a more complex block)

Quant Scale ValuesNot all code values are shown

One value used for complete 8x8 block

Output DCT CoefficientsValue for display only

not actual results

Quant Matrix ValuesValue used correspondsto the coefficient location

Divide byQuantMatrix

Divide byQuantScale

Page 40: Fundamentos y Mediciones en MPEG2

40

Cuantización

4Divide cada coeficiente DCT entre un valor dependiente de la frecuencia y trunca el resultado en un número entero4Muchos de los números resultantes son “0” o

valores menores (e.g., 1, 2, 3, … 12, 13, .)4Los coeficientes de cuantización pueden ser

adaptados para complementar las limitaciones del sistema visual humano4La cuantización causa que la información sea

irreversiblemente perdida. Los pixeles reconstruidosson usualmente diferentes en valor del original

Page 41: Fundamentos y Mediciones en MPEG2

41

Entropy Coding

4La codificación Run length utiliza un código especial para valores repetitivos (e.g., 13 “0s”, 5 “1s”, 4 “2s”) 4La codificación Variable length utiliza palabras de

código cortas para los símbolos más probables (comoel código Morse)

SymbolABCDEF

SymbolABCDEF

Probability0.5

0.250.1250.0625

0.031250.03125

Probability0.5

0.250.1250.0625

0.031250.03125

Code Word010

11011101111011111

Code Word010

11011101111011111

Page 42: Fundamentos y Mediciones en MPEG2

42

Tothe Decoder

4Codificación Run length – Código especial paravalores repetidos (e.g., 13 “2s”, 5 “1s”, 4 “6s”, etc.)

4Compresión sin pérdida de información

Entropy EncodingRun Length

Variable Length

Run Length

83

Encoder Input DCT Coefficients(a more complex block) Encoder Output DCT Coefficients

Value for display onlynot actual results

Encoder Quant Matrix ValuesValue used correspondsto the coefficient location

Divide byQuantMatrix

Run Length

Variable Length

31, 42, 31, 56, 56, 31 31, 42, 31, A2, 31

Page 43: Fundamentos y Mediciones en MPEG2

43

Tothe DecoderEntropy Encoding

Run LengthVariable Length

Variable Length

83

Encoder Input DCT Coefficients(a more complex block) Encoder Output DCT Coefficients

Value for display onlynot actual results

Encoder Quant Matrix ValuesValue used correspondsto the coefficient location

Divide byQuantMatrix

Run Length

Variable Length

31, 42, 31, 56, 56, 31 C, 42, C, A2, C 31, 42, 31, A2, 31

SymbolABCDEF

Probability0.50.250.1250.06250.031250.03125

Code Word01011011101111011111

4Codificación Variable Length utilizando palabrascortas para símbolos con mayor probabilidad.

4Compresión sin pérdida de información

Page 44: Fundamentos y Mediciones en MPEG2

44

Convert 4:2:2 to

8-bit 4:2:0DCT Quantize Entropy

Coding BufferFull

Bitrate10-bitData

DatosComprimidos

Control de Bit Rate

Pérdida de InfoReducción de Datos

No hay pérdidaNo Reducción de datos

Reducción de Datos(Pérdida de info)

Reducción de Datos(no hay pérdidas)

CuantificaciónReduce el número de bits para cada coeficiente.

Da preferencia a ciertos coeficientes.La reducción puede variar para cada coeficiente.

Codificación Variable LengthUsa palabras cortas para

Los valores mas frecuentes(como el código Morse)

Codificación Run LengthEnvía un código de

Palabra única en vez de Cadenas de ceros

Entropy Coding

Datos Cuantificados

Proceso MPEG

Stuffing

Page 45: Fundamentos y Mediciones en MPEG2

45

Blocking

Page 46: Fundamentos y Mediciones en MPEG2

46

Blurring

Page 47: Fundamentos y Mediciones en MPEG2

47

SistemaSistema MPEGMPEG

Page 48: Fundamentos y Mediciones en MPEG2

48

Cadena de Transmisión DTV

Encoder

Encoder

Video

Audio

MULTIPLEXER

TransportStream

PES

PES

ES=Elementary StreamcontienenAU=AccessUnits I,B,P

ES

MPEG Compression Layer MPEG Systems Layer+ DVB/ATSC/ARIB

Programme Specific Information(PSI) oService Information (SI) o (PSIP)o (ARIB SI)

13818-2 A/53 ATSC13818-3 A/52 ac313818-4

BasicStandards

13818-1 ETS 300-468 A65 PSIP13818-4 ETR 290

ETR154 A54

MODULATOR

DVBATSCISDB

QPSK OFDMQAM HM8VSB

Presentation Units

Data

ES

Timing DTS/PTS

System Time Clock

(STC)Data

PES

PESECM/EMM

Packetiser

Packetiser

Packetiser

Packetiser

Data

Page 49: Fundamentos y Mediciones en MPEG2

49

Proceso de Compresión

4 El Encoder genera Access Units0Un Access Unit de Video es un Cuadro (I,

B o P)

4 Una secuencia de Access Units0Elementary Stream (ES)

4 Se dividen en paquetes0Packetised Elementary Stream (PES)0Ya sea solo video o solo audio

4 El encabezado de PES contieneinformación de Timing0Presentation Time Stamp (PTS)

4Cuando desplegar el contenido de lospaquetes

0Decoder Time Stamp (DTS)4Cuando decodificar el contenido

Video encoder

Audio encoder

PES

PES

Page 50: Fundamentos y Mediciones en MPEG2

50

Elementary Stream

Picture Payload = I

SequenceStart

GOPStart

PictureStart

Start Code

Header Info

Picture payload

Sequence end Code

HeaderSeq. Header

Access Unit

B

Next GOP

Page 51: Fundamentos y Mediciones en MPEG2

51

Packetised Elementary Streams (PES)

4Sólo puede contener información de Audio Video o Datos en Access Units - no contiene programme guide information

4Variable en tamaño. Máximo 64Kbytes.4El Header puede contener información de Timing:0Decoder Time Stamp (DTS)4p.e. Cuando decodificar un Access Unit de Video

0Presentation Time Stamp (PTS)4p.e. Cuando presentar al espectador un Access Unit de

Audio o Video

Page 52: Fundamentos y Mediciones en MPEG2

52

De ES a PES

Access unit Start Code

Access unit Header

Access Unit payload

PES header

PES header Elementary stream is just a streamof access units

They are cut up, and headers added,every header has at leaststream ID and maybe a lot more

At this point, basic timing information is added to the stream in the PES header,PTS & DTS - the timestamps.

Page 53: Fundamentos y Mediciones en MPEG2

53

MPEG-2 Transport Stream

Video encoder

Audio encoder

MUXPES

PES

Transport Stream

PSI (PAT / PMT tables), SI or PSIP information

System Timing Clock

1. Genera streams de PES de audio, video, datos…

2. Asignaidentificador de paquetes (PID) a cada PES

3. Divide el contenido de los PES en paquetes de tamaño fijo

5. Agrega el Service Information (SI para DVB) o Program and System Information Protocol (PSIP para ATSC)

4. Program Association Table (PAT) enlista los PIDsasociados con una Program Map Table (PMT) que a su vezenlista los PIDs asociados con un programa específico

4. Agrega Program Specific Information (PSI)

6. Agrega la información de timing al sistema para asegurar la sincronía del audio y del video

7. Salida combinadadel stream de datosa un Bit Rate Constante

Page 54: Fundamentos y Mediciones en MPEG2

54

Entonces… Qué es un Transport Stream ?4Un Transport Stream (TS) provee el mecanismo para

transmitir:0Multiple Video PES0Multiple Audio PES0Información de horarios0Closed Caption/Subtíulos0Datos Privados0etc.

Datos multiplexados en un sólo stream de datos…

Page 55: Fundamentos y Mediciones en MPEG2

55

De PES a TS

PES STREAM

PES STREAM

PES STREAM

PES STREAM

TS Header

PES Header

188 Bytes

Transport Stream TS

Page 56: Fundamentos y Mediciones en MPEG2

56

Paquete de Transport Stream

4 Byte Header Payload

188 Bytes

4Los paquetes contienen un solo tipo de datos y estanfijos a 188 bytes por paquete

4Paquetes con el mismo identificador (PID) contienendatos relacionados entre sí

4Pueden contener información de timing en un campo opcional adaptado

DATASync Byte

control bits

Packet ID (PID)

Adaptation Field (opt.)

Page 57: Fundamentos y Mediciones en MPEG2

57

Program Clock Reference (PCR)

4 Para qué se utiliza0Sincroniza el encoder de

MPEG2 con el decoder.4 Qué es0Un muestreo de 42 bits del

reloj de tiempo del sistemadel encoder

4 Porqué es importante0Algunos errores se pueden

prevenir para una correctadecodificación o re-multiplexación de losstreams.0Los decoders lo usan para

re-generar el timing de video, color burst etc.

PCR

System Time Clock (STC)

Page 58: Fundamentos y Mediciones en MPEG2

58

Program Clock Model

VideoEncoder

AudioEncoder

PESSyntax

SystemDEMUX

VideoDecoder

AudioDecoder

PESSyntax

System Mux

PCR Clockfrequencygenerator

PCR Clockphase

generator

PCR:encoderstamps

departuretime of packet

PCR:arrivaltime of packet

PCR Clockrecovered

Display

variable delay = e(n) constant trans delay =C variable delay =d(n)

constant total delay = C

19

trans

total

Page 59: Fundamentos y Mediciones en MPEG2

59

Reference Clock Synchronization

Elementary Stream

_ _ _ _

PCR = XPCR = X plus the time of exactly n bitsn bits188 byte packets

PCR

Load

Local PCR

Receiver 27 MHz clock

Video In

TransportStreamDecoder

CompareLowPass

Filter

27 MHzXtalVCO

27 MHzClock

27 MHzClock

TransportStream

FormationVideo

Encoder

20

Page 60: Fundamentos y Mediciones en MPEG2

60

Tipos de paquetes del Transport Stream

El encabezado del paquete incluye un PID único por cadastream

PROGRAM ASSOCIATION TABLE (PAT)

PROGRAM MAP TABLE (PMT)

PAT siempre en PID 0 – enlista losdiferentes PIDs porcada Program Map Table (PMT) • Network info =16• Program 1 = 115• Program 2 = 221

Cada PMT enlista losPIDs asociados con un programa específico• Video = 51• Audio (French) = 64• Subtitles = 101

VIDEO PACKET

AUDIO PACKET

TeletextProgram Guides (EPG)IP PacketsFilesPrivate DataEtc.

OTHER PACKETS

4PIDs pueden tener valores de 0 al 8191

4PIDs 0-31 están reservados para las tablas básicas4MPEG-2 Program Specific Information (PSI)0Program Association Table (PAT) – PID 00Conditional Access Table (CAT) – PID 10Network Information Table (NIT)

Page 61: Fundamentos y Mediciones en MPEG2

61

Tablas de Program Specific Information (PSI)

Programme Association Table (PAT) – PID 0

Programme Map Tables(PMT)

PID115 PID 221

Stream Type PID

1

2

3

Video

Audio

Teletext

51

64

101

PAT Prog1PMT

Prog2PMT

PID No.

Prog1Vid1

Prog2Aud2

Prog1Aud1

Prog2Vid1

Prog2Aud1

Prog1Teletext

0 16 115 221 51 35 64 50 42 101

Packets

NetworkInformation Table

NIT

Net Info PID16Prog1 PID 115Prog2 PID 221

Stream Type PID

1

2

3

Video

Audio

Audio

50

42

35

PID 16

NIT

Page 62: Fundamentos y Mediciones en MPEG2

62

Programme Guide Information

4 PSI - Programme Service Information. Está definido por MPEGy consiste de

PAT, PMT, CAT, NIT, TSDT

4 SI - Service information. Son tablas adicionales definidas porDVB (p.e. SDT, TDT, EIT, etc.)

(dos categorías Mandatorias y opcionales)

4 PSIP – Tablas adicionales definidas por ATSC para terrestre y cable únicamente (MGT, VCT, etc.)

4 ARIB SI- Tablas adicionales definidas por ARIB en Japón parasatélite

Page 63: Fundamentos y Mediciones en MPEG2

63

DVB – SI tablesService Information (SI)4 Network Information Table (NIT)0 Shows the physical organization and characteristics of the network

4 Time and Date Table (TDT)0 Provides current UTC time

4 Service Descriptor Table (SDT)0 Describes the network services and service provider name

4 Event Information Table (EIT)0 Describes the network events with description, start/stop times and

duration. Used to create the EPG4 Bouquet Association Table (BAT)0 Describes the services in a given “bouquet”, group of services that can be

purchased as single product4 Running Status Table (RST)0 Updates the timing status of schedule change events

4 Timing Offset Table (TOT)0 Contains the UTC time and local time offset

4 Stuffing Table (ST)0 Invalidates the remaining table sections, when one section has been

overwritten

*Mandatory*Optional

Page 64: Fundamentos y Mediciones en MPEG2

64

DVB Service Information (SI)4 The SI performs the following functions:0Provides complementary information to the PSI0Provides information for Integrated Receiver Decoders

(IRD) 0Provides the necessary elements for the Electronic

Program Guide (EPG)0Used for automatic tuning to particular services0Provides relevant schedule information

Page 65: Fundamentos y Mediciones en MPEG2

65

DVB Service Information (SI)4DVB SI data as viewed

on the Transport Stream Compliance Analyzer

Page 66: Fundamentos y Mediciones en MPEG2

66

DVB Service Information (SI)

4 NIT - Network Information Table0 Same as in PSI

Page 67: Fundamentos y Mediciones en MPEG2

67

DVB Service Information (SI)

4 SDT - Service Description Table0 Lists all available services

Page 68: Fundamentos y Mediciones en MPEG2

68

DVB Service Information (SI)

4 EIT - Event Information Table0 Lists schedule of services

Page 69: Fundamentos y Mediciones en MPEG2

69

DVB Service Information (SI)

4 TDT - Time Date Table 0 Lists GMT time

Page 70: Fundamentos y Mediciones en MPEG2

70

DVB Service Information (SI)

4 TOT - Time Offset Table, 0 Lists GMT minus local time

zone

Page 71: Fundamentos y Mediciones en MPEG2

71

ATSC – PSIP tables (basic overview)4 Program and System Information Protocol (PSIP)4 Master Guide Table (MGT)0 Actúa como índice para todas las demás tablas, indica los tamaños de las tablas, el

número de su versión y valores de los PID’s4 System Time Table (STT)0 Un único paquete que muestra la hora y la fecha actuales

4 Rating Region Table (RRT)0 Transmite el rating del programa

4 Virtual Channel Table (VCT)0 Enlista todos los canales en el Transport Stream. Incluye el nombre del canal, los

componentes del stream e identificadores de navegación. También lleva consigo el identificador de la fuente de cada programa, el cual es utilizado por el EIT para crearla EPG (Electronic Programm Guide)

4 Event Information Table (EIT)0 Describe los eventos de la red asociados con cada canal enlistado en la VCT.

Provee una descripción, tiempo de inicio y duración. Utilizado para crear la EPG4 Extended Text Table (ETT)0 Lleva consigo mensajes de texto que describen los canales o eventos que proveen

información mas detallada que la EIT. Los mensajes aparecen como informaciónadicional en la EPG

*Mandatory*Optional

Page 72: Fundamentos y Mediciones en MPEG2

72

ATSC Program System Information Protocol (PSIP)4 ATSC PSIP data as viewed on

the transport stream compliance analyzer

Page 73: Fundamentos y Mediciones en MPEG2

73

ATSC Program System Information Protocol (PSIP)4 MGT - Master Guide Table0 List of PIDs to other tables

Page 74: Fundamentos y Mediciones en MPEG2

74

ATSC Program System Information Protocol (PSIP)4 VCT - Virtual Channel Table0 List of program channels

Page 75: Fundamentos y Mediciones en MPEG2

75

ATSC Program System Information Protocol (PSIP)4 EITn - Event Information

Table0 EIT-0 and EIT-1 will be

required0 3 Hours per EIT

4 ETT - Extended Text Table0More information on

services

Page 76: Fundamentos y Mediciones en MPEG2

76

ATSC Program System Information Protocol (PSIP)4 STT - System Time Table0 Tracks current time in 1 second increments

Page 77: Fundamentos y Mediciones en MPEG2

77

ATSC Program System Information Protocol (PSIP)4 RRT - Rating Region Table0 Program rating based on region of broadcast

Page 78: Fundamentos y Mediciones en MPEG2

78

Implementación de DVB en MPEG-2

4 Superset de Transport Streams de MPEG-2

4 Define los parámetros de Codificación del Video0MP@ML para Distribución04:2:2 para Contribución

4 Define los parámetros de Codificación del Audio 0MPEG2 o Dolby AC3

4 Contenido de Timing0PCRs cada 40ms0Velocidades de repetición de Tablas

4 Información de Servicios Extendidos

Page 79: Fundamentos y Mediciones en MPEG2

79

MPEG System

VideoData

Audio Data

VideoEncoder

AudioEncoder

Packetizer

Packetizer

VideoPES

Audio PES

Data

EncoderMUX

ElementaryStream

Not Standarized

TransportStream

PESSyntax

Systemdecoder

Videodecoder

AudioDecoder

ElementaryStreams

MPEG-2 Standards

3

Page 80: Fundamentos y Mediciones en MPEG2

80

Necesidad de Monitorear la DTV

4Asegurar interoperabilidad entre:0Los componentes del sistema de compresión0Feeds de Contribución y el sistema de compresión de los

broadcasters0El Transport Stream de Broadcast y el receptor0Pruebas los datos insertados (PSIP – IP)

4MPEG provee un kit de prueba

Page 81: Fundamentos y Mediciones en MPEG2

81

Porqué monitorear?

4Solo porque es “digital” no significa que no puedaestar mal

4Hay muchas cosas que pueden estar mal, y algúndía lo estará

Page 82: Fundamentos y Mediciones en MPEG2

82

MPEG Measurement Methodologies

4Syntactic - The construction of the stream

4Semantic - The values in the stream

4Timing - Consistency and validity of timing data in the stream

82

Page 83: Fundamentos y Mediciones en MPEG2

83

Transport Stream Syntax

Header Payload188 Bytes

OPCR

48

SpliceCountdown

8

TransportPrivate

Data

AdaptationField

Extension

PCR

48

SyncByte

8

TransportError

Indicator1

StartIndicator

1

TransportPriority

1

PID

13

ScramblingControl

2

AdaptationField

Control2

ContinuityCounter

4

AdaptationField

Minimum 4-byte header

AdaptationField

Length8

DiscontinuityIndicator

1

RandomAccess

Indicator1

Elem StreamPriority

Indicator1

5 Flags

5

OptionalFields

StuffingBytes

Packet Packet Packet Packet Packet Packet Packet Packet

Payload

8

Page 84: Fundamentos y Mediciones en MPEG2

84

TR101 290 Transport Stream

4 TR101 290 define las siguientes prioridades de cumplimiento para asegurar interoperatibilidad

4 1st Priority: 0Prevención de Decodificación0Monitoreo básico requerido

4 2nd Priority0Artifacts de imágen o decodif intermitente0Monitoreo cintínuo recomendado

4 3rd Priority0Otros problemas de encoder o multiplexer0Monitoreo dependiente de la Aplicación

Worse

1. off the air

2. blocking

3. EPG problems

Page 85: Fundamentos y Mediciones en MPEG2

85

TR101 290 1st Priority

No: Indicator

1.1 TS_sync_loss1.2 Sync_byte_error1.3 PAT_error1.4 Continuity_count_error1.5 PMT_error1.6 PID_error

Packet header errors

Program Mapping errors

Page 86: Fundamentos y Mediciones en MPEG2

86

TR101 290 2nd Priority

No: Indicator

2.1 Transport_error2.2 CRC_error2.3 PCR_error2.4 PCR_accuracy_error2.5 PTS_error2.6 CAT_error

Bit errors

Timing errors

Page 87: Fundamentos y Mediciones en MPEG2

87

TR101 290 3rd Priority

No: Indicator

3.1 NIT_error3.2 SI_repetition_error3.3 Buffer_error3.4 Unreferenced_PID3.5 SDT_error3.6 EIT_error3.7 RST_error3.8 TDT_error3.9 Empty_buffer_error3.10 Data_delay_error

Electronic Program

Guide errors

Unlikely to cause picture

errors

Page 88: Fundamentos y Mediciones en MPEG2

88

Visitanos en http://www.tektronix.com