Log In
Or create an account ->
Imperial Library
Home
About
News
Upload
Forum
Help
Login/SignUp
Index
About the Author
List of Figures
List of Tables
Acronyms
Preface
Acknowledgements
Organization of the Book
1 Introduction to Digital Video
1.1 Interlaced Video
1.2 Sampling
1.3 Color Spaces
1.4 Bit Depth
1.5 HDR
1.5.1 Color Space
1.5.2 Bit Depth
1.5.3 Transfer Function
1.5.4 Metadata
1.5.5 HDR Landscape
1.6 Summary
1.7 Notes
2 Video Compression
2.1 Landscape
2.2 Why is Video Compression needed?
2.3 How is video compressed?
2.3.1 Spatial Pixel Redundancy
2.3.2 Exploiting Temporal Pixel Correlation
2.3.3 Entropy Coding
2.3.4 Exploiting Psycho-Visual Redundancies
2.3.5 8-bit versus 10-bit encoding
2.4 Summary
2.5 Notes
3 Evolution of Codecs
3.1 Key Breakthroughs in Encoding Research
3.1.1 Information Theory (Entropy Coding)
3.1.2 Prediction
3.1.3 Transform coding
3.2 Evolution of Video Coding Standards
3.2.1 Timelines and Developments
3.2.2 Comparison Table of MPEG2, H.264, and H.265
3.3 Summary
3.4 Notes
4 Video Codec Architecture
4.1 Hybrid Video Coding Architecture
4.1.1 Intra Frame Encoding
4.1.2 Inter Frame Encoding
4.1.3 Group of Pictures (GOP) Structures
4.2 Block-based Prediction
4.3 Slices and Tiles
4.4 Interlaced versus Progressive Scan
4.5 Summary
4.6 Notes
5 Intra Prediction
5.1 The Prediction Process
5.2 Transform Blocks and Intra Prediction
5.3 Comparison across Codecs
5.4 Summary
6 Inter Prediction
6.1 Motion-based Prediction
6.1.1 Motion Compensated Prediction
6.2 Motion Estimation Algorithms
6.3 Sub Pixel Interpolation
6.3.1 Sub-pixel Interpolation in HEVC
6.4 Motion Vectors Prediction
6.5 Summary
6.6 Notes
7 Residual Coding
7.1 What are frequencies?
7.2 How Can an Image be Broken Down into its Frequencies?
7.2.1 Why move to the frequency domain?
7.2.2 Criteria for Transform Selection
7.2.3 Discrete Cosine Transform
7.3 Quantization
7.3.1 The Basic Concepts
7.3.2 Quantization Matrix
7.3.3 Quantization in Video
7.3.4 How can QP values be assigned?
7.4 Reordering
7.5 Run Level Pair Encoding
7.6 Summary
8 Entropy Coding
8.1 Information Theory Concepts
8.1.1 The Concept of Entropy
8.1.2 How are the likelihoods or probabilities handled?
8.2 Context Adaptive Binary Arithmetic Coding
8.2.1 Binarization
8.2.2 Context Modeling
8.2.3 Arithmetic Coding
8.3 Summary
8.4 Notes
9 Filtering
9.1 Why is In-loop Filtering Needed?
9.2 Deblocking Filter
9.2.1 Deblocking Process
9.2.2 Filtering Example
9.3 SAO
9.3.1 Edge Offset Mode
9.3.2 Band Offset Mode
9.3.3 SAO Implementation
9.4 Summary
9.5 Notes
10 Mode Decision and Rate Control
10.1 Constraints
10.2 Distortion Measures
10.2.1 Sum of Absolute Differences
10.2.2 SATD (Sum of Absolute Transform Differences)
10.3 Formulation of the Encoding Problem
10.4 Rate Distortion Optimization
10.5 Rate Control Concepts
10.5.1 Bit Allocation
10.5.2 RDO in Rate Control
10.5.3 Summary of Rate Control Mechanism
10.6 Adaptive Quantization (AQ)
10.7 Summary
10.8 Notes
11 Encoding Modes
11.1 VBR Encoding
11.2 CBR Encoding
11.3 CRF Encoding
11.4 When to Use VBR or CBR?
11.4.1 Live Video Broadcasting
11.4.2 Live Internet Video Streaming
11.4.3 Video on Demand Streaming
11.4.4 Storage
11.5 Summary
12 Performance
12.1 Objective Video Quality Metric
12.1.1 Peak Signal-to-Noise Ratio (PSNR)
12.1.2 Structural Similarity (SSIM)
12.1.3 Video Multimethod Assessment Fusion (VMAF)
12.2 Encoder Implementations
12.2.1 H.264 Encoder
12.2.2 H.265 Encoder
12.2.3 VP9 Encoder
12.3 Video Quality Assessments
12.4 Summary
12.5 Notes
13 Advances in Video
13.1 Per-title Encoder Optimization
13.2 Machine Learning
13.2.1 ML Tools for Video Coding Optimization
13.3 Emerging AV1 Codec
13.4 Virtual Reality and 360° Video
13.4.1 What is 360° Video?
13.5 Summary
13.6 Notes
Resources
INDEX
← Prev
Back
Next →
← Prev
Back
Next →