What is a GOP?
GOP" stands for Group of Pictures. A GOP refers to a sequence of consecutive frames in a video stream that includes one keyframe (I-frame) followed by a series of non-keyframes, which can be P-frames (predictive frames) and B-frames (bi-directional frames). The keyframe within a GOP serves as the reference point for decoding and displaying subsequent frames within that group.
Here's how a GOP is structured:
Keyframe (I-frame): The GOP starts with a keyframe (I-frame), which is a complete and self-contained frame that does not depend on any other frames for its display. It serves as the anchor or reference frame within the group.
P-frames (Predictive Frames): Following the keyframe, P-frames are included in the GOP. P-frames are encoded by predicting the differences between the current frame and the previous reference frame (which could be a keyframe or another P-frame) and then applying motion compensation. They rely on the keyframe or other reference frames for reconstruction.
B-frames (Bi-directional Frames): B-frames come after P-frames in the GOP. B-frames are encoded by predicting the differences based on both previous and future reference frames. They provide higher compression efficiency but require more complex decoding.
The grouping of frames within a GOP allows for efficient video compression. By including non-keyframes (P-frames and B-frames) that only encode the changes or differences from reference frames, the overall file size can be reduced while maintaining video quality.
The size of a GOP, also referred to as the GOP size or keyframe interval, is determined by the number of frames between consecutive keyframes within the video stream. A smaller GOP size (more frequent keyframes) provides better random access and error resilience but may result in larger file sizes. Conversely, a larger GOP size (less frequent keyframes) improves compression efficiency but may reduce random access capabilities.
In summary, a GOP (Group of Pictures) in video streaming is a sequence of frames within a video stream. It starts with a keyframe (I-frame) and is followed by non-keyframes (P-frames and B-frames). The keyframe acts as the reference point for decoding and displaying subsequent frames within that group. GOPs are essential for efficient video compression and playback.
Article written by
Sylvain Corvaisier

Independent streaming and iOS engineer
Last modified: February 14th, 2025