TMuC is the initial test model of JCT-VC, but it is not formally adopted as a test model of the draft standard, as no thorough testing has been performed for such a possible combination of tools. The coding tools in TMuC will be further tested to confirm their effectiveness, before adopted in a formal test model.
TMuC provides more flexibility than H.264/AVC. The basic coding unit, called coding tree block (CTB), which has a similar role to the macroblocks in H.264/AVC, can have variable sizes (a power of 2). The sizes of the largest and smallest CTBs are specified in the sequence parameter set (SPS). A frame is divided into non-overlapped largest CTBs (LCTB), e.g., 128×128, and then each LCTB can be further divided in a recursive tree representation.
Each CTB has its own prediction type (intra/inter) and prediction partition. The partition can be symmetric, just as in H.264/AVC, or asymmetric, e.g., 64×64 block can be partitioned into 64×16/64×48 or 16×64/48×64. Furthermore, geometrical shapes for partition are also allowed.
The increased flexibility means the valid sizes of the basic coding unit and the prediction block can be much larger than those in H.264/AVC, and consequently, related modules need modification accordingly. For example, transforms with larger sizes 16×16, 32×32, and 64×64 are developed; 33 intra prediction directions for large blocks are also developed.
Supporting variable sizes of CTB enables the codec to be readily optimized for a wider spectrum of content, applications and devices. Support of CTB sizes greater than the conventional 16×16 macroblocks benefits the efficiency of high or even ultra-high definition video coding, because homogeneous regions can be represented by a smaller number of symbols. On the other hand, support of small CTB sizes is also remained. It is useful for low resolution video services, which are still commonly used in the market.
Some design elements are borrowed from KTA and H.264/AVC, such as adaptive interpolation filter (AIF), adaptive loop filter (ALF), mode-dependent directional transform (MDDT), and quantization.
The design elements in TMuC are summarized as below. More details of TMuC can be found in JCTVC-A033.
- Coding Tree Block (CTB)
- Prediction unit (PU)
- Transform unit (TU)
- Motion vector prediction for rectangular partitions
- Motion vector prediction for geometric block partitions
- Interleaved MVD coding
- Adaptive interpolation
- Single pass Switched Interpolation Filters with Offsets (single pass SIFO)
- Choice of filter set and offsets
- Adaptive motion vector resolution
- Adaptive reference sample smoothing
- Planar prediction
- Angular prediction
- Arbitrary Directional Intra (ADI)
- Combined Intra Prediction (CIP)
- Large transform (16×16, 32×32, 64×64)
- Rotational transform (ROT)
- Mode Dependent Directional Transforms (MDDT) for intra-prediction residuals
Quantization – as in AVC
- Luma filtering
- Chroma filtering
- Intra planar mode filtering
Adaptive loop filtering
- Low complexity entropy coding with VLC codes
- High coding efficiency entropy coding with V2V codes
It was agreed that not all technical features should be considered equal priority. Therefore, a relative prioritization of the design features described in the TMuC was established. The initial assignment of priorities to technical features was shown as below.
Priority 1: CTB, PU, TU, scaling for MV prediction, interleaved MVD coding, adaptive interpolation, adaptive motion vector resolution, planar prediction, angular prediction, combined intra prediction (CIP), large transforms (16×16, 32×32, 64×64), MDDT for intra-prediction residuals, quantization, luma & chroma deblocking filter, planar mode deblocking filter, adaptive loop filtering, low-complexity entropy coding with VLCs, and high coding efficiency entropy coding with V2V codes.
Priority 2: asymmetric partitions, non-rectangular partitions, motion vector prediction for non-rectangular partitions, adaptive reference sample smoothing for intra prediction, ADI, rotational transform, switched KLT for inter, and augmenting prediction, and residual signals as input to the filter.
Priority 3: block-based illumination compensation, edge detection based intra prediction.
The software download link is