FUNDAMENTALS OF DIGITAL VIDEO COMPRESSION
MPEG Compression Streaming Video and Progressive Download
© 2016 Pearson Education, Inc., Hoboken, NJ. All 1 rights reserved. In this lecture, you will learn:
• Basic concepts of MPEG compression
• Types of MPEG
• Applications of MPEG
• What GOP (group of pictures) in MPEG is
• How GOP settings affect MPEG video file size
• How GOP settings affect MPEG picture quality
• What streaming video and progressive download are
© 2016 Pearson Education, Inc., Hoboken, NJ. All 2 rights reserved. MPEG
• Moving Pictures Experts Group Committee who derives standards for encoding video
• Allow high compression
• MPEG-1, MPEG-2, MPEG-4
© 2016 Pearson Education, Inc., Hoboken, NJ. All 3 rights reserved. What Happend to MPEG-3?
• NOT MP3 (which is audio format)
• Intended for HDTV
• HDTV specifications was merged into MPEG-2
© 2016 Pearson Education, Inc., Hoboken, NJ. All 4 rights reserved. MPEG-1
• Video quality comparable to VHS
• Originally intended for Web and CD-ROM playback
• Frame sizes up to 352 × 240 pixels
• Video format for VCD (VideoCD) before DVD became widespread
© 2016 Pearson Education, Inc., Hoboken, NJ. All 5 rights reserved. MPEG-2
• Supports DVD-video, HDTV, HDV standards
• For DVD video production: Export video into DVD MPEG-2 format
• For HDV video production: Export video into HDV's MPEG-2 format
© 2016 Pearson Education, Inc., Hoboken, NJ. All 6 rights reserved. MPEG-4
• Newer standard of MPEG family
• Different encoding approach from MPEG-1 and MPEG-2 (will discuss after MPEG-1 and MPEG-2 compression in this lecture)
© 2016 Pearson Education, Inc., Hoboken, NJ. All 7 rights reserved. MPEG-1 AND MPEG-2 How the Compression Works
© 2016 Pearson Education, Inc., Hoboken, NJ. All 8 rights reserved. Properties of Typical Video
• Neighboring frames are very similar • This property is called Temporal redundancy .
• MPEG compression exploits temporal redundancy to reduce video file size • by looking for motion difference from one frame to the next • This technique is called motion compensation .
© 2016 Pearson Education, Inc., Hoboken, NJ. All 9 rights reserved. Basic Ideas of Motion Compensation
1. An video frame image is read in as a reference frame 2. Read the next video frame image 3. Compare the image content between this current frame ( target frame ) with the reference frame • one block of pixels at a time
© 2016 Pearson Education, Inc., Hoboken, NJ. All 10 rights reserved. Comparing Reference and Target Frames
Case 1: If a pixel block is identical at the same location in both frames: • No need to encode the target frame's • Just save an instruction to refer to the block in the reference image— requires less space than encoding the whole pixel block
© 2016 Pearson Education, Inc., Hoboken, NJ. All 11 rights reserved. Comparing Reference and Target Frames
Case 2: If a pixel block at the same location in both frames is not identical: • Search for the reference image for a match (because the content may be moved to another location) • Case 2a: No match is found • Case 2b: A match is found
© 2016 Pearson Education, Inc., Hoboken, NJ. All 12 rights reserved. Case 2a: No Match is Found
• The whole pixel block is encoded
• Thus, no saving in file size
© 2016 Pearson Education, Inc., Hoboken, NJ. All 13 rights reserved. Case 2b: A Match is Found
• The displacement information of the block is saved.
• Displacement information: – A 2-dimensional value, indicating how much the block moves horizontally and vertically from the reference frame to the target frame – Called motion vector – Much smaller size than encoding the whole pixel blocks (thus the saving in file size)
© 2016 Pearson Education, Inc., Hoboken, NJ. All 14 rights reserved. Illustration of the Ideas
Let's consider the first 4 frames of a video
Frame 1 Frame 2 Frame 3 Frame 4
The square grid cell in a frame represents a block of pixels.
© 2016 Pearson Education, Inc., Hoboken, NJ. All 15 rights reserved. Illustration of the Ideas
Frame 1 is read in.
Frame 1 Frame 2 Frame 3 Frame 4
© 2016 Pearson Education, Inc., Hoboken, NJ. All 16 rights reserved. Illustration of the Ideas
Frame 1 is used as a reference frame.
Frame 1 Frame 2 Frame 3 Frame 4
The red color highlights the pixel blocks that are encoded. The whole frame of a reference frame is encoded. No saving in file size.
© 2016 Pearson Education, Inc., Hoboken, NJ. All 17 rights reserved. Illustration of the Ideas
Frame 2 is read in.
Frame 1 Frame 2 Frame 3 Frame 4
© 2016 Pearson Education, Inc., Hoboken, NJ. All 18 rights reserved. Illustration of the Ideas Each pixel block in Frame 2 is searched in Frame 1 trying to find a match.
Frame 1 Frame 2 Frame 3 Frame 4
© 2016 Pearson Education, Inc., Hoboken, NJ. All 19 rights reserved. Illustration of the Ideas Each pixel block in Frame 2 is searched in Frame 1 trying to find a match.
Frame 1Frame Frame 2 Frame 3 Frame 4
The blue color highlights some pixel blocks that are found in Frame 1.
The yellow color highlights some pixel blocks that are found in Frame 1 (but later in the process they are© 2016found Pearson in Education,the next Inc., refere Hoboken,nce NJ. All frame.) 20 rights reserved. Illustration of the Ideas
Frame 3 is read in.
Frame 1Frame 2 Frame 3 Frame 4
© 2016 Pearson Education, Inc., Hoboken, NJ. All 21 rights reserved. Illustration of the Ideas Each pixel block in Frame 3 is searched in Frame 1 trying to find a match.
Frame 1Frame 2 Frame 3 Frame 4
The process is repeated similar to that for Frame 2.
© 2016 Pearson Education, Inc., Hoboken, NJ. All 22 rights reserved. Illustration of the Ideas about Motion Vector Take Frames 1 and 2 as an example
Frame 1 Frame 2
© 2016 Pearson Education, Inc., Hoboken, NJ. All 23 rights reserved. Illustration of the Ideas about Motion Vector Let's look at the pixel block showing the car's windshield
Frame 1 Frame 2
© 2016 Pearson Education, Inc., Hoboken, NJ. All 24 rights reserved. Illustration of the Ideas about Motion Let'sVector arrange the frames vertically to see the displacement easier
Frame 1
Frame 2
© 2016 Pearson Education, Inc., Hoboken, NJ. All 25 rights reserved. Illustration of the Ideas about Motion Let'sVector arrange the frames vertically to see the displacement easier
Frame 1
Frame 2
© 2016 Pearson Education, Inc., Hoboken, NJ. All 26 rights reserved. Illustration of the Ideas about Motion Let'sVector arrange the frames vertically to see the displacement easier
Frame 1
Frame 2
© 2016 Pearson Education, Inc., Hoboken, NJ. All 27 rights reserved. Illustration of the Ideas about Motion Let'sVector arrange the frames vertically to see the displacement easier
Frame 1
Frame 2
The red line indicates the displacement of the pixel block. © 2016 Pearson Education, Inc., Hoboken, NJ. All 28 rights reserved. SO HOW ARE REFERENCE FRAMES CHOSEN? We will need to understand an important concept of group of pictures (GOP ) first.
© 2016 Pearson Education, Inc., Hoboken, NJ. All 29 rights reserved. © 2016 Pearson Education, Inc., Hoboken, NJ. All 30 rights reserved. Motivation of Understanding GOP
To understand:
• the terminology related to GOP because
– it is used by MPEG which in turns used by DVD video and HDTV
– it comes up in video production application dialog boxes when you export video into MPEG format
• the impact of the GOP parameters on video file size and quality
• why some video editing programs may not support frame accurate editing of MPEG
© 2016 Pearson Education, Inc., Hoboken, NJ. All 31 rights reserved. © 2016 Pearson Education, Inc., Hoboken, NJ. All 32 rights reserved. Group of Pictures (GOP)
• Specifies the grouping structure of frames
• Frame types in a structure: – I-frames – P-frames – B-frames
• An MPEG video contains 1 or more repeating GOPs
© 2016 Pearson Education, Inc., Hoboken, NJ. All 33 rights reserved. Number of Frames in a GOP
• Each GOP in a video has a fixed number of frames
• The number is the N parameter
• Example: • DVD-compliant MPEG-3: N = 15 • HDV: N = 15
© 2016 Pearson Education, Inc., Hoboken, NJ. All 34 rights reserved. I-frames
• Stands for Intraframes
• Encoded only using the information within the frame-- intracoding . – Use spatial compression • Similar to JPEG compression – No temporal compression
• Least compressed of the three types
• Reference frame in the previous 4-frame example
© 2016 Pearson Education, Inc., Hoboken, NJ. All 35 rights reserved. I-frames
• Each GOP starts with an I-frame
• Each GOP has only one I-frame
© 2016 Pearson Education, Inc., Hoboken, NJ. All 36 rights reserved. P-frames
• Stands for predicted frames
• Encoded using the information from the previous I- or P-frames as the reference frame if a match of a pixel block is found
• The 2 nd and 3 rd frames in the previous 4-video example
© 2016 Pearson Education, Inc., Hoboken, NJ. All 37 rights reserved. B-frames
• Stands for bidirectional frames
• Between I- and P-frames
• Encoded using information from the previous and subsequent I- and/or P-frame as the reference frames
© 2016 Pearson Education, Inc., Hoboken, NJ. All 38 rights reserved. Example GOP
DVD-compliant MPEG-2:
I B B P B B P B B P B B P B B
N = 15 i.e., number of frames in a GOP = 15
© 2016 Pearson Education, Inc., Hoboken, NJ. All 39 rights reserved. Example GOP
DVD-compliant MPEG-2:
I B B P B B P B B P B B P B B
M = 3 i.e., number of frames between non-B-frames plus one = 2+1 = 3
© 2016 Pearson Education, Inc., Hoboken, NJ. All 40 rights reserved. REVISIT THE 4- FRAME VIDEO EXAMPLE Suppose N = 15, M = 3
© 2016 Pearson Education, Inc., Hoboken, NJ. All 41 rights reserved. Example GOP: N = 15, M = 3 I B B P B B P B B P B B P B B
Frame 1 Frame 2 Frame 3 Frame 4
© 2016 Pearson Education, Inc., Hoboken, NJ. All 42 rights reserved. Example GOP: N = 15, M = 3 I B B P B B P B B P B B P B B
Frame 1 Frame 2 Frame 3 Frame 4 I-frame: Least compressed © 2016 Pearson Education, Inc., Hoboken, NJ. All 43 rights reserved. Example GOP: N = 15, M = 3 I B B P B B P B B P B B P B B
Frame 1 Frame 2 Frame 3 Frame 4 P-frame: Based on changes © 2016 Pearson Education, Inc., Hoboken, NJ. All from Frame44 1 rights reserved. Example GOP: N = 15, M = 3 I B B P B B P B B P B B P B B
Frame 1 Frame 2 Frame 3 Frame 4 B-frame: Most compressed. © 2016 Pearson Education, Inc., Hoboken, NJ. All Based on changes from 45 Frames 1 and rights4 reserved. Example GOP: N = 15, M = 3 I B B P B B P B B P B B P B B
Frame 1 Frame 2 Frame 3 Frame 4 B-frame: Most compressed. © 2016 Pearson Education, Inc., Hoboken, NJ. All Based on changes from 46 rights reserved.Frames 1 and 4 How GOP Settings Affect File Size
• Shorter GOP (i.e., lower N): – larger file size
• Rationales: – A MPEG-2 consists of a repeating GOP structure – Each GOP contains one I-frame – I-frames are the least compressed among the three types of frames, and thus take up more storage space – Shorter GOP means more GOPs in a MPEG-2 – More GOPs means more I-frames in a MPEG-2
© 2016 Pearson Education, Inc., Hoboken, NJ. All 47 rights reserved. How GOP Settings Affect Picture Quality
• Shorter GOP (i.e., lower N): • better picture quality
• Rationales: • I-frames are compressed based on the frame information, rather than predicted from other frames
© 2016 Pearson Education, Inc., Hoboken, NJ. All 48 rights reserved. How GOP Structure Affects Frame-Accurate Video Editing
• Some video editing programs may not support frame-accurate video editing of MPEG-2 because it is more complex than other video format
• Rationales: – The information for a P-frame depends on the information of its previous I-frame. – A B-frame depends on the information of its previous and subsequent I- or P-frames. – Thus, it is more complex to trim out frames from a MPEG-2 than other video format.
© 2016 Pearson Education, Inc., Hoboken, NJ. All 49 rights reserved. Applications of MPEG-4
• Cover a wide range of data rate
• Low end of the data rate: Video playback on mobile devices
• High end of the data rate: – HDTV – Handheld and portable game devices (e.g., Sony PSP)
© 2016 Pearson Education, Inc., Hoboken, NJ. All 50 rights reserved. MPEG-4 Coding Approach
• Uses media objects – A scene may contain separate media objects
• Not the frame-based coding used in MPEG-1 and MPEG-2
• Conventional frame-based video can be converted to MPEG-4 because a frame can be treated as a media object--a degenearted case.
© 2016 Pearson Education, Inc., Hoboken, NJ. All 51 rights reserved. H.264
• Also known as MPEG-4 Part 10 • Based on MPEG-4 codecs • Improved compression to have smaller file size, better visual quality
© 2016 Pearson Education, Inc., Hoboken, NJ. All 52 rights reserved. WAYS OF PLAYING VIDEO
© 2016 Pearson Education, Inc., Hoboken, NJ. All 53 rights reserved. Two Ways of Playing Video
• Play from disk • Play over a network
© 2016 Pearson Education, Inc., Hoboken, NJ. All 54 rights reserved. Play from Disk
• An entire clip needs to be on disk before it can be played
• Played from hard drive, CD, or DVD
© 2016 Pearson Education, Inc., Hoboken, NJ. All 55 rights reserved. Play over a Network
• The video can be played while it is being downloaded
• Can be played from disk
• Streaming video
• Progressive download
© 2016 Pearson Education, Inc., Hoboken, NJ. All 56 rights reserved. Streaming Video
• Play video as soon as enough data has arrived
• Examples: • Streaming QuickTime • Real Video • Window Media Video (WMV)
© 2016 Pearson Education, Inc., Hoboken, NJ. All 57 rights reserved. Streaming Video
• Require a streaming server to stream video
• Allow saving several different compression levels of a video in a single file
• The server chooses the compression level to match the speed of network connection
• Buffering: Wait time depends on network speed
© 2016 Pearson Education, Inc., Hoboken, NJ. All 58 rights reserved. Progressive Download
• Play video as soon as enough data has arrived
• Does not require special servers
• Example: • QuickTime fast-start • Created by saving the QuickTime movie as self-contained using QuickTime Pro
© 2016 Pearson Education, Inc., Hoboken, NJ. All 59 rights reserved.