Appendix B: H.264 Advanced Settings
Settings
Setting | Explanation |
|
|
BitRateTolerance | Setting the bit rate tolerance tells the encoder it must hit the |
| target bit rate almost exactly. However, this value can have an |
| adverse effect on quality because you are forcing the encoder |
| to stay at a target bit rate. More heavy frames may not get |
| enough bits to make the image look better while less heavy |
| frames get more than they need. As a result, the quality may |
| vary. If you set the value to 1, the encoder uses 0.01. |
|
|
DirectMVPrediction | The default setting is temporal. Temporal breaks when b- |
| pyramid is applied. As a result, it is easy to mix the two |
| improperly. Spatial is a better default. |
|
|
GOPSize | This value sets the maximum interval between IDR frames. |
| Theoretically, higher values improve compression because IDR |
| frames are the heaviest, but it can also reduce the appearance |
| of fluctuating quality. |
GOPSizeMin | This value sets the minimum length between IDR frames. This |
| setting limits the minimum length after each IDR frame before |
| another can be placed. |
|
|
InLoopDeblockingFilterAlpha | This value affects the overall amount of deblocking applied to |
| the picture. Higher values deblock more efficiently, but retain |
| less detail causing the image to appear softened. |
| The default value is 0 and should be sufficient to eliminate |
| most blocking, but it leaves the picture noticeably blurrier. In |
| general, values should be no lower than |
| 3. This value is the most important parameter in determining |
| the overall sharpness of your encode. |
|
|
InLoopDeblockingFilterBeta | This value determines whether something in a block is a detail |
| or not when deblocking is applied to it. Lower values apply less |
| deblocking to more flat blocks with detail present and more |
| deblocking to blocks without detail. Higher values cause more |
| deblocking to be applied to less flat blocks with details |
| present. Raising the value of Beta deblocking is a good way to |
| get rid of ringing artifacts by applying more aggressive filtering |
| to blocks that aren’t very flat. Lowering the value of Beta |
| deblocking is a good way to reduce the amount of DCT blocks |
| without blurring the entire picture. |
|
|
MotionEstimationMethod | This value sets the quality. It determines the motion detection |
| method (5 is dia, 7 is hex, 8 is umh, 2 is esa, 10 is teas). |
| Because teas (10) is not really achievable in real time encoding |
| there is no reason to use it. |
| dia – (diamond) is the simplest search. It starts at the best |
| predictor, checks the motion vectors at one pixel upwards, |
| left, down, and to the right, chooses the best, and repeats the |
| process until it no longer finds any better motion vectors. This |
124 | ViewCast |