Upload
ulises-hiscock
View
213
Download
1
Tags:
Embed Size (px)
Citation preview
August 25, 2009
Video Encoding and Compression
Justin [email protected]
(401) 441-6801
Incremental Steps:Getting to more High Definition
Agenda
MPEG-2 Background
Deployment Techniques
MPEG-4 & Transcoding
A Few Ways to Get More HD
Compression
Familiar Examples
Audio CD iPod Digital camera
Video DVD
Compressed? No Yes Yes Yes
Compression method
-- MP3, AAC JPEG MPEG-2
13468
1087
101414
Video or Audio Input
Audio/Video Encoding
Analog-to-Digital Conversion Encoding
Compressed Video or
Audio
13468
1087
101414
Video or Audio Input
Audio/Video Encoding
Analog-to-Digital Conversion Encoding
Compressed Video or
Audio
13468
1087
101414
DecodingDigital-to-Analog
Conversion
13468
1087
101414
Video or Audio Input
Going from Analog to Digital
Analog-to-Digital Conversion
SDI Video
Serial digital interface (SDI) 270 MHz clock 8-bit or 10-bit Video data plus timing codes (SAV, EAV)
SDI Ancillary Data
Used for: Embedded audio (PCM or compressed) Captioning Aspect ratio signaling And more…
SDI
Video
Data
Audio Compression
MPEG Layer II (“MUSICAM”) AC-3 (Dolby) Advanced Audio Codec (AAC)
13468
1087
101414
Sample rate Bit rate
CATV Channels
108.000 MHz
114.000 MHz
120.000 MHz
126.000 MHz
132.000 MHz
138.000 MHz
144.000 MHz
150.000 MHz
156.000 MHz
162.000 MHz
170.000 MHz
6 MHz
CATV Channels
108.000 MHz
114.000 MHz
120.000 MHz
126.000 MHz
132.000 MHz
138.000 MHz
144.000 MHz
150.000 MHz
156.000 MHz
162.000 MHz
170.000 MHz
QAM 256QAM
QAM
38.8 Mbps
27 MbpsQAM 64
CATV Channels
QAM
QAM
QAM
QAM
38.8 Mbps
SDI Digital Video
270 Mbps
CATV Channels
38.8 Mbps
SDI Digital Video
270 Mbps
MPEG Video Compression
Program sources
MPEG-2 Encoders
Multiplexer
QAM Modulator
CATV network
Subscribers
Digital Video System
Transporting MPEG
Transport Stream (TS) Allows multiplexing 188-byte packets
Transport Rate
Overall rate of MPEG stream Usually constant bit rate Includes video + audio + data Video can be CBR or VBR Null packets
Program sources
MPEG-2 Encoders
Multiplexer
QAM Modulator
CATV network
Multiplexer
• Combines multiple programs• Adjusts control tables (PAT, PMT)• Splices advertisements• Rate shaping
Program sources
MPEG-2 Encoders
Multiplexer
QAM Modulator
QAM Modulator
• Rate shaping (limited)• Encryption• Forward error correction• Transmit on CATV channel
Equipment Interconnect
Ethernet UDP/IP protocol 7 transport packets per Ethernet frame 100Base-T or Gigabit
MPEG Video Compression
Remove redundancy Take advantage of human visual system
MPEG Video Compression
Step 1 Filtering Analog to digital conversion More filtering
Clean, noise-free signal Best results
MPEG Video Compression
Step 2 Divide image into 16x16 macroblocks
MPEG Macroblocks
16 x 16 pixels
720
480
http://mia.ece.uic.edu/~papers/WWW/MultimediaStandards/chapter7.pdf (adapted)
Each macroblock =• Four 8x8 luma blocks• Two 8x8 chroma blocks• 4:2:0
Frames vs. Fields
Interlaced scanning 2 fields per frame MPEG supports field or frame encoding
Film Mode
Movies filmed at 24 frames/sec Converted to 30 frames/sec for TV 1 out of 5 fields is a duplicate Encoder can skip duplicate (save bits)
1 2 3 4 1 2 3 4 4
MPEG Picture Types
Three ways to encode a picture: I (Intra-coded) P (Predicted) B (Bidirectionally predicted)
I B B P B B
I-frames
“Intra-coded” Similar to JPEG image Relatively large (# of bits)
I B B P B B
P-frames
“Predicted” Changes from previous reference frame Relatively small
I B B P B B
B-frames
“Bidirectionally predicted” Changes from previous or next reference
frame Smallest
I B B B BP
Motion Estimation
http://mia.ece.uic.edu/~papers/WWW/MultimediaStandards/chapter7.pdf
For each macroblock:• Find similar 16x16 block in reference frame• Subtract them Residual• Send motion vector and residual
BBPBBI
Group of Pictures
Example: GOP length = 15 I/P spacing = 3
BP BBP BBBPBBI
Breaking the Pattern
Fixed GOP = Fixed I/B/P pattern Or encoder may insert I-frames Scene changes Splice points
I B B P B B
Shorter GOPs: Lower latency Faster recovery
GOP Length
(not always)
Video Quality
Recommended range: 12 - 18
Longer GOPs: Better video quality (at low bit rates)
MPEG Transport Stream
Usually constant bit rate Elementary streams can be CBR or VBR Single or multiple programs Each has clock reference (PCR)
47
MPEG Transport Packet
4 byte header + 184 byte payload = 188 bytes
(Plus 16 error-correction bytes = 204 bytes)
1F FF 10
MPEG Transport Header
47 1F FF 10
47 1F FF
Sync byte PID (13 bits) Continuity counter (4 bits)
0
MPEG Transport Stream
PAT
PMT
Null packet Video packet Audio packet
MPEG Tables
Program Specific Information (PSI) PAT = Program Association Table PMT = Program Map Table CAT = Conditional Access Table NIT = Network Information Table
PSI Tables
http://www.iec.org/online/tutorials/test_dv/topic01.html
DVB and ATSC Tables
Service Information (SI) Program and System Information Protocol (PSIP) Terrestrial and satellite networks Electronic program guide Real-time clock Ratings
MPEG PSI
DVB SI
ATSC PSIP
Variable Bit Rate
Target bit rate range (min, max) Target video quality Bit rate changes to achieve target Varies with time Varies across program mix
Variable Bit Rate
“Easy” content: News channels Cartoons
“Difficult” content: Sports action Quick scene changes
Encoding Rate-Shaping Modulation
Open-loop VBR
Rate Shaping
Goal: Fit streams in fixed-bandwidth channel 38.8 Mbps (256-QAM)
38.8 Mbps
Rate Shaping
• Partially decode MPEG stream• Change quantization• Reconstruct stream• Favor high-priority channels
Closed-loopcontroller
Encoding
Modulation
Closed-loop VBR
Complexity estimates
Bit rate assignments
Modulation
Encoding
All-CBR Architecture
Ad Splicing
Ads are usually CBR May need rate shaping
Ad Splicing
Network
Encoder Mux/Splicer
Ad Server
QAM
CATV Network
Cue tonesSCTE 104
SCTE 35
SCTE 30
Ad stream
MPEG-2 vs. MPEG-4
http://www.balooga.com/mpeg4.php3
Moving to MPEG-4
Lower bit rates Same transport stream Upgrade encoders Upgrade set tops
August 25, 2009
Video Encoding and Compression
Presented By:Justin [email protected]
(401) 441-6801
Derived from Original Content by Marty Sauser, EGT, inc.