Video Compression

VideoNerd

Picture Width and Height Shall Be Multiple of 8

The HEVC/H.265 standards requires that picture luma sizes (both width and height) are multiple of MinCbSizeY (this parameter is configurable, but it typical value is 8). The standard says: pic_height_in_luma_samples and pic_width_in_luma_samples “shall be an integer multiple of MinCbSizeY”. Where ‘MinCbSizeY’ is derived from SPS parameter ‘log2_min_luma_coding_block_size_minus3‘, typical magnitude of ‘MinCbSizeY’ is 8. What to […]

HEVC Lossless Mode

HEVC (Ver. 1) adopts two lossless modes:          IPCM – actually ‘copy-paste’ mode (even not DPCM)          Lossless Entropy   Lossless Entropy Mode This mode is signaled by PPS parameter transquant_bypass_enabled_flag . Lossless entropy mode is applied on CU-level, i.e. some CUs can be coded as lossless while the rest is coded in regular lossy […]

Does 60 Hz video require twice the bit rate of 30 Hz?

Is it correct to double the bandwidth when the frame rate of video stream is switched to 60Hz from 30Hz? Common sense says: if you double the number of frames then the bitrate should be also doubled. On the other hand, the temporal distance between frames in 60Hz is twice less than those of 30Hz. […]

Discontinuity Indicators

The main purpose of discontinuity_indicator flag (which is signaled at ts-packet header) is to make excerpt/segment easliy concatenated or inserted into MPEG-2 Systems stream (TS stream).  Notice that TS stream is commonly comprised from a number of elementary media streams (video and audio). If you wish to concatenate your TS stream to another one you […]

Frame Level Parallelism

Introduction Generally speaking there three level of parallelism that can be exploited  to speedup the video encoding/decoding processes: 1) GOP-level: each core takes its own GOP and processes it. 2) Frame Level:  there are three variants:  a) B-frame parallelism, if GOP structure contains two consecutive B-frames (IPbbPbbPbb…, small letter denotes – not used for reference) […]