Personal tools

VC-1

From DigiWiki

(Difference between revisions)
Jump to: navigation, search
(New page: VC-1 is a video compression technology from Microsoft, based on their WMV technology. It is primarily designed for HD video, and is similar in terms of compression ratio to H.264. VC-1...)
(added information)
 
Line 1: Line 1:
-
VC-1 is a video compression technology from Microsoft, based on their WMV technology. It is primarily designed for HD video, and is similar in terms of compression ratio to [[H.264]]. VC-1 is the most commonly used format for [[HD DVD]] movies, with [[Blu-ray]] movies also starting to use this format.  
+
VC-1 is a video compression technology from Microsoft, based on their WMV technology.  
 +
==Format==
 +
VC-1 is primarily designed for HD video, and is similar in terms of compression ratio to [[H.264]]. VC-1 is the most commonly used format for [[HD DVD]] movies, with [[Blu-ray]] movies also starting to use this format. VC-1 should not be confused with WMVHD/WMV-HD which is the earlier Windows Media standard for High Definition (found as a file on pre-revolution [[DVD]] discs. VC-1 uses high bitrates at the intended resolution converse to WMVHD/WMV-HD which use much higher resolution at lower bitrates with instruction sets built into players to allow the downsizing (scaling) of the video to correct playback resolution.
 +
 +
==Profiles==
 +
<center>
 +
{| class="wikitable" border="1" cellpadding="1" cellspacing="1" style="font-size: 100%; text-align: center;"
 +
|-
 +
!
 +
!Simple
 +
!Main
 +
!Advanced
 +
 +
|-
 +
! Baseline intra frame compression
 +
| {{yes}}
 +
| {{yes}}
 +
| {{yes}}
 +
 +
|-
 +
! Variable-sized transform
 +
| {{yes}}
 +
| {{yes}}
 +
| {{yes}}
 +
 +
|-
 +
! 16-bit transform
 +
| {{yes}}
 +
| {{yes}}
 +
| {{yes}}
 +
 +
|-
 +
! Overlapped transform
 +
| {{yes}}
 +
| {{yes}}
 +
| {{yes}}
 +
 +
|-
 +
! 4 motion vector per macroblock
 +
| {{yes}}
 +
| {{yes}}
 +
| {{yes}}
 +
 +
|-
 +
! ¼ pixel luminance motion compensation
 +
| {{yes}}
 +
| {{yes}}
 +
| {{yes}}
 +
 +
|-
 +
! ¼ pixel chrominance motion compensation
 +
| {{no}}
 +
| {{yes}}
 +
| {{yes}}
 +
 +
|-
 +
! Start codes
 +
| {{no}}
 +
| {{yes}}
 +
| {{yes}}
 +
 +
|-
 +
! Extended motion vectors
 +
| {{no}}
 +
| {{yes}}
 +
| {{yes}}
 +
 +
|-
 +
! Loop filter
 +
| {{no}}
 +
| {{yes}}
 +
| {{yes}}
 +
 +
|-
 +
! Dynamic resolution change
 +
| {{no}}
 +
| {{yes}}
 +
| {{yes}}
 +
 +
|-
 +
! Adaptive macroblock quantisation
 +
| {{no}}
 +
| {{yes}}
 +
| {{yes}}
 +
 +
|-
 +
! B frames
 +
| {{no}}
 +
| {{yes}}
 +
| {{yes}}
 +
 +
|-
 +
! Intensity compensation
 +
| {{no}}
 +
| {{yes}}
 +
| {{yes}}
 +
 +
|-
 +
! Range adjustment
 +
| {{no}}
 +
| {{yes}}
 +
| {{yes}}
 +
 +
|-
 +
! Field and frame coding modes
 +
| {{no}}
 +
| {{no}}
 +
| {{yes}}
 +
 +
|-
 +
! GOP Layer
 +
| {{no}}
 +
| {{no}}
 +
| {{yes}}
 +
 +
|-
 +
! Display metadata
 +
| {{no}}
 +
| {{no}}
 +
| {{yes}}
 +
 +
|-
 +
!
 +
!Simple
 +
!Main
 +
!Advanced
 +
 +
|}
 +
</center>
 +
 +
==[[Bit rate]]s and resolutions==
 +
<center>
 +
{| class="wikitable" border="1"
 +
|- style="text-align: center;"
 +
! Profile
 +
! Level
 +
! Maximum Bit Rate
 +
! Resolutions by Framerate
 +
|- style="background:#f9f9f9;"
 +
|rowspan=2| '''Simple'''
 +
| Low
 +
| 96  kbit/s
 +
| 176 x 144 / 15 (QCIF)
 +
|- style="background:#f9f9f9;"
 +
| Medium
 +
| 384  kbit/s
 +
| 240 x 176 / 30<br>352 x 288 / 15 (CIF)
 +
|- style="background:#efefef;"
 +
|rowspan=3| '''Main'''
 +
| Low
 +
| 2  Mbit/s
 +
| 320 x 240 / 24 (QVGA)
 +
|- style="background:#efefef;"
 +
| Medium
 +
| 10  Mbit/s
 +
| 720 x 480 / 30 (480p)<br>720 x 576 / 25 (576p)
 +
|- style="background:#efefef;"
 +
| High
 +
| 20  Mbit/s
 +
| 1920 x 1080 / 30 (1080p)
 +
|- style="background:#f9f9f9;"
 +
|rowspan=5| '''Advanced'''
 +
| L0
 +
| 2  Mbit/s
 +
| 352 x 288 / 30 (CIF)
 +
|- style="background:#f9f9f9;"
 +
| L1
 +
| 10  Mbit/s
 +
| 720 x 480 / 30 (NTSC-SD)<br>720 x 576 / 25 (PAL-SD)
 +
|- style="background:#f9f9f9;"
 +
| L2
 +
| 20  Mbit/s
 +
| 720 x 480 / 60 (480p)<br>1280 x 720 / 30 (720p)
 +
|- style="background:#f9f9f9;"
 +
| L3
 +
| 45  Mbit/s
 +
| 1920 x 1080 / 24 (1080p)<br>1920 x 1080 / 30 (1080i)<br>1280 x 720 / 60 (720p)
 +
|- style="background:#f9f9f9;"
 +
| L4
 +
| 135  Mbit/s
 +
| 1920 x 1080 / 60 (1080p)<br>2048 x 1536 / 24
 +
|}
 +
</center>
 +
 +
 +
==Overview==
 +
 +
{|class="wikitable"
 +
!!![[H.264]]!![[VC-1]]
 +
|-
 +
|Goals
 +
|Designed to meet a variety of industry needs with many profiles and levels <ref>http://www.itu.int/rec/dologin_pub.asp?lang=e&id=T-REC-H.264-200503-I!!PDF-E&type=items Section 0.3</ref>
 +
|Designed to require lower processing power. [http://www.microsoft.com/windows/windowsmedia/howto/articles/vc1techoverview.aspx#Conclusion]
 +
|-
 +
|Example industry use
 +
|Supports studio archiving requirements with 4:4:4 color space; <br> separate black and white (BW) video mode
 +
|Supports 420 compression / color space<ref>SMPTE Draft Standard for Television, SMPTE421M, SMPTE Technology Committee C24 on Video Compression Technology, Proposed SMPTE Standard for Television: VC-1 Compressed Video Bitstream Format and Decoding Process, Date: 2005-08-23,
 +
Copyright 2003-2005 THE SOCIETY OF MOTION PICTURE AND TELEVISION ENGINEERS
 +
595 W. Hartsdale Ave.
 +
White Plains, NY 10607
 +
E-mail eng@smpte.org
 +
Web www.smpte.org
 +
</ref>
 +
|-
 +
|Video Quality || Judged better for low bit rate single pass encoding<ref>
 +
MSU Subjective Comparison of Modern Video Codecs.
 +
<br />
 +
http://compression.ru/video/codec_comparison/subjective_codecs_comparison_en.html
 +
<br />''Provides a subjective comparison of reference video from DVD and four video codecs (DivX, XviD, x264, and WMV) using four movie clips and quantified opinions of 50 experts. Their conclusion was that x264 provides superior quality to the other codecs.''
 +
</ref>
 +
| Judged better for high bit rate encoding<ref>German C’T Magazine, May 03, compared various codecs, including VC-1 and H.264, and selected VC-1 as producing the best subjective and objective quality for high-definition (HD) video. [http://forum.doom9.org/showthread.php?s=&threadid=52410] [http://www.heise.de/ct/03/10/146/ intro] [http://www.heise.de/ct/03/10/146/testsequenzen.shtml] [http://www.heise.de/ct/03/10/146/tabelle_engel.shtml] [http://www.heise.de/ct/03/10/146/tabelle.shtml]</ref> <ref> http://www.microsoft.com/windows/windowsmedia/howto/articles/vc1techoverview.aspx#QualityComparison </ref>
 +
|-
 +
<!--
 +
|Bit Rate || Somewhat lower || higher
 +
-->
 +
|-
 +
|Performance demands||
 +
|Can decode 1080p video on more [[personal computer|PC]]s [http://www.microsoft.com/windows/windowsmedia/forpros/events/NAB2005/VC-1.aspx#VC1_High_definition] [http://www.microsoft.com/windows/windowsmedia/howto/articles/vc1techoverview.aspx#Conclusion] [http://www.microsoft.com/windows/windowsmedia/howto/articles/vc1techoverview.aspx#ComplexityComparison]
 +
|-
 +
|Licensing costs|| Similar [http://www.mpegla.com/avc/avcweb.ppt]
 +
| Similar [http://www.mpegla.com/vc1/vc1web.ppt] [http://www.microsoft.com/windows/windowsmedia/licensing/final.aspx]
 +
|-
 +
|Documentation
 +
|41 figures in the spec
 +
|186 figures in the spec.  Reference encoder and decoder come with external documentation.
 +
|-
 +
|Timeline: First version of specification published
 +
| May 2003<ref>From [[H.264]] article intro</ref>
 +
| March 2006 [http://www.microsoft.com/windows/windowsmedia/forpros/codecs/video.aspx]
 +
|}
 +
 +
 +
==Terminology==
 +
All sources for the below information are from the respective specifications listed in the overview section.
 +
{|class="wikitable"
 +
!!![[H.264]]!![[VC-1]]
 +
|-
 +
|Block||MxN size||An 8x8 array of samples
 +
|-
 +
|[[Film frame#Video frame|Frame]]||Used for interlace content.  Consists of bottom and top field
 +
|Used for progressive or interlaced content
 +
|-
 +
|[[Macroblock]]||16x16 array of samples||Same
 +
|-
 +
|Motion vector||Two dimensional vector offset from current position to [[reference frame (video)|reference frame]]||Same
 +
|-
 +
|Picture||A field or frame||Same
 +
|-
 +
|Skipped macroblock||No data is encoded for macroblock||Same
 +
|-
 +
|}
 +
 +
==Features==
 +
{|class="wikitable"
 +
!!![[H.264]]!![[VC-1]]
 +
|-
 +
|[[Bitstream]] formats||NAL and [[byte stream]]||single bit stream
 +
|-
 +
|[[Bitstream]] format||Sequence header (SPS, sequence parameter set),<br> picture header (PPS, picture parameters set),<br> slice, macroblock||Same,<br> called Seq_layer, and Pic_layer
 +
|-
 +
|[[CABAC]]||Yes||No
 +
|-
 +
|[[CAVLC]]||Yes||No
 +
|-
 +
|[[Variable-length code|Variable Length Coding]]||Yes||Yes
 +
|-
 +
|Slice||Can be non contiguous in picture||Must be contiguous
 +
|-
 +
|[[Video_compression_picture_types#Bi-predictive_pictures_.28or_slices.29|B slice]] used for predicting other pictures||Yes||No<ref>Defined in section 4.12, Definition of terminology of VC-1 specification.</ref>
 +
|-
 +
|Sub pixel interpolation methods||6-tap filter for half pixel, averaging for quarter pixels||[[bicubic]] and [[bilinear]]
 +
|}
 +
 +
 +
 +
* tables borrowed from open-licensed source.
[[Category:Glossary]]
[[Category:Glossary]]

Current revision as of 04:58, 6 November 2007

VC-1 is a video compression technology from Microsoft, based on their WMV technology.

Contents

Format

VC-1 is primarily designed for HD video, and is similar in terms of compression ratio to H.264. VC-1 is the most commonly used format for HD DVD movies, with Blu-ray movies also starting to use this format. VC-1 should not be confused with WMVHD/WMV-HD which is the earlier Windows Media standard for High Definition (found as a file on pre-revolution DVD discs. VC-1 uses high bitrates at the intended resolution converse to WMVHD/WMV-HD which use much higher resolution at lower bitrates with instruction sets built into players to allow the downsizing (scaling) of the video to correct playback resolution.

Profiles

Simple Main Advanced
Baseline intra frame compression Yes Yes Yes
Variable-sized transform Yes Yes Yes
16-bit transform Yes Yes Yes
Overlapped transform Yes Yes Yes
4 motion vector per macroblock Yes Yes Yes
¼ pixel luminance motion compensation Yes Yes Yes
¼ pixel chrominance motion compensation No Yes Yes
Start codes No Yes Yes
Extended motion vectors No Yes Yes
Loop filter No Yes Yes
Dynamic resolution change No Yes Yes
Adaptive macroblock quantisation No Yes Yes
B frames No Yes Yes
Intensity compensation No Yes Yes
Range adjustment No Yes Yes
Field and frame coding modes No No Yes
GOP Layer No No Yes
Display metadata No No Yes
Simple Main Advanced

Bit rates and resolutions

Profile Level Maximum Bit Rate Resolutions by Framerate
Simple Low 96 kbit/s 176 x 144 / 15 (QCIF)
Medium 384 kbit/s 240 x 176 / 30
352 x 288 / 15 (CIF)
Main Low 2 Mbit/s 320 x 240 / 24 (QVGA)
Medium 10 Mbit/s 720 x 480 / 30 (480p)
720 x 576 / 25 (576p)
High 20 Mbit/s 1920 x 1080 / 30 (1080p)
Advanced L0 2 Mbit/s 352 x 288 / 30 (CIF)
L1 10 Mbit/s 720 x 480 / 30 (NTSC-SD)
720 x 576 / 25 (PAL-SD)
L2 20 Mbit/s 720 x 480 / 60 (480p)
1280 x 720 / 30 (720p)
L3 45 Mbit/s 1920 x 1080 / 24 (1080p)
1920 x 1080 / 30 (1080i)
1280 x 720 / 60 (720p)
L4 135 Mbit/s 1920 x 1080 / 60 (1080p)
2048 x 1536 / 24


Overview

H.264VC-1
Goals Designed to meet a variety of industry needs with many profiles and levels <ref>http://www.itu.int/rec/dologin_pub.asp?lang=e&id=T-REC-H.264-200503-I!!PDF-E&type=items Section 0.3</ref> Designed to require lower processing power. [1]
Example industry use Supports studio archiving requirements with 4:4:4 color space;
separate black and white (BW) video mode
Supports 420 compression / color space<ref>SMPTE Draft Standard for Television, SMPTE421M, SMPTE Technology Committee C24 on Video Compression Technology, Proposed SMPTE Standard for Television: VC-1 Compressed Video Bitstream Format and Decoding Process, Date: 2005-08-23,

Copyright 2003-2005 THE SOCIETY OF MOTION PICTURE AND TELEVISION ENGINEERS 595 W. Hartsdale Ave. White Plains, NY 10607 E-mail eng@smpte.org Web www.smpte.org </ref>

Video Quality Judged better for low bit rate single pass encoding<ref>

MSU Subjective Comparison of Modern Video Codecs.
http://compression.ru/video/codec_comparison/subjective_codecs_comparison_en.html
Provides a subjective comparison of reference video from DVD and four video codecs (DivX, XviD, x264, and WMV) using four movie clips and quantified opinions of 50 experts. Their conclusion was that x264 provides superior quality to the other codecs. </ref>

Judged better for high bit rate encoding<ref>German C’T Magazine, May 03, compared various codecs, including VC-1 and H.264, and selected VC-1 as producing the best subjective and objective quality for high-definition (HD) video. [2] intro [3] [4] [5]</ref> <ref> http://www.microsoft.com/windows/windowsmedia/howto/articles/vc1techoverview.aspx#QualityComparison </ref>
Performance demands Can decode 1080p video on more PCs [6] [7] [8]
Licensing costs Similar [9] Similar [10] [11]
Documentation 41 figures in the spec 186 figures in the spec. Reference encoder and decoder come with external documentation.
Timeline: First version of specification published May 2003<ref>From H.264 article intro</ref> March 2006 [12]


Terminology

All sources for the below information are from the respective specifications listed in the overview section.

H.264VC-1
BlockMxN sizeAn 8x8 array of samples
FrameUsed for interlace content. Consists of bottom and top field Used for progressive or interlaced content
Macroblock16x16 array of samplesSame
Motion vectorTwo dimensional vector offset from current position to reference frameSame
PictureA field or frameSame
Skipped macroblockNo data is encoded for macroblockSame

Features

H.264VC-1
Bitstream formatsNAL and byte streamsingle bit stream
Bitstream formatSequence header (SPS, sequence parameter set),
picture header (PPS, picture parameters set),
slice, macroblock
Same,
called Seq_layer, and Pic_layer
CABACYesNo
CAVLCYesNo
Variable Length CodingYesYes
SliceCan be non contiguous in pictureMust be contiguous
B slice used for predicting other picturesYesNo<ref>Defined in section 4.12, Definition of terminology of VC-1 specification.</ref>
Sub pixel interpolation methods6-tap filter for half pixel, averaging for quarter pixelsbicubic and bilinear


  • tables borrowed from open-licensed source.