Other Free Encyclopedias » Online Encyclopedia » Encyclopedia - Featured Articles » Contributed Topics from U-Z

VC-1 Video Compression - Simple and Main Profiles for VC-1 Video, Advanced Profile for VC-value

field frame picture header

Definition: VC-1 is a video codec developed for broadcast interlaced video as well as progressive video by Microsoft.

VC-1 is derived from Microsoft’s proprietary WMV-9 but awaits SMPTE ratification. VC-1 is pure video compression technology, and is expected to be deployed as key engines in satellite TV, IP set-tops and high-definition DVD recorders.

Simple and Main Profiles for VC-1 Video

The Simple and Main Profiles (SP/MP) of VC-1 are supposed to be the same as those of WMV-9 in progressive compression, respectively. However, there is no Advanced Profile (AP) in WMV-9 to compare with VC-1 AP. VC-1 AP mainly focuses on interlaced video compression technology. And, the interlace tools cannot be compared directly in both standards. Even the starting point is different – the input format is YUV4:1:1 for WMV-9, but is YUV4:2:0 for VC-1. Note that only Field-based prediction and Frame-based prediction are selectively applied in each MB in the interlace tool of WMV-9. This tool is applied when the INTERLACE flag is turned on in the Sequence header.

Advanced Profile for VC-value

The number of B frames is not fixed between two references in VC-1, while it is a constant value that can be found in the Sequence header in WMV-9. New distance value comes into the Picture Structure at Entry- point Layer with REFDIST_FLAG. REFDIST data indicates the number of frames between the current frame and reference one. Progressive-Picture/ Frame-Picture/ Field-Picture can be mixed in a video. It is the encoder job to construct each picture with a FCM (Frame Coding Mode). The maximum number of references is 2 for P Field-Picture. The references are specified in Picture layer. If both 2 references are selected, the selection of reference information is described in MB level and Block level. The number of references is always 4 for B Field-Picture – no Picture layer selection is needed. So, the selection of reference is always in MB level and Block level. Note that one of reference fields for bottom field in a B frame is its top field itself. P Field-Picture has 2 MC modes (1MV with 16×16, 4MV with 8×8). B Field-Picture has 3 MC modes (IMV with 16×16 in forward or backward modes, 2MV with 16×16 in interpolative or direct modes, 4MV with 8×8 only in forward or backward modes). P Frame-Picture has 4 MC modes (1MV Frame-based prediction with 16×16, 4MV Framebased prediction with 8×8, 2MV Field-based prediction with 16×8 (each field), 4MV Field-based prediction with 8×8 (each field 16×8 divided to left/right 8×8)). B Frame-Picture has 4 MC modes (1MV Frame-based prediction with 16×16 in forward or backward modes, 2MV Frame-based prediction with 16×16 in interpolative or direct modes, 2MV Field-based prediction with 16×8 (each field) in forward or backward modes, 4MV Field-based prediction with 16×8 (each field) in interpolative or direct modes). Once residual data is obtained after motion-estimation in encoders, transform is applied on it. In Intra MBs or Intra Blocks, transform is applied on original data. There are 2 transforms -Frame-transform and Field-transform. Frame-transform is to apply the transform on Frame-Picture data without any reordering, while Field-transform is to apply the transform on Frame-Picture data with sorting top/ bottom field data. Note that this option is only available in Frame-Pictures. Encoders decide about which transform mode is applied in each MB. In the case of Intra MBs, the mode determined is written in FIELDTX. In the Inter MBs, however, the mode is written in MBMODE. Transform block size can change adaptively, while size of motion compensation is among 16×16/ 16×8/ 8×8 in VC-1. There are 4 transform sizes as are in WMV-9 – 8×8, 4×8, 8×4 and 4×4.

The same two techniques are used in VC-1 to reduce blocky effect around transform boundary – Overlapped Transform (OLT) smoothing and In Loop deblocking Filtering (ILF). One important difference in OLT technique between WMV-9 and VC-1 is to have the control even on MB level in I frame with CONDOVER and OVERFLAGS. The 128 level-shift is done on all the Intra MBs and Intra Blocks in VC-1, while the level-shift is performed only on Intra MBs and Intra Blocks that undergo OLT in WMV-9. In interlaced video, the OLT smoothing is applied only for vertical direction in Frame-Pictures, while it is performed for both horizontal and vertical directions in Field-Pictures. Note that horizontal edge filtering might require top and bottom fields together as inputs in Frame-Pictures – this would make potential output filtered data blurry. That is why only vertical direction edge is asked to be OLT-filtered for Frame-Pictures in the VC-1 standard. On the other hand, ILF is to filter both horizontal and vertical directions in Field-Pictures of interlaced video. In Frame-Pictures of interlaced video, however, horizontal and vertical ILFs are performed differently. – ILF in vertical edges is the same as that of Field-Pictures, while ILF in horizontal edges is performed based on Field-based ILF filtering. In other words, only the same polarity data are considered in ILF filtering.

VC-1 Video Specific Semantics and Syntax

There are 6 levels of headers in VC-1 video bitstream syntax – Sequence, Entry-point, Picture, Slice, MB and Block. AP has explicit Sequence header, but SP/MP don’t have any Sequence header in VC-1. The data necessary in Sequence header should be provided by external means. Sequence header contains basic parameters such as profile/ level, interlace, loop filter, max_coded_width, max_coded_height, and some other global parameters. This includes display related metadata and HRD parameters. Entry-point header is present only in AP. It is used to signal random access point and control parameter changes in the decoding. Examples include broken_link, closed_entry, refdist_flag, loopfilter, overlap, coded_width, coded_height, and other global parameters until the next Entry-point header. Picture header contains information about FCM/ TFF/ RFF/ RNDCTRL/ PQindex/ LumScalel-2 /LumShiftl-2/ CONDOVER/ BFRACTION, etc. FCM is present only if the INTERACE has the value 1, and it indicates whether the frame is coded as progressive/ Field-Picture/ Field-Frame. TFF and RFF are present as Top Field First and Repeat First Field flags respectively if PULLDOWN and INTERLACE are set to 1. RNDCTRL is used to indicate the type of rounding used for current frame. In P Field-Pictures, 2 intensity compensation parameters (LumScale and LumShift) are needed for top field and bottom field, respectively. CONDOVER is present only in I pictures only when OVERLAP is on and PQUANT is less than or equal to 8. Slice header provides information about SLICE_ADDR/ PIC_HEADER_FLAG. Slice Address is from 1 to 511, where the row address of the first MB in the slice is binary encoded. The picture header information is repeated in the slice header if the PIC_HEADER_FLAG is set to 1. MB header has MBMODE/ OVERFLAGMB/ MVMODEBIT/ SKIPMBBIT/ CBPCY/ MQDIFF/ ABSMQ/ MVDATA/ BLKMVDATA/ HYBRIDPRED/ BMVl/ BMV2/ MBVTYPE, etc. MBMODE indicates whether Intra/ Inter(lMV)/ Inter(4MV)/ CBP/ MV data are present. OVERFLAGMB is present when CONDOVER has the binary value 11. OVERFLAGS indicates whether to perform OLT within the block and neighboring blocks. Other data can similarly be interpreted as those in WMV-9.

Vector Edge Detectors [next] [back] Vavilov, Nikolai Ivanovitch

User Comments

Your email address will be altered so spam harvesting bots can't read it easily.
Hide my email completely instead?

Cancel or