Changeset 443 in 3DVCSoftware for trunk/source/Lib/TLibCommon/TypeDef.h


Ignore:
Timestamp:
26 May 2013, 15:41:34 (12 years ago)
Author:
tech
Message:
  • Reintegrated branch 6.2-dev0 rev. 442.
  • Changed version number.
  • Added coding results.
File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/source/Lib/TLibCommon/TypeDef.h

    r332 r443  
    5959                                              // HHI_DMM_DELTADC_Q1_C0034   JCT3V-C0034: no quantization and fast encoder search for DMM delta DC values
    6060                                              // FIX_DMM_CTX_INIT_C0034 JCT3V-C0034 fix for wrong init type of DMM contexts (UChar instead of Short)
     61#define FIX_WEDGE_NOFLOAT_D0036           1   // JCT3V-D0036: Fix for aligning SW and spec (Wedgelet segmentation line generation without float)
    6162
    6263#define LGE_EDGE_INTRA_A0070              1   // JCT3V-A0070
    6364#define LGE_DMM3_SIMP_C0044               1
     65
     66#define QC_DC_PREDICTOR_D0183             1   // JCT3V-D0183: Simplified DC predictor for depth intra modes
    6467
    6568///// ***** SDC *********
     
    6770                                              // SAIT_SDC_C0096 JCT3V-C0096: Improved Simple Depth Coding(removal of DMM2 among four SDC modes(DC, Planar, DMM1 and DMM2))
    6871                                              // FIX_SDC_ENC_C0143, JCT3V-C0143 fix for unnecessary encoder checks in case of SDC
    69 
     72#if RWTH_SDC_DLT_B0036
     73#define HHI_DELTADC_DLT_D0035             1   // JCT3V-D0035: DLT for DMM deltaDC coding
     74#define INTEL_SDC64_D0193                 1   // JCT3V-D0193: SDC binary clean up (use a 1 bit binary code to signal sdc_pred_mode when CU size is 64x64)
     75#define RWTH_SDC_CTX_SIMPL_D0032          1   // JCT3V-D0032: CABAC Context Reduction for Simplified Depth Coding
     76#define LGE_CONCATENATE_D0141                 1 // JCT3V-D0141: concatenate binarization for residual index coding
     77#endif
     78#define FIX_SDC_ENC_RD_WVSO_D0163         1   // JCT3V-D0163: fix for SDC encoder rd-cost (VSO -> WVSO)
     79
     80#define PKU_QC_DEPTH_INTRA_UNI_D0195      1   // JCT3V-D0195: unified syntax table for depth intra coding tools
     81#define MTK_SAMPLE_BASED_SDC_D0110        1   // JCT3V-D0110: sample based SDC
    7082///// ***** TMVP/AMVP *********
    7183#define TMVP_DEPTH_SWITCH                 1   // JCT3V-B0092 additional encoder option only
     
    8496                                              // QC_C0051_FIXED_BY_MTK             1   // Bug fix for C0051 implementation
    8597                                              // QC_AMVP_MRG_UNIFY_IVCAN_C0051     1
     98#define SEC_TWO_CANDIDATES_FOR_AMVP_D0122 1   // SEC_TWO_CANDIDATES_FOR_AMVP_D0122, fixing # of AMVP candidates 3 to 2
    8699
    87100
     
    95108                                              // FIX_LG_RESTRICTEDRESPRED_M24766   1
    96109
     110#define QC_ARP_D0177            1             ////< advanced residual prediction
     111#if QC_ARP_D0177
     112#define QC_ARP_WFNR                       3
     113#define QC_ARP_WARNING_FIX                1   // Fix warning message for ARP
     114#endif
    97115///// ***** DISPARITY VECTOR DERIVATION *********
    98116#define H3D_NBDV                          1   // Neighboring block disparity derivation
     
    111129                                              // MTK_SIMPLIFY_DVTC_C0135           
    112130                                              // FIX_CHROMA_RESIDUAL_C0129         
     131#define QC_CU_NBDV_D0181                  1
     132
     133#define SEC_DEFAULT_DV_D0112              1
    113134
    114135///// ***** MOTION PARAMETER INHERITANCE  *********
     
    143164#endif
    144165
     166#define SHARP_ILLUCOMP_PARSE_D0060        1   // JCT3V-D0060 Removal of IC's parsing dependency
     167
    145168///// ***** INTERVIEW SKIP *********
    146169#define HHI_INTERVIEW_SKIP                1
     
    159182#define FIX_APPENCTOP_T_ONLY              1   // For Texture-only coding
    160183
     184#define LGE_ROUND_OFFSET_D0135            1   // JCT3V-D0135 Rounding offset
     185#define LGE_SAO_MIGRATION_D0091           1
     186#if LGE_SAO_MIGRATION_D0091
     187#define SAO_SKIP_RIGHT                   1  ///< H1101: disallow using unavailable pixel during RDO
     188#define SAO_ENCODING_CHOICE              1  ///< I0184: picture early termination
     189#if SAO_ENCODING_CHOICE
     190#define SAO_ENCODING_RATE                0.75
     191#define SAO_ENCODING_CHOICE_CHROMA       1 ///< J0044: picture early termination Luma and Chroma are handled separatenly
     192#if SAO_ENCODING_CHOICE_CHROMA
     193#define SAO_ENCODING_RATE_CHROMA         0.5
     194#define SAO_ENCODING_CHOICE_CHROMA_BF    1 ///  K0156: Bug fix for SAO selection consistency
     195#endif
     196#endif
     197#endif
     198
    161199///// ***** FCO  *********
    162200#define FLEX_CODING_ORDER_M23723          1
     
    174212
    175213///// ***** VSP *********
    176 #define MERL_VSP_C0152                    1 // JCT3V-C0152: 1: enable VSP-related tools; 0: disable VSP-related tools
    177                                             // LGE_SIMP_DVP_REFINE_C0112           
    178                                             // MERL_MTK_VSP_DVP_REFINE_C0152_C0131
     214#define MERL_VSP_C0152                       1 // JCT3V-C0152: 1: enable VSP-related tools; 0: disable VSP-related tools
     215                                               // LGE_SIMP_DVP_REFINE_C0112
     216                                               // MERL_MTK_VSP_DVP_REFINE_C0152_C0131
    179217#if MERL_VSP_C0152
    180 #define MERL_VSP_C0152_BugFix_ForNoDepthCase     1// MERL bugfix for test condition of no depth
    181 /*
    182  * Two macros are used to configure combinations of JCT3V-C0152 and JCT3V-C0131
    183  *
    184  *   a) (full) A full JCT3V-C0152 implementation, including JCT3V-C0131
    185  *      #define MERL_VSP_COMPENSATION_C0152          1
    186  *      #define MERL_MTK_VSP_DVP_REFINE_C0152_C0131  1
    187  *
    188  *   b) (mvp2off) For partial JCT3V-C0152 excluding overlaps from JCT3V-C0131
    189  *      #define MERL_VSP_COMPENSATION_C0152          1
    190  *      #define MERL_MTK_VSP_DVP_REFINE_C0152_C0131  0
    191  *
    192  *   c) (nocand) For JCT3V-C0131 only
    193  *      #define MERL_VSP_COMPENSATION_C0152          0
    194  *      #define MERL_MTK_VSP_DVP_REFINE_C0152_C0131  1
    195  */
    196 
    197 #define MERL_VSP_COMPENSATION_C0152          1 // JCT3V-C0152: 1: add VSP merge candidate to merging candidate list; 0: not to add   (nocand).
    198 
     218
     219
     220#define FIX_MERGE_D                          1 // Fix to compile merged version
     221
     222
     223#define MERL_General_Fix                     1// General fix by MERL
     224#define MERL_VSP_C0152_BugFix_ForNoDepthCase 1 // MERL bugfix for test condition of no depth
     225#define QC_BVSP_CleanUP_D0191                    1
     226
     227#define MTK_D0156                 1
     228#define LGE_VSP_INHERIT_D0092     1
     229
     230#define MERL_VSP_COMPENSATION_C0152          1 // JCT3V-C0152: 1: add VSP merge candidate to merging candidate list; 0: not to add (nocand).
    199231
    200232#define MERL_VSP_BLOCKSIZE_C0152             4 // JCT3V-C0152: VSP block size, supported values: 1, 2 and 4.
     233#if MERL_VSP_BLOCKSIZE_C0152 == 1
     234#define MERL_CVSP_D0165                      1 // JCT3V-D0165: 1: enable CVSP; 0: disable CVSP.
     235#else
     236#define MERL_CVSP_D0165                      0 // JCT3V-D0165: 1: enable CVSP; 0: disable CVSP.
     237#endif
     238#if LGE_VSP_INHERIT_D0092
     239#define VSP_MERGE_POS                        3 // JCT3V-C0152: fixed position of VSP candidate in merge list, supported values: 3.
     240#else
    201241#define VSP_MERGE_POS                        5 // JCT3V-C0152: fixed position of VSP candidate in merge list, supported values: 5.
    202                                                //MTK_DVPREFINE_BVSP_BUG_FIX               1
     242#endif                                               // MTK_DVPREFINE_BVSP_BUG_FIX               1
     243#define MTK_DEPTH_TO_DISP_D0138              1 // JCT3V-D0138: Use max among four corners for DoNBDV and BVSP
     244
     245#if MERL_General_Fix
     246#define MTK_LGE_VSP_DEPTH_OFF_D0105_D0139    1 // JCT3V-D0105/JCT3V-D0139: disable VSP for depth map
     247#define MTK_VSP_USING_NBDV_D0105             1 // JCT3V-D0105: use NBDV instead of DoNBDV for BVSP
     248#endif
     249
     250#if MERL_General_Fix
     251#define MERL_VSP_NBDV_RefVId_Fix_D0166       1 // JCT3V-D0166: 1: fix the NBDV with ref view selectioin; 0: always use base view with refViewIdx=0
     252#else
     253#define MERL_VSP_NBDV_RefVId_Fix_D0166       0
     254#endif
     255
     256#if MERL_VSP_NBDV_RefVId_Fix_D0166
     257#define MERL_Bi_VSP_D0166                    1 // JCT3V-D0166: 1: add supporting for Bi-VSP, the code under the macro can also handle uni-direction VSP
     258#else
     259#define MERL_Bi_VSP_D0166                    0
     260#endif
    203261
    204262#else // !MERL_VSP_C0152
    205263#define MERL_VSP_COMPENSATION_C0152          0 // JCT3V-C0152: 1: add VSP merge candidate to merging candidate list; 0: not to add
    206264#define MERL_VSP_BLOCKSIZE_C0152             4 // JCT3V-C0152: VSP block size, supported values: 1, 2 and 4.
    207 #endif
    208 
     265#define MERL_VSP_C0152_BugFix_ForNoDepthCase 0 // MERL bugfix for test condition of no depth
     266#define MERL_CVSP_D0165                      0 // JCT3V-D0165: 1: enable CVSP; 0: disable CVSP.
     267#define MERL_VSP_NBDV_RefVId_Fix_D0166       0 // JCT3V-D0166: 1: fix the NBDV with ref view selectioin; 0: always use base view with refViewIdx=0
     268#define MERL_Bi_VSP_D0166                    0 // JCT3V-D0166: 1: add supporting for Bi-VSP, the code under the macro can also handle uni-direction VSP
     269#define MTK_VSP_USING_NBDV_D0105             0
     270#define MERL_General_Fix                     0
     271#endif
     272
     273#if !MERL_General_Fix
     274#define MTK_LGE_VSP_DEPTH_OFF_D0105_D0139    1 // JCT3V-D0105/JCT3V-D0139: disable VSP for depth map
     275#define MTK_VSP_USING_NBDV_D0105             1 // JCT3V-D0105: use NBDV instead of DoNBDV for BVSP
     276#endif
    209277
    210278///// ***** DERIVED PARAMETERS *********
     
    342410#define C2FLAG_NUMBER               1 // maximum number of largerThan2 flag coded in one chunk:  16 in HM5
    343411
     412#if !LGE_SAO_MIGRATION_D0091
    344413#define REMOVE_SAO_LCU_ENC_CONSTRAINTS_1 0  ///< disable the encoder constraint that does not test SAO/BO mode for chroma in interleaved mode
    345414#define REMOVE_SAO_LCU_ENC_CONSTRAINTS_2 0  ///< disable the encoder constraint that reduce the range of SAO/EO for chroma in interleaved mode
     415#endif
    346416#define REMOVE_SAO_LCU_ENC_CONSTRAINTS_3 0  ///< disable the encoder constraint that conditionally disable SAO for chroma for entire slice in interleaved mode
    347417#define COLLOCATED_REF_IDX      1           ///< H0442: signal collocated reference index
     
    616686  Int         iBestType;
    617687  Int         iLength;
     688#if LGE_SAO_MIGRATION_D0091
     689  Int         subTypeIdx ;                 ///< indicates EO class or BO band position
     690#else
    618691  Int         bandPosition ;
     692#endif
    619693  Int         iOffset[4];
    620694  Int         StartCUX;
     
    646720  Bool       mergeLeftFlag;
    647721  Int        typeIdx;
     722#if LGE_SAO_MIGRATION_D0091
     723  Int        subTypeIdx;
     724#else
    648725  Int        bandPosition;
     726#endif
    649727  Int        offset[4];
     728#if !LGE_SAO_MIGRATION_D0091
    650729  Int        runDiff;
    651730  Int        run;
     731#endif
    652732  Int        partIdx;
    653733  Int        partIdxTmp;
Note: See TracChangeset for help on using the changeset viewer.