| 1 | Changes from JCTVC-A124 |
|---|
| 2 | Contact: Woo-Jin Han, wjhan.han@samsung.com |
|---|
| 3 | |
|---|
| 4 | 1. Removed tools |
|---|
| 5 | |
|---|
| 6 | 1.1 MVAC (motion vector accuracy control) |
|---|
| 7 | - Enables to limit the motion accuracy up to 1/2 accuracy in B-slices for complexity reductio |
|---|
| 8 | - Not used in CfP submission |
|---|
| 9 | - Command line option in A124: MVA |
|---|
| 10 | 1.2 SHV (simultaneous H & V motion partition) |
|---|
| 11 | - Enables to use motion partition composed of quarter and remaining regions |
|---|
| 12 | - Not used in CfP submission |
|---|
| 13 | - Command line option in A124: SHV |
|---|
| 14 | 1.3 RNG (random noise generation) |
|---|
| 15 | - Insert Gaussian noise into the reconstruction file to improve perceived quality in flat areas |
|---|
| 16 | - Not used in CfP submission |
|---|
| 17 | - Command line option in A124: RNG |
|---|
| 18 | 1.4 LOT (logical transform) |
|---|
| 19 | - Perform 5-3 wavelet + DCT if physical transform size is smaller than requested transform size |
|---|
| 20 | - Used in CfP submission only for 128x128 block |
|---|
| 21 | - Command line option in A124: LOT |
|---|
| 22 | 1.5 CADR (contents-adaptive dynamic range) |
|---|
| 23 | - Performance source scaling within bit-depth limit |
|---|
| 24 | - Used in CfP submission |
|---|
| 25 | - Command line option in A124: CAD |
|---|
| 26 | 1.6 LCT (low-complexity transform) |
|---|
| 27 | - Low-complexity version of large integer transform |
|---|
| 28 | - Not used in CfP submission |
|---|
| 29 | - Command line option in A124: LCT |
|---|
| 30 | 1.7 EXC (extreme correction) & BDC (band correction) |
|---|
| 31 | - In-loop post filters based on pixel statistics |
|---|
| 32 | - Used in CfP submission |
|---|
| 33 | - Command line option in A124: EXC |
|---|
| 34 | 1.8 PTM (pattern matching intra) |
|---|
| 35 | - Pixel-based pattern matching technique for intra prediction |
|---|
| 36 | - Used in CfP submission |
|---|
| 37 | - Command line option in A124: TMI |
|---|
| 38 | 1.9 MPI (multi-parametric intra) |
|---|
| 39 | - Multi-parametric post-processing of intra prediction |
|---|
| 40 | - Used in CfP submission |
|---|
| 41 | - Command line option in A124: MPI |
|---|
| 42 | 1.A CCCP (color correlation based chroma prediction) |
|---|
| 43 | - Chroma intra prediction based on luma reconstruction |
|---|
| 44 | - Used in CfP submission |
|---|
| 45 | - Command line option in A124: CCP |
|---|
| 46 | 1.B ACS (adaptive coefficient scanning) |
|---|
| 47 | - 3 scanning patterns are used selectively (zigzag, horiz, vert) |
|---|
| 48 | - Used in CfP submission |
|---|
| 49 | - Command line option in A124: ACS |
|---|
| 50 | 1.C HAM (high accuracy motion) |
|---|
| 51 | - 1/12th accuracy motion vector for luma and chroma |
|---|
| 52 | - Used in CfP submission for both luma and chroma |
|---|
| 53 | - Command line option in A124: HME, HAP, HAB |
|---|
| 54 | 1.D HME: high accuracy motion estimation |
|---|
| 55 | - HAP: HAM in P-slice |
|---|
| 56 | - HAB: HAM in B-slice |
|---|
| 57 | |
|---|
| 58 | 2. Modified tools |
|---|
| 59 | |
|---|
| 60 | 2.1 DIF (DCT-based interpolation filter) |
|---|
| 61 | - A124 uses 6-tap DIF for chroma |
|---|
| 62 | - Replaced with AVC bi-linear (1/8th) since it uses HAM filters (1/12th), which are not included in TMuC. |
|---|
| 63 | 2.2 GRF (generated reference frame) |
|---|
| 64 | - Weighted, weight + offset, offset, affine, isotropic and perspective are supported |
|---|
| 65 | - Not used in CfP submission |
|---|
| 66 | - Command line option in A124: -v <character> |
|---|
| 67 | - w: weighted, o: offset, r: refinement, a: affine, i: isotropic, p: perspective |
|---|
| 68 | - Affine, isotropic and perspective are removed but weighted prediction is remained due to simulate AVC WP |
|---|
| 69 | - To activate: ¡®-v w¡¯ in command line (scale+offset) or ¡®-v o¡¯ for offset-only |
|---|
| 70 | 2.3 AMVP (advanced motion prediction) |
|---|
| 71 | - A124 software supports three AMVP modes |
|---|
| 72 | - AM_NONE : use first candidate only (similar to AVC), no signaling |
|---|
| 73 | - AM_EXPL : use explicit signaling (used in CfP submission) |
|---|
| 74 | - AM_IMPL : use implicit signaling based on template matching |
|---|
| 75 | - TMuC only has both explicit signaling mode and non-AMVP method |
|---|
| 76 | - AM_IMPL is removed since it is not included in TMuC |
|---|
| 77 | - AM_NONE is maintained since it can be a place-holder for non-AMVP method |
|---|
| 78 | 2.4 CIP (combined intra prediction) |
|---|
| 79 | - CIPflag is now coded only for intra blocks (bug-fix) |
|---|
| 80 | - A124 codes CIPflag even in inter blocks |
|---|
| 81 | |
|---|
| 82 | 3. Option changes |
|---|
| 83 | |
|---|
| 84 | 3.1 JMQ (JM QP) |
|---|
| 85 | - JMQ = 1: use JM QP assignments, JMQ = 0: use JSVM QP assignments |
|---|
| 86 | - Option is removed and JMQ is always on |
|---|
| 87 | - Option fix: JML (JM Lambda) |
|---|
| 88 | 3.2 JML = 1: use JM lambda strategy, JML = 0: use JSVM lambda strategy |
|---|
| 89 | - Option is removed and JML is always on |
|---|
| 90 | 3.3 Option fix: ADI |
|---|
| 91 | - Option is removed and ADI is always turned on |
|---|
| 92 | 3.4 Option fix: AMV (AMVP) |
|---|
| 93 | - Option is removed and AMVP is always turned on |
|---|
| 94 | 3.5 Option fix: DIF |
|---|
| 95 | - Option is removed and DIF is always turned on |
|---|
| 96 | 3.6 Option fix: AMP |
|---|
| 97 | - Option is removed and AMP is always turned on |
|---|
| 98 | 3.7 Option fix: CIP |
|---|
| 99 | - Option is removed and CIP is always turned on |
|---|
| 100 | 3.8 Option fix: ROT |
|---|
| 101 | - Option is removed and ROT is always turned on |
|---|
| 102 | - Note: set ROT_DICT = 1 to disable ROT |
|---|
| 103 | 3.9 Option fix: ACC |
|---|
| 104 | - Try coefficient clearing in inter modes |
|---|
| 105 | - Option is removed and ACC is always turned on |
|---|
| 106 | 3.A Profile option (-p) |
|---|
| 107 | - It was used to separate A124 and A125 coding tools |
|---|
| 108 | - Removed, now |
|---|
| 109 | |
|---|
| 110 | 4. Misc. changes |
|---|
| 111 | |
|---|
| 112 | 4.1 MAX value of IBDI is fixed (IBDI_NOCLIP_RANGE MACRO) |
|---|
| 113 | - Only allows possible values of bit-depth increased signal, not all possible values of inherent high bit-depth case |
|---|
| 114 | 4.2 Encoder output is fixed |
|---|
| 115 | - Slice size bit (32) is now added to the encoder print-out |
|---|
| 116 | 4.3 Source code improvements |
|---|
| 117 | - Unused functions are removed |
|---|
| 118 | - Variable & function namings are changed to clarify its purpose |
|---|
| 119 | |
|---|
| 120 | 5. Known problems |
|---|
| 121 | |
|---|
| 122 | 5.1 POC coding |
|---|
| 123 | - It's not implemented well. Currently, fixed 10-bit is used for POC coding. |
|---|
| 124 | 5.2 ROT (rotational transform) |
|---|
| 125 | - Inverse ROT code is not the best one on the aspects of the dynamic range although we already have better one. |
|---|
| 126 | - It'll be replaced later with much simpler implementation. |
|---|