摘要:
For interlaced B-fields or interlaced B-frames, forward motion vectors are predicted by an encoder/decoder using forward motion vectors from a forward motion vector buffer, and backward motion vectors are predicted using backward motion vectors from a backward motion vector buffer. The resulting motion vectors are added to the corresponding buffer. Holes in motion vector buffers can be filled in with estimated motion vector values. An encoder/decoder switches prediction modes between fields in a field-coded macroblock of an interlaced B-frame. For interlaced B-frames and interlaced B-fields, an encoder/decoder computes direct mode motion vectors. For interlaced B-fields or interlaced B-frames, an encoder/decoder uses 4 MV coding. An encoder/decoder uses “self-referencing” B-frames. An encoder sends binary information indicating whether a prediction mode is forward or not-forward for one or more macroblocks in an interlaced B-field. An encoder/decoder uses intra-coded B-fields [“BI-fields”].
摘要:
Techniques and tools for intensity compensation for interlaced forward-predicted fields are described. For example, a video decoder receives and decodes a variable length code that indicates which of two reference fields for an interlaced forward-predicted field use intensity compensation (e.g., both, only the first, or only the second). The decoder performs intensity compensation on each of the two reference fields that uses intensity compensation. A video encoder performs corresponding intensity estimation/compensation and signaling.
摘要:
Forward motion vectors are predicted by an encoder/decoder using previously reconstructed (or estimated) forward motion vectors from a forward motion vector buffer, and backward motion vectors are predicted using previously reconstructed (or estimated) backward motion vectors from a backward motion vector buffer. The resulting motion vectors are added to the corresponding buffer. Holes in motion vector buffers can be filled in with estimated motion vector values. For example, for interlaced B-fields, to choose between different polarity motion vectors (e.g., “same polarity” or “opposite polarity”) for hole-filling, an encoder/decoder selects a dominant polarity field motion vector. The distance between anchors and current frames is computed using various syntax elements, and the computed distance is used for scaling reference field motion vectors.
摘要:
Techniques and tools for coding/decoding of digital video, and in particular, for determining, signaling and detecting entry points in video streams are described. Techniques and tools described herein are used to embed entry point indicator information in the bitstream that receivers, editing systems, insertion systems, and other systems can use to detect valid entry points in compressed video.
摘要:
Techniques and tools are described for decoding jointly information. For example, a decoder decodes a variable length [“VLC”] signaled at macroblock level that jointly represents a transform type signal level, transform type, and subblock pattern. The decoder decodes one or more VLCs signaled at block level, each jointly representing a transform type and subblock pattern. The decoder may select between multiple VLC tables for the VLCs signaled macroblock level and/or block level.
摘要:
A video encoder uses previously calculated motion information for inter frame coding to achieve faster computation speed for video compression. In a multi bit rate application, motion information produced by motion estimation for inter frame coding of a compressed video bit stream at one bit rate is passed on to a subsequent encoding of the video at a lower bit rate. The video encoder chooses to use the previously calculated motion information for inter frame coding at the lower bit rate if the video resolution is unchanged. A multi core motion information pre-calculation produces motion information prior to encoding by dividing motion estimation of each inter frame to separate CPU cores.
摘要:
An encoder/decoder uses “self-referencing” frames. For example, a second B-field in a current frame references the first B-field from the current frame in motion compensated prediction. Allowing the first B-field in a frame to act as a reference for the second B-field in the frame allows more accurate prediction of the second B-field, while also preserving the temporal scalability benefits of having B-fields in the current frame.
摘要:
An indexed file layout, comprising index information, is defined for segmented streaming of multimedia content. The index information can comprise program description information and streaming segment index information. In addition, the layout can comprise files containing streaming segments of the program, where the streaming segments are each encoded at one or more bitrates independently of other streaming segments of the program. The layout supports client switching between different bitrates at segment boundaries. Optimized client-side rate control of streaming content can be provided by defining a plurality of states, selecting available paths based on constraint conditions, and selecting a best path through the states (e.g., based on a distortion measure). In one client-side rate control solution states correspond to a specific bitrate of a specific streaming segment, and in another client-side rate control solution states correspond to a measure of client buffer fullness.
摘要:
For interlaced B-fields or interlaced B-frames, an encoder/decoder uses 4MV coding. For example, 4MV is used in one-direction prediction modes (forward or backward modes), but not in other available prediction modes (e.g., direct, interpolated). Using 4MV allows more accurate motion compensation for interlaced B-fields and interlaced B-frames; limiting 4MV to forward and backward modes reduces coding overhead and avoids decoding complexity associated with combining 4MV with modes such as direct and interpolated.
摘要:
A video encoder uses previously calculated motion information for inter frame coding to achieve faster computation speed for video compression. In a multi bit rate application, motion information produced by motion estimation for inter frame coding of a compressed video bit stream at one bit rate is passed on to a subsequent encoding of the video at a lower bit rate. The video encoder chooses to use the previously calculated motion information for inter frame coding at the lower bit rate if the video resolution is unchanged. A multi core motion information pre-calculation produces motion information prior to encoding by dividing motion estimation of each inter frame to separate CPU cores.