PowerPC Software Architecture Overview
Download
Report
Transcript PowerPC Software Architecture Overview
August 25, 2009
Video Encoding
and
Compression
Incremental Steps:
Getting to more High Definition
Justin Cardones
[email protected]
(401) 441-6801
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
Audio/Video Encoding
Video or
Audio
Input
Analog-to-Digital
Conversion
1
3
4
6
8
10
8
7
10
14
14
Encoding
Compressed
Video or
Audio
Audio/Video Encoding
Video or
Audio
Input
Analog-to-Digital
Conversion
Decoding
1
3
4
6
8
10
8
7
10
14
14
1
3
4
6
8
10
8
7
10
14
14
Encoding
Digital-to-Analog
Conversion
Compressed
Video or
Audio
Going from Analog to Digital
Video or
Audio
Input
Analog-to-Digital
Conversion
1
3
4
6
8
10
8
7
10
14
14
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…
Video
SDI
Data
Audio Compression
MPEG Layer II (“MUSICAM”)
AC-3 (Dolby)
Advanced Audio Codec (AAC)
Sample rate
1
3
4
6
8
10
8
7
10
14
14
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 38.8 Mbps
256
QAM
QAM
QAM
64
27 Mbps
CATV Channels
QAM 38.8 Mbps
QAM
SDI Digital
Video
270 Mbps
QAM
QAM
CATV Channels
38.8 Mbps
SDI Digital
Video
270 Mbps
MPEG Video
Compression
Digital Video System
MPEG-2
Encoders
Subscribers
Multiplexer
Program
sources
QAM
Modulator
CATV
network
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
Multiplexer
MPEG-2
Encoders
•
•
•
•
Combines multiple programs
Adjusts control tables (PAT, PMT)
Splices advertisements
Rate shaping
Multiplexer
Program
sources
QAM
Modulator
CATV
network
QAM Modulator
MPEG-2
Encoders
Multiplexer
Program
sources
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
Each macroblock =
• Four 8x8 luma blocks
• Two 8x8 chroma blocks
• 4:2:0
http://mia.ece.uic.edu/~papers/WWW/MultimediaStandards/chapter7.pdf (adapted)
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
P
B
B
Motion Estimation
For each macroblock:
• Find similar 16x16 block in reference frame
• Subtract them Residual
• Send motion vector and residual
http://mia.ece.uic.edu/~papers/WWW/MultimediaStandards/chapter7.pdf
Group of Pictures
Example:
GOP length = 15
I/P spacing = 3
I
BB P B B P B B P B B
I
BB P B B
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
GOP Length
Shorter GOPs:
Lower latency
Faster recovery
(not always)
Longer GOPs:
Better video quality (at low bit rates)
Recommended range:
12 - 18
Video
Quality
MPEG Transport Stream
Usually constant bit rate
Elementary streams can be CBR or VBR
Single or multiple programs
Each has clock reference (PCR)
MPEG Transport Packet
47
1F
FF
10
4 byte header + 184 byte payload = 188 bytes
(Plus 16 error-correction bytes = 204 bytes)
MPEG Transport Header
47
47
Sync byte
1F
1F
FF
10
FF
PID (13 bits)
0
Continuity counter
(4 bits)
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
Open-loop VBR
Encoding
Rate-Shaping
Modulation
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-loop VBR
Closed-loop
controller
Bit rate
assignments
Complexity
estimates
Modulation
Encoding
All-CBR Architecture
Modulation
Encoding
Ad Splicing
Ads are usually CBR
May need rate shaping
Ad Splicing
SCTE 35
Encoder
Network
Mux/Splicer
QAM
Ad stream
Cue tones
SCTE 104
SCTE 30
Ad
Server
CATV
Network
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 Cardones
[email protected]
(401) 441-6801
Derived from Original Content by Marty
Sauser, EGT, inc.