B pictures

# B pictures

Discussion

Encyclopedia
In the field of video compression a video frame is compressed using different algorithm
Algorithm
In mathematics and computer science, an algorithm is an effective method expressed as a finite list of well-defined instructions for calculating a function. Algorithms are used for calculation, data processing, and automated reasoning...

s with different advantages and disadvantages, centered mainly around amount of data compression
Data compression
In computer science and information theory, data compression, source coding or bit-rate reduction is the process of encoding information using fewer bits than the original representation would use....

. These different algorithms for video frames are called picture types or frame types. The three major picture types used in the different video algorithms are I, P and B. They are different in the following characteristics:
• I‑frames are the least compressible but don't require other video frames to decode.
• P‑frames can use data from previous frames to decompress and are more compressible than I‑frames.
• B‑frames can use both previous and forward frames for data reference to get the highest amount of data compression.

## Summary

There are three types of pictures (or frames) used in video compression: I‑frames, P‑frames, and B‑frames.

An I‑frame is an 'Intra-coded picture', in effect a fully specified picture, like a conventional static image file. P‑frames and B‑frames hold only part of the image information, so they need less space to store than an I‑frame, and thus improve video compression rates.

A P‑frame ('Predicted picture') holds only the changes in the image from the previous frame. For example, in a scene where a car moves across a stationary background, only the car's movements need to be encoded. The encoder does not need to store the unchanging background pixels in the P‑frame, thus saving space. P‑frames are also known as delta‑frames.

A B‑frame ('Bi-predictive picture') saves even more space by using differences between the current frame and both the preceding and following frames to specify its content.

## Pictures/Frames

While the terms "frame" and "picture" are often used interchangeably, strictly speaking, the term picture is a more general notion, as a picture can be either a frame or a field
Field (video)
In video, a field is one of the many still images which are displayed sequentially to create the impression of motion on the screen. Two fields comprise one video frame...

. A frame is a complete image captured during a known time interval, and a field is the set of odd-numbered or even-numbered scanning lines composing a partial image. When video is sent in interlaced-scan format, each frame is sent as the field of odd-numbered lines followed by the field of even-numbered lines.

Frames that are used as a reference for predicting other frames are referred to as reference frames.

In such designs, the frames that are coded without prediction from other frames are called the I-frames. Pictures that use prediction from a single reference frame (or a single frame for prediction of each region) are called the P-frame. And pictures that use a prediction signal that is formed as a (possibly weighted) average of two reference frames are called the B-frames.

## Slices

In the latest international standard, known as H.264/MPEG-4 AVC
H.264/MPEG-4 AVC
H.264/MPEG-4 Part 10 or AVC is a standard for video compression, and is currently one of the most commonly used formats for the recording, compression, and distribution of high definition video...

, the granularity of the establishment of prediction types is brought down to a lower level called the slice level of the representation. A slice is a spatially distinct region of a frame that is encoded separately from any other region in the same frame. In that standard, instead of I-frames, P-frames, and B-frames, there are I-slices, P-slices, and B-slices.

## Macroblocks

Typically, pictures (frames) are segmented into macroblock
Macroblock
Macroblock is an image compression component and technique based on discrete cosine transform used on still images and video frames. Macroblocks are usually composed of two or more blocks of pixels. In the JPEG standard macroblocks are called MCU blocks....

s
, and individual prediction types can be selected on a macroblock basis rather than being the same for the entire picture, as follows:
• I-frames can contain only intra macroblocks
• P-frames can contain either intra macroblocks or predicted macroblocks
• B-frames can contain intra, predicted, or bi-predicted macroblocks

Furthermore, in the video codec H.264, the frame can be segmented into sequences of macroblocks called slices, and instead of using I, B and P-frame type selections, the encoder can choose the prediction style distinctly on each individual slice. Also in H.264 are found several additional types of frames/slices:
• SI‑frames/slices (Switching I); Facilitates switching between coded streams; contains SI-macroblocks (a special type of intra coded macroblock).
• SP‑frames/slices (Switching P); Facilitates switching between coded streams; contains P and/or I-macroblocks
• multi‑frame motion estimation (up to 16 reference frames, or 32 reference fields)

