Table of Contents
COVER
TITLE PAGE
COPYRIGHT
PREFACE
CHAPTER 1: DIGITAL VIDEO DELIVERY
1.1 BROADBAND TV LANDSCAPE
1.2 INTERNET TV DELIVERY PLATFORMS
1.3 SECOND SCREEN DEVICE ADOPTION
1.4 SCREEN AND VIDEO RESOLUTION
1.5 STEREOSCOPIC 3D TV
1.6 VIDEO CODING STANDARDS
1.7 VIDEO STREAMING PROTOCOLS
1.8 TV INTERFACES AND NAVIGATION
REFERENCES
HOMEWORK PROBLEMS
CHAPTER 2: VIDEO CODING FUNDAMENTALS
2.1 SAMPLING FORMATS OF RAW VIDEOS
2.2 IMPACT OF VIDEO COMPRESSION
2.3 GENERAL VIDEO CODEC OPERATIONS
2.4 TRANSFORM CODING
2.5 ENTROPY CODING
2.6 MPEG (H.26) STANDARDS
2.7 GROUP OF PICTURES
2.8 MOTION ESTIMATION AND COMPENSATION
2.9 NON-MPEG VIDEO CODING
2.10 CONSTANT AND VARIABLE BIT-RATE VIDEOS
2.11 ADVANCED AUDIO CODING
2.12 VIDEO CONTAINERS
2.13 CLOSED CAPTIONS
REFERENCES
HOMEWORK PROBLEMS
CHAPTER 3: H.264/AVC STANDARD
3.1 OVERVIEW OF H.264
3.2 H.264 SYNTAX AND SEMANTICS
3.3 H.264 ENCODER
3.4 RATE DISTORTION OPTIMIZATION
3.5 VIDEO CODING AND NETWORK ABSTRACTION LAYERS
3.6 ERROR RESILIENCE
3.7 TRANSFORM CODING
3.8 ENTROPY CODING
3.9 MOTION VECTOR SEARCH
3.10 MULTIPLE REFERENCE SLICES
3.11 SCALABLE VIDEO CODING
REFERENCES
HOMEWORK PROBLEMS
CHAPTER 4: H.265/HEVC STANDARD
4.1 H.265 OVERVIEW
4.2 H.265 SYNTAX AND SEMANTICS
4.3 PROFILES, LEVELS, AND TIERS
4.4 QUADTREES
4.5 SLICES
4.6 INTRAPREDICTION
4.7 INTERPREDICTION
4.8 TRANSFORM, SCALING, AND QUANTIZATION
4.9 ENTROPY ENCODING
4.10 IN-LOOP FILTERS
4.11 SPECIAL H.265 CODING MODES
REFERENCES
HOMEWORK PROBLEMS
CHAPTER 5: ASSESSING AND ENHANCING VIDEO QUALITY
5.1 INTRODUCTION
5.2 DISTORTION MEASURE
5.3 PEAK SIGNAL TO NOISE RATIO
5.4 STRUCTURAL SIMILARITY INDEX
5.5 OBSERVABLE VERSUS PERCEPTUAL VISUAL ARTIFACTS
5.6 ERROR CONCEALMENT
5.7 COLOR SCIENCE
REFERENCES
HOMEWORK PROBLEMS
CHAPTER 6: CODING PERFORMANCE OF H.262, H.264, AND H.265
6.1 CODING PARAMETERS
6.2 COMPARISON OF H.265 AND H.264
6.3 FRAME CODING COMPARISON
6.4 IMPACT OF CODING BLOCK SIZE ON FRAME CODING EFFICIENCY
6.5 SUMMARY OF CODING PERFORMANCE
6.6 ERROR RESILIENCY COMPARISON OF H.264 AND H.265
6.7 H.264/H.265 VERSUS H.262
REFERENCES
HOMEWORK PROBLEMS
CHAPTER 7: 3D VIDEO CODING
7.1 INTRODUCTION
7.2 MULTIVIEW CODING
7.3 CORRELATION BETWEEN LEFT AND RIGHT VIEWS IN S3D VIDEOS
7.4 VIEW EXPANSION VIA SAMPLE INTERPOLATION
7.5 ANAGLYPH 3D GENERATION
REFERENCES
HOMEWORK PROBLEMS
CHAPTER 8: VIDEO DISTRIBUTION AND STREAMING
8.1 ADAPTIVE VIDEO STREAMING
8.2 VIDEO QUALITY AND CHUNK EFFICIENCY
8.3 APPLE HLS
8.4 HLS OVER 4G AND 802.11
8.5 IMPACT OF VARYING CHUNK DURATION
8.6 MICROSOFT SILVERLIGHT SMOOTH STREAMING
8.7 TRAFFIC RATE SHAPING
8.8 ADOBE HTTP DYNAMIC STREAMING
8.9 MPEG-DASH (ISO/IEC 23009)
8.10 AGGREGATE ADAPTIVE STREAM BANDWIDTH PREDICTION
8.11 LIMITATIONS OF CLIENT-BASED ADAPTIVE STREAMING
8.12 TIPS FOR EFFICIENT ADAPTIVE STREAMING
REFERENCES
HOMEWORK PROBLEMS
GLOSSARY
INDEX
End User License Agreement
Pages
xvii
xviii
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
Guide
Cover
Table of Contents
Preface
Begin Reading
List of Illustrations
CHAPTER 1: DIGITAL VIDEO DELIVERY
Figure 1.1 Free peering.
Figure 1.2 Efficiencies of video coding standards.
Figure 1.3 Bit rates for a compressed video trailer.
Figure 1.4 Coded frame sizes for videos with different resolutions.
Figure 1.5 Coded frame sizes for videos with different content.
Figure 1.6 SSDP discover message flow.
CHAPTER 2: VIDEO CODING FUNDAMENTALS
Figure 2.1 Rate-distortion optimization.
Figure 2.2 General encoder and decoder functions.
Figure 2.3 Nonuniform scalar quantization.
Figure 2.4 A lower QP leads to better video quality.
Figure 2.5 Intraprediction for a block of 8 × 8 samples.
Figure 2.6 Transform coding for a block of 8 × 8 samples.
Figure 2.7 Zigzag DCT coefficient scanning.
Figure 2.8 Relative coding gains versus intersample correlation for 8 × 8 blocks.
Figure 2.9 Arithmetic coding with unequal probabilities.
Figure 2.10 H.262/MPEG-2 temporal prediction for a closed GOP of length 10.
Figure 2.11 Decoded frame sequence (reference frames in parentheses).
Figure 2.12 Open GOP with a length of 9.
Figure 2.13 Open GOP with a length of 9.
Figure 2.14 Motion estimation using linear translation.
Figure 2.15 Full and fractional sample motion search.
Figure 2.16 Interpolation in subsample motion search.
Figure 2.17 Directions of MVs for a hand moving downward.
Figure 2.18 Motion estimation for a 4 × 4 block.
Figure 2.19 Diamond search.
Figure 2.20 Hexagon search.
Figure 2.21 QP variation with CBR coding.
Figure 2.22 Variable video quality with CBR HD coding.
Figure 2.23 Frame sizes for a coded 1080p video.
Figure 2.24 PAR of coded frame sizes for 720p and 1080p videos (same content).
Figure 2.25 VBR video smoothing.
Figure 2.26 Correlation of SAD and scene change.
Figure 2.27 Autocorrelation of I frame size.
Figure 2.28 Original and predicted I frame size.
Figure 2.29 Two BMFF media tracks with fragments.
Figure 2.30 MPEG-2 TS encapsulation in Ethernet/IP.
CHAPTER 3: H.264/AVC STANDARD
Figure 3.1 Frame and field scan order for 4 × 4 blocks.
Figure 3.2 H.264 encoder.
Figure 3.3 Intra (spatial) predictor directions for 4 × 4 blocks.
Figure 3.4 Intraprediction for 4 × 4 blocks using modes 0, 1, 3, and 4.
Figure 3.5 Multitap filtering in intraprediction.
Figure 3.6 Intraprediction for 16 × 16 MBs using modes 0 and 1.
Figure 3.7 Partitions for interprediction.
Figure 3.8 Hierarchical H.264 architecture.
Figure 3.9 H.264 slice coding.
Figure 3.10 Dropping partitions for different frame types.
Figure 3.11 H.264 slice groups.
Figure 3.12 FMO types 0 and 1 with two slice groups.
Figure 3.13 DC coefficients for luma and 4:2:0 chroma blocks.
Figure 3.14 Block diagram for CABAC encoding.
Figure 3.15 Slice and SG identification.
CHAPTER 4: H.265/HEVC STANDARD
Figure 4.1 Temporal prediction using reference and unreferenced frames.
Figure 4.2 Transmitted (and decoding) sequence.
Figure 4.3 NAL unit header.
Figure 4.4 Recursive quadtree partitioning.
Figure 4.5 Quadtree block partitioning (blocks expanded for clarity).
Figure 4.6 Components of a CTU.
Figure 4.7 Splitting a CTB into CBs and PBs/TBs.
Figure 4.8 Fitting CTUs into a 720p frame.
Figure 4.9 Symmetric and asymmetric PB partitions for interprediction.
Figure 4.10 Scanning orders for CUs.
Figure 4.11 An example of slices.
Figure 4.12 An example of square tiles.
Figure 4.13 Parallel wavefront decoding.
Figure 4.14 Partitioning an intrapredicted CB into PBs.
Figure 4.15 Intraprediction modes.
Figure 4.16 Intraprediction using angular mode 18.
Figure 4.17 MPM selection.
Figure 4.18 Fractional sample interpolation.
Figure 4.19 Spatial candidate availability.
Figure 4.20 CABAC decoding of a context-coded bin.
Figure 4.21 Setting the DBF strength.
Figure 4.22 Four directional gradient patterns for edge offset.
Figure 4.23 Determining an edge offset.
Figure 4.24 GOP structure.
Figure 4.25 Unipredicted B frame using only forward references.
CHAPTER 5: ASSESSING AND ENHANCING VIDEO QUALITY
Figure 5.1 Average Y , U , and V -PSNR of decoded H.264 videos.
Figure 5.2 Average Y , U , and V -PSNR of decoded H.265 videos.
Figure 5.3 Y -PSNR.
Figure 5.4 YUV-PSNR.
Figure 5.5 Y -PSNR for same video with different resolutions and coding settings.
Figure 5.6 Y -SSIM.
Figure 5.7 Y -PSNR.
Figure 5.8 (a) Original video frame; (b) One visible artifact on subject, Y -PSNR = 35.03 dB, QP = 30; (c) Two visible artifacts on background, Y -PSNR = 35.10 dB, QP = 30; and (d) No visible artifact, Y -PSNR = 35.00 dB, QP = 32.
Figure 5.9 Spreading errors using multiple slice groups.
Figure 5.10 Impact of EC with and without error resilience.
CHAPTER 6: CODING PERFORMANCE OF H.262, H.264, AND H.265
Figure 6.1 Coding efficiencies of eight HM configurations.
Figure 6.2 Coding efficiencies of high-fficiency (HE) configurations.
Figure 6.3 Impact of coding block size on compression efficiency.
Figure 6.4 Impact of coding block size on encoding and decoding time.
Figure 6.5 Impact of transform block size on compression efficiency.
Figure 6.6 Impact of transform block size on encoding and decoding time.
Figure 6.7 Compressed size for H.265 and H.264.
Figure 6.8 Expanded view for high QP values.
Figure 6.9 Bit rate savings for H.265 over H.264.
Figure 6.10 Bit rate savings for H.265 over H.264 (motion-related).
Figure 6.11 I frame coding efficiency gain for H.265 over H.264.
Figure 6.12 Average I frame YUV-PSNR for H.265 and H.264.
Figure 6.13 Average I frame encoding time for H.265 and H.264.
Figure 6.14 P frame coding efficiency gain for H.265 over H.264.
Figure 6.15 Average P frame YUV-PSNR for H.265 and H.264.
Figure 6.16 Average P frame encoding time for H.265 and H.264.
Figure 6.17 B frame coding efficiency gain for H.265 over H.264.
Figure 6.18 Average B frame YUV-PSNR for H.265 and H.264.
Figure 6.19 Average B frame encoding time for H.265 and H.264.
Figure 6.20 Frame coding efficiency gain for H.265 over H.264.
Figure 6.21 Coded H.265 frame sizes.
Figure 6.22 Average frame YUV-PSNR for H.265 and H.264.
Figure 6.23 Average frame encoding time for H.265 and H.264.
Figure 6.24 H.265 coding efficiency for different coding block size.
Figure 6.25 H.265 coding efficiency for different transform block size.
Figure 6.26 H.265 encoding time for different coding block size.
Figure 6.27 H.265 encoding time for different transform block size.
Figure 6.28 Impact of CU size on computational time.
Figure 6.29 Computational requirements for decoding functions.
Figure 6.30 Bit rate savings for H.262, H.264, and H.265.
Figure 6.31 Average frame YUV-PSNR.
Figure 6.32 Encoding time for H.262, H.264, and H.265.
Figure 6.33 I frame coding efficiency for H.262.
Figure 6.34 P frame coding efficiency for H.262.
Figure 6.35 B frame coding efficiency for H.262.
Figure 6.36 P frame and B frame coding efficiency for H.262.
Figure 6.37 P frame coding efficiency for H.262.
CHAPTER 7: 3D VIDEO CODING
Figure 7.1 Spatial and temporal view multiplexing.
Figure 7.2 Sample removal, view packing, and view expansion (upconversion).
Figure 7.3 (a) Simulcast H.264 coding and (b) MVC coding.
Figure 7.4 (a) Y -PSNR of right view when compared to left view for Avatar . (b) Maximum Y -PSNR improvement when shifting right view of Avatar . (c) Y -PSNR of Magicforest Right View when compared to Magicforest Left View . (d) Maximum Y -PSNR improvement when shifting Magicforest Right View .
Figure 7.5 (a) Y -PSNR between current and previous frame of Magicforest Left View . (b) Maximum Y -PSNR improvement when shifting previous frame of Magicforest Left View .
Figure 7.6 Original block of 8 × 8 samples.
Figure 7.7 Remaining samples after two iterations of sample removal (4× compression): (a) checkerboard removal and (b) row–column removal.
Figure 7.8 Concealing samples after two iterations of sample removal: (a) checkerboard removal and (b) row–column removal.
Figure 7.9 Concealing samples after one iteration of column removal: (a) intraview sample interpolation, (b) inter-frame sample copy, and (c) inter-frame sample interpolation.
Figure 7.10 Assessing video quality and H.264 encoded file size for Magicforest Left View (10 frames): (a) Y -PSNR versus QP (interpolated video), (b) encoded file size versus QP (packed video), (c) Y -PSNR versus QP (original video), and (d) encoded file size versus QP (original video).
Figure 7.11 Interpolated snapshots for column-packed Flowers (4× compression): (a) top view, (b) bottom view, and (c) anaglyph.
Figure 7.12 (a) Y -, (b) U -, and (c) V -delta occurrences for Magicforest (100 frames).
Figure 7.13 (a) Y -, (b) U -, and (c) V -delta occurrences for Fountain .
Figure 7.14 Distinction between motion and disparity vectors.
CHAPTER 8: VIDEO DISTRIBUTION AND STREAMING
Figure 8.1 Quality (bitstream) switching in adaptive streaming.
Figure 8.2 Minimizing bit rate variation with different quality chunks.
Figure 8.3 Y -PSNR for FCL with different chunk durations and QP values.
Figure 8.5 Y -PSNR for Office with different chunk durations and QP values.
Figure 8.6 Average chunk bit rate for different chunk durations and QP (FCL ).
Figure 8.8 Average chunk bit rate for different chunk durations and QP (Office ).
Figure 8.9 VBR coding efficiencies for fragmented and unfragmented videos.
Figure 8.10 Capped VBR coding efficiencies for fragmented and unfragmented videos.
Figure 8.11 CBR coding efficiencies for fragmented and unfragmented videos.
Figure 8.12 Average bit rate for 10s chunks (300 encoded with QP 20).
Figure 8.13 Average bit rate for 2s chunks (300 encoded with QP 20).
Figure 8.14 Instantaneous rate for unfragmented video (300 encoded with QP 20).
Figure 8.15 Average bit rate for 10s chunks (300 encoded with QP 40).
Figure 8.16 Average bit rate for 2s chunks (300 encoded with QP 40).
Figure 8.17 Super playlist file for an eight-level fragmented video.
Figure 8.18 Dynamic playlist file for 10s chunks.
Figure 8.19 Experimental setup for HLS over 4G and 802.11n.
Figure 8.20 4G startup delay.
Figure 8.21 802.11n startup delay.
Figure 8.22 4G/802.11n streaming.
Figure 8.23 802.11n streaming.
Figure 8.24 Fragmented and unfragmented 4G bit rate.
Figure 8.25 Multi-level HLS for 4G.
Figure 8.26 Multi-level HLS for 802.11n.
Figure 8.27 Quality switching with 2s video + audio chunks.
Figure 8.28 Quality switching with 5s video/audio chunks.
Figure 8.29 Quality switching with 2s video chunks.
Figure 8.30 Quality switching with 5s video chunks.
Figure 8.31 Quality switching with 5s audio chunks.
Figure 8.32 Duplicate chunk suppression by server.
Figure 8.33 Aggressive duplicate chunk suppression by the server.
Figure 8.34 Duplicate chunk suppression using iPhone app.
Figure 8.35 Impact of chunk duration and quality level on playlist overhead.
Figure 8.38 Impact of chunk duration and quality level on ratio of server data input and output.
Figure 8.36 Impact of chunk duration and quality level on server output overhead.
Figure 8.37 Impact of chunk duration and quality level on GET overhead.
Figure 8.39 Sample MSS manifest file.
Figure 8.40 Experimental setups for MSS streaming.
Figure 8.41 802.16 MSS (one-level 300 video capped to 3 Mbit/s).
Figure 8.42 802.16 MSS (one-level 300 video capped to 688 kbit/s).
Figure 8.43 802.16 MSS (two-level 300 video capped to 688 kbit/s).
Figure 8.44 802.16 MSS streaming (eight-level 300 video capped to 3 Mbit/s).
Figure 8.45 802.11n MSS (one-level 300 video capped to 3 Mbit/s).
Figure 8.46 802.11n MSS (two-level 300 video capped to 688 kbit/s).
Figure 8.47 802.11n MSS (eight-level 300 video capped to 3 Mbit/s).
Figure 8.48 Higher chunk request rate at the start of streaming.
Figure 8.49 Lower chunk request rate at the later part of streaming.
Figure 8.50 Impact of server delay on bit rate.
Figure 8.51 Experimental setup for HLS over 802.11n.
Figure 8.52 Quality switching with changes in QP values.
Figure 8.53 Advertised (receiver) window size during quality switch.
Figure 8.54 Quality switch delay for different shaping rates.
Figure 8.55 Playback duration for 300 video (QP 20, 106s).
Figure 8.56 Playback duration for 300 video (QP 40, 106s).
Figure 8.57 Start playback for 300 video (QP 20).
Figure 8.58 Duplicate chunks for 300 video.
Figure 8.59 No quality switching when rates are unshaped (300 video).
Figure 8.60 Chunk rate when quality switching is not required (300 video).
Figure 8.61 Stream setup and play in RTMP.
Figure 8.62 Switching streams in RTMP.
Figure 8.63 Probabilities of different chunk bit rates (quality levels).
Figure 8.64 Probabilities of different permanence times.
Figure 8.65 Server-based adaptive streaming system.
List of Tables
CHAPTER 1: DIGITAL VIDEO DELIVERY
Table 1.1 Common Video Resolutions
CHAPTER 2: VIDEO CODING FUNDAMENTALS
Table 2.1 Color YC r C b (YUV) Formats and Raw Efficiencies
Table 2.2 Bit rates and Storage Requirements for 4:4:4 8-bit Color Format Videos at 30 Hz That Are Encoded with an Efficiency of 0.25 bit/pixel
Table 2.3 Sample Values of a Residual Block
Table 2.4 Transformed DCT Coefficients
Table 2.5 Normalized and Quantized DCT Coefficients
Table 2.6 Denormalized DCT Coefficients
Table 2.7 Inverse Transformed Coefficients of Reconstructed Residual Block
Table 2.8 Examples of Exponential Golomb Codes
Table 2.9 Adaptive Coding for aabac
Table 2.10 Y ′C b C r Values
CHAPTER 3: H.264/AVC STANDARD
Table 3.1 H.264 Profiles and Capabilities
Table 3.2 H.264 Levels
Table 3.3 RDO (High Complexity) When Compared to No RDO
Table 3.4 FMO Evaluation When Compared with No FMO
Table 3.5 H.264 Quantization
Table 3.6 CABAC When Compared with CAVLC
Table 3.7 H.264 Search Types and Block Sizes
Table 3.8 Efficiency Comparison of Lossless Data and Video Compression
Table 3.9 Efficiency Comparison of Lossless and Lossy H.264 Coding
CHAPTER 4: H.265/HEVC STANDARD
Table 4.1 A Comparison of H.264 and H.265
Table 4.2 NAL Unit Types
Table 4.3 Main Profile Levels
Table 4.4 Slice Types
Table 4.5 Reference Sample Smoothing and Block Size
Table 4.6 Splitting a CB for Interprediction
Table 4.7 Syntax Elements
Table 4.8 SAO Filter Syntax Element sao-type-idx
Table 4.9 SAO Filter Syntax Element sao-eo-class
Table 4.10 Edge Offset Gradient Patterns
Table 4.11 Special H.265 Coding Modes
CHAPTER 5: ASSESSING AND ENHANCING VIDEO QUALITY
Table 5.1 Content-Independent Metrics
Table 5.2 Content-Dependent Metrics
CHAPTER 6: CODING PERFORMANCE OF H.262, H.264, AND H.265
Table 6.1 H.265 Video Coding Configurations
Table 6.2 Key Parameter Settings for H.265 Configurations
Table 6.3 Parameter Settings for H.265 Configurations 1–6
Table 6.4 Impact of QP
Table 6.5 H.265 Frame Coding Characteristics
Table 6.6 Impact of Higher Content Complexity
Table 6.7 Impact of Higher Video Resolution
Table 6.8 Impact of Increased Bit Depth (i.e., 10 bit)
Table 6.9 Impact of Activating H.265 Advanced Features
Table 6.10 Impact of Using Smaller Coding Blocks (e.g., 64 × 64 vs 16 × 16)
Table 6.11 Impact of Using Smaller Transform Blocks (e.g., 32 × 32 vs 8 × 8)
Table 6.12 H.264 Versus H.262
CHAPTER 7: 3D VIDEO CODING
Table 7.1 Sample VBR H.264 Videos
Table 7.2 Sample VBR H.264 Videos
Table 7.3 MVC Versus H.264 for Magicforest Left View and Magicforest Right View (100 frames, QP = 28, IPB GOP)
Table 7.4 2-Packed* MVC Versus 2-Packed† and 4-Packed‡ H.264 for Coke and Forest (120 frames, QP = 28, IPB GOP)
Table 7.5 Checkerboard Versus Row–Column Interpolation for Flowers (120 frames)
Table 7.6 Checkerboard Versus Row–Column Interpolation for Coke , Forest , and Avatar (120 frames Each)
Table 7.7 Interpolation Performance for Avatar (120 frames)
Table 7.8 Intraview Versus Inter-View Interpolation (100 frames)
Table 7.9 Impact of Quantization on Original and Column-Packed Magicforest Left View
Table 7.10 Optimized Anaglyph H.264 Coding Efficiency
Table 7.11 Delta Performance after One Iteration of Checkerboard Sample Removal
Table 7.12 Average Y -PSNR Using Disparity Vectors (15 frames)
CHAPTER 8: VIDEO DISTRIBUTION AND STREAMING
Table 8.1 Fragmented VBR Videos
Table 8.2 H.264 VBR Coding Efficiencies for Different Chunk Durations (Water )
Table 8.3 H.264 VBR Coding Efficiencies for Different Chunk Durations (Office )
Table 8.4 H.264 Capped VBR Coding Efficiencies for Different Chunk Durations (Water )
Table 8.5 H.264 Capped VBR Coding Efficiencies for Different Chunk Durations (Office )
Table 8.6 H.264 CBR Coding Efficiencies for Different Chunk Durations (Water )
Table 8.7 H.264 CBR Coding Efficiencies for Different Chunk Durations (Office )
Table 8.8 Average Network Throughput and Relative Overheads (%)
Table 8.9 Re-encoded Chunk Sizes
Table 8.10 Bandwidth Savings with Duplicate Chunk Suppression
Table 8.11 Overall Compressed Video File Size
Table 8.15 Server Input and Output Transmission
Table 8.12 Playlist Overhead
Table 8.13 GET Overhead
Table 8.14 Server Output Overhead
Table 8.16 Overall Compressed Video File Size
Table 8.17 Playlist Overhead
Table 8.18 GET Overhead
Table 8.19 Server Output Overhead
Table 8.20 Server Input and Output Transmission
Table 8.21 Minimizing Duplicate Chunks and Streaming Bandwidth
Table 8.22 HLS and MSS 802.11n Streaming
Table 8.23 A Sample of the Video Trace
Table 8.24 Video Modes and Network Configurations
NEXT–GENERATION VIDEO CODING AND STREAMING
Copyright © 2015 by John Wiley & Sons, Inc. All rights reserved
Published by John Wiley & Sons, Inc., Hoboken, New Jersey
Published simultaneously in Canada
No part of this publication may be reproduced, stored in a retrieval system, or transmitted in any form or by any means, electronic, mechanical, photocopying, recording, scanning, or otherwise, except as permitted under Section 107 or 108 of the 1976 United States Copyright Act, without either the prior written permission of the Publisher, or authorization through payment of the appropriate per-copy fee to the Copyright Clearance Center, Inc., 222 Rosewood Drive, Danvers, MA 01923, (978) 750-8400, fax (978) 750-4470, or on the web at www.copyright.com. Requests to the Publisher for permission should be addressed to the Permissions Department, John Wiley & Sons, Inc., 111 River Street, Hoboken, NJ 07030, (201) 748-6011, fax (201) 748-6008, or online at http://www.wiley.com/go/permissions.
Limit of Liability/Disclaimer of Warranty: While the publisher and author have used their best efforts in preparing this book, they make no representations or warranties with respect to the accuracy or completeness of the contents of this book and specifically disclaim any implied warranties of merchantability or fitness for a particular purpose. No warranty may be created or extended by sales representatives or written sales materials. The advice and strategies contained herein may not be suitable for your situation. You should consult with a professional where appropriate. Neither the publisher nor author shall be liable for any loss of profit or any other commercial damages, including but not limited to special, incidental, consequential, or other damages.
For general information on our other products and services or for technical support, please contact our Customer Care Department within the United States at (800) 762-2974, outside the United States at (317) 572-3993 or fax (317) 572-4002.
Wiley also publishes its books in a variety of electronic formats. Some content that appears in print may not be available in electronic formats. For more information about Wiley products, visit our web site at www.wiley.com.
Library of Congress Cataloging-in-Publication Data:
Bing, Benny.
Next-generation video coding and streaming / Benny Bing.
pages cm
Includes bibliographical references and index.
ISBN 978-1-118-89130-8 (hardback)
1. Video compression. I. Title.
TA1638.B56 2015
006.6′96–dc23
2015020396
Cover image courtesy of Godruma/Getty
TV remains the single most important and engaging source of information and entertainment. U.S. teenagers spend more than three times of their spare time watching TV than on social media. The global footprint of TV has been enhanced recently by online video, which includes online TV. U.S. consumers watch more movies online than on DVDs, Blu-ray discs and other physical video formats. This trend is driven by the flexibility of on-the-go mobile entertainment and the widespread adoption of video-capable smartphones and tablets. These personal devices have become ubiquitous with greatly expanded computing power and memory, improved displays, and network connectivity. The accelerated growth of video traffic on the Internet is expected to continue. However, supporting high-quality video delivery presents a significant challenge to Internet service providers due to the higher bandwidth demands compared to data and voice traffic.
This book describes next-generation video coding and streaming technologies with a comparative assessment of the strengths and weaknesses. Specific emphasis is placed on the H.265/HEVC video coding standard and adaptive bit rate video streaming. H.265/HEVC has been developed to meet the demands of emerging UHD video services and pervasive online video streaming. The commercial adoption of H.265/HEVC has started to gain traction since 2014. Invaluable insights into the coding efficiencies of the intracoded and intercoded frames are described in this book, including the impact of different types of video content and powerful feature sets such as the hierarchical block structure and new coding parameters. Adaptive streaming is a key enabling technology that can achieve smooth and reliable video delivery over heterogeneous wireline and wireless networks, as well as multiscreen personal devices. It provides autonomous bandwidth management and maintains quality of service even as link conditions and network congestion vary. This book provides an in-depth study on the practical performance of the popular adaptive streaming platforms and useful tips for streaming optimization. Innovative techniques related to aggregate adaptive stream bandwidth prediction, duplicate chunk suppression, and server-based adaptive streaming are also discussed.
I wish to thank Wiley's Publisher Dr. Simone Taylor, for her encouragement and patience in overseeing this book project. I also like to acknowledge my industry collaborators and former students who have been generous in sharing many useful comments. The book includes over 220 illustrative figures and over 110 homework problems containing interesting ideas and extensions to key concepts. Powerpoint slides and solutions to the homework problems are available to instructors who adopt the book for a course. Please feel free to send your comments and questions to bennybing@yahoo.com.
Benny Bing