Comparison of H.264 and VC-1
Encyclopedia
H.264 and VC-1
VC-1
VC-1 is the informal name of the SMPTE 421M video codec standard, which was initially developed as a proprietary video format by Microsoft before it was released as a formal SMPTE standard video format on April 3, 2006...

 are popular video compression standards gaining use in the industry .

Overview

VC-1
VC-1
VC-1 is the informal name of the SMPTE 421M video codec standard, which was initially developed as a proprietary video format by Microsoft before it was released as a formal SMPTE standard video format on April 3, 2006...

H.264
Goals Designed to offer very high image quality with excellent compression efficiency Designed to meet a variety of industry needs with many profiles and levels, allowing for varying compression, quality and CPU usage levels, where the lowest level is for portable devices, designed with low CPU usage in mind, while the high levels are designed with very high quality and compression efficiency in mind
Example industry use Supports 4:2:0 compression / color space Supports studio archiving requirements with 4:4:4 color space;
separate black and white (BW) video mode
Licensing costs Similar
Documentation Not free. Reference decoder, comes with external documentation. ?AVC/H264 Licensing costs and terms from MPEG LA. Reference encoder and decoder free as well. Additionally, JVT & M4IF mailing lists are available where one may receive answers on AVC related questions.

Terminology

All sources for the below information are from the respective specifications listed in the overview section.
Feature VC-1
VC-1
VC-1 is the informal name of the SMPTE 421M video codec standard, which was initially developed as a proprietary video format by Microsoft before it was released as a formal SMPTE standard video format on April 3, 2006...

 
H.264
Partition sizes 16x16 and 8x8 16x16, 16x8, 8x16, 8x8, 8x4, 4x8, and 4x4
Integer transform  8x8, 4x8, 8x4, and 4x4 4x4; 8x8 available in High Profile only
Frame  Used for progressive or interlaced content
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....

 sizes
16x16 only
Motion vector Two dimensional vector offset from current position to reference frame
Reference frame (video)
Reference frames are frames of a compressed video that are used to define future frames. As such, they are only used in inter-frame compression techniques. In older video encoding standards, such as MPEG-2, only one reference frame – the previous frame – was used for P-frames...

Picture A field or frame
Skipped macroblock No data is encoded for macroblock

Features

VC-1
VC-1
VC-1 is the informal name of the SMPTE 421M video codec standard, which was initially developed as a proprietary video format by Microsoft before it was released as a formal SMPTE standard video format on April 3, 2006...

H.264
Bitstream
Bitstream
A bitstream or bit stream is a time series of bits.A bytestream is a series of bytes, typically of 8 bits each, and can be regarded as a special case of a bitstream....

 formats
single bit stream NAL
Network Abstraction Layer
The Network Abstraction Layer is a part of the H.264/AVC Video Coding Standard. The main goal of the H.264/AVC NAL is the provision of a "network-friendly" video representation addressing "conversational" and "non conversational" applications...

 and byte stream
Byte stream
In computer science, a byte stream is a bit stream, in which data bits are grouped into units, called bytes.In computer networking the term octet stream is sometimes used to refer to the same thing; it emphasizes the use of bytes having the length of 8 bits, known as octets.Formally, a byte stream...

Bitstream
Bitstream
A bitstream or bit stream is a time series of bits.A bytestream is a series of bytes, typically of 8 bits each, and can be regarded as a special case of a bitstream....

 format
In advanced profile, each Bitstream Data Unit has its own header.
Simple and Main profile provide neither sequence nor entry point headers.
SPS (sequence parameter set),
PPS (picture parameters set),
slice header, macroblock
Deblocking filter In-loop filter and overlap transform In-loop only
CABAC No Only supported in Main and higher profiles
Variable transform size Yes Only in High profile and above
Slice Contiguous (integer number of macroblock rows only) Contiguous or non-contiguous
Sub-pixel interpolation methods bicubic, bilinear
Bilinear
Bilinear may refer to:* Bilinear sampling, a method in computer graphics for choosing the color of a texture* Bilinear form* Bilinear interpolation* Bilinear map, a type of mathematical function between vector spaces...

6-tap filter for half pixels; averaging for quarter pixels
Variable Length Coding
Variable-length code
In coding theory a variable-length code is a code which maps source symbols to a variable number of bits.Variable-length codes can allow sources to be compressed and decompressed with zero error and still be read back symbol by symbol...

 
Yes
B frame used for predicting other pictures Yes

External links

The source of this article is wikipedia, the free encyclopedia.  The text of this article is licensed under the GFDL.
 
x
OK