Multi‑frame motion estimation will allow increases in the quality of the video while allowing the same compression ratio. SI- SP‑frames (defined for Extended Profile) will allow for increases in the error resistance. When such frames are used along with a smart decoder, it is possible to recover the broadcast streams of damaged DVDs.

## Intra coded frames/slices (I‑frames/slices or Key frameKey frameA key frame in animation and filmmaking is a drawing that defines the starting and ending points of any smooth transition. They are called "frames" because their position in time is measured in frames on a strip of film...s)

• Frames are coded without reference to any frame except themselves.
• May be generated by an encoder to create a random access point (to allow a decoder to start decoding properly from scratch at that picture location).
• May also be generated when differentiating image details prohibit generation of effective P or B-frames.
• Typically require more bits to encode than other frame types.

Often, I‑frames are used for random access and are used as references for the decoding of other pictures. Intra refresh periods of a half-second are common on such applications as digital television
Digital television
Digital television is the transmission of audio and video by digital signals, in contrast to the analog signals used by analog TV...

DVD
A DVD is an optical disc storage media format, invented and developed by Philips, Sony, Toshiba, and Panasonic in 1995. DVDs offer higher storage capacity than Compact Discs while having the same dimensions....

storage. Longer refresh periods may be used in some environments. For example, in videoconferencing
Videoconferencing
Videoconferencing is the conduct of a videoconference by a set of telecommunication technologies which allow two or more locations to interact via two-way video and audio transmissions simultaneously...

systems it is common to send I-frames very infrequently.

## Predicted frames/slices (P-frames/slices)

• Require the prior decoding of some other picture(s) in order to be decoded.
• May contain both image data and motion vector displacements and combinations of the two.
• Can reference previous pictures in decoding order.
• Older standard designs (such as MPEG-2
MPEG-2
MPEG-2 is a standard for "the generic coding of moving pictures and associated audio information". It describes a combination of lossy video compression and lossy audio data compression methods which permit storage and transmission of movies using currently available storage media and transmission...

) use only one previously decoded picture as a reference during decoding, and require that picture to also precede the P picture in display order.
• In H.264, can use multiple previously decoded pictures as references during decoding, and can have any arbitrary display-order relationship relative to the picture(s) used for its prediction.
• Typically require fewer bits for encoding than I pictures do.

## Bi-directional predicted frames/slices (B-frames/slices)

• Require the prior decoding of other frame(s) to be decoded.
• May contain both image data and motion vector displacements or combinations of the two.
• Include some prediction modes that form a prediction of a motion region (e.g., a macroblock or a smaller area) by averaging the predictions obtained using two different previously decoded reference regions.
• In older standard designs (such as MPEG-2), B-frames are never used as references for the prediction of other pictures. As a result, a lower quality encoding (resulting in the use of fewer bits than would otherwise be the case) can be used for such B-frames because the loss of detail will not harm the prediction quality for subsequent pictures.
• In H.264, may or may not be used as references for the decoding of other pictures (at the discretion of the encoder).
• In older standard designs (such as MPEG-2), use exactly two previously decoded pictures as references during decoding, and require one of those pictures to precede the B-frame in display order and the other one to follow it.
• In H.264, can use one, two, or more than two previously decoded pictures as references during decoding, and can have any arbitrary display-order relationship relative to the picture(s) used for its prediction.
• Typically require fewer bits for encoding than either I or P-frames.

• Key frame
Key frame
A key frame in animation and filmmaking is a drawing that defines the starting and ending points of any smooth transition. They are called "frames" because their position in time is measured in frames on a strip of film...

term in animation
• Video compression
• Video
Video
Video is the technology of electronically capturing, recording, processing, storing, transmitting, and reconstructing a sequence of still images representing scenes in motion.- History :...

• Datamosh
• Inter frame
Inter frame
An inter frame is a frame in a video compression stream which is expressed in terms of one or more neighboring frames. The "inter" part of the term refers to the use of Inter frame prediction...