![handbrake settings handbrake settings](https://wololo.net/wagic/wp-content/uploads/2014/12/pspvideosettings_2.jpg)
![handbrake settings handbrake settings](https://www.macxdvd.com/mac-video-converter-pro/article-image/handbrake-compress-h264.jpg)
![handbrake settings handbrake settings](https://i.stack.imgur.com/WFO1X.png)
I frames are used in H.264 in the start of the video file or in a rapid scene change. The more the number of I frames in the video, the better the quality, but the lower the compression. The frame is encoded by using only Intra Frame Prediction. It is completely independent of other frames in the video stream, and can be decoded without reference from the other frames. I Frame: I frame (Intra Frame) is nothing but the frame copied as it is from the source.H.264 standard defines 3 types of frames that can be used by the codec. So, the predicted frame, in this sense, directly or indirectly depends on the reference frame, and would take up much less space than what it would if the entire frame was stored. This process is called Motion Compensation. And for the active parts, a motion vector is calculated to change their position from that of the reference frame to that of the predicted frame. So basically, what happens here is that the static parts in the scene are copied as it is from the reference frame to the predicted frame. The output is then, a video that is comprised of reference frames, which contains the static and active parts, and predicted frames which consists of the moving parts overlaid on the background to recreate the scene, frame by frame. The similar blocks are considered to be the static part of the scene(the “background”), while the differing blocks are collectively considered to be the active(“moving”) part in the scene. This prediction is done by scanning the corresponding block that is already encoded in the neighbouring frames. This is used for eliminating temporal redundancies. Inter Frame Prediction: Macroblocks are predicted by using previously encoded data in the neighbouring frames. A prediction for the current block is formed from the previously encoded neighbouring blocks. This is used for eliminating spatial redundancies. Intra Frame Prediction: Macroblocks are predicted by using previously encoded data in the current frame.