H.264
MPEG4
MPEG4 part2
- DivX
- Xvid
- 3ivx
MPEG4 part 10
- AVC - H.264
Type of frames
I-frame (intra frame)
- Full information about the image
P-frame (inter frame)
- Predictive frame
- size 50% of I frame
B-frames (inter frame)
- Bi predictive frame
- Prediction based on previous or later
- size 25% of i-frame
Gap of picture (GoP)
Closed vs Open GoP
Predictions and macroblocks
Amout of information
Macroblocks
Macroblocks
Finding a referece macroblock
Predictions
multiple references
Predictions information
Motion vectors example
Prediction error
Direkt/skip macroblock
- SPATIAL - copy neighborhood block vector
- TEMPORAL - skipping middle frame
Transform and quantization
Prediction error
Visualization
more in google ;)
CABAC / CAVLC entropy coding
entropy coding?
Lossless compression
type of data compressed (CAVLC)
- 10% more efficient
- High and main profile
- H264 / H265
- Base profile
- less demanding
Profiles / levels
Most important profiles
- Baseline
- Main
- High
Base
- CAVLC
- Frames: I,P
Main
- CABAC
- Frames: I,B,P
- interlaced coding
High
- quantization scaling
- 8x8, 4x4 transform adaptivity
All profiles ;)
Comparison
Levels
limitation to macroblocks/s
(bitrates)
Levels
Example support - Apple TN 2224
Avaliable encoders
Software
- x264
- MainConcept
- Divix H.264
Hardware
- nvenc
- VCE 2.0
- MainConcept (CUDA)
- MainConcept (OpenCL)
- Intel QuickSync
More...
http://www.vcodex.com/h264.html
H.264
By Konrad Pietrzkiewicz
H.264
- 631