Changeset 909 in 3DVCSoftware


Ignore:
Timestamp:
11 Apr 2014, 11:07:35 (10 years ago)
Author:
mediatek-htm
Message:

H0092 integration

Location:
branches/HTM-10.2-dev3-MediaTek
Files:
1 added
5 edited

Legend:

Unmodified
Added
Removed
  • branches/HTM-10.2-dev3-MediaTek/source/Lib/TLibCommon/TypeDef.h

    r904 r909  
    200200#define MTK_DELTA_DC_FLAG_ONE_CONTEXT_H0084_H0100_H0113     1 // Use only one context for CABAC of delta_dc_flag as in JCTVC-H0084, JCTVC-H0100 and JCTVC-H0113
    201201#define MTK_SDC_FLAG_FIX_H0095            1   // Remove conditional check of PCM flag based on SDC flag, JCTVC-H0095
     202
     203#define MTK_DMM_SIMP_CODE_H0092           1   // Remove CABAC context for DMM1 mode coding
    202204
    203205#define H_3D_INTER_SDC                    1   // INTER SDC, Inter simplified depth coding
  • branches/HTM-10.2-dev3-MediaTek/source/Lib/TLibDecoder/TDecSbac.cpp

    r903 r909  
    8787, m_cDdcDataSCModel           ( 1,             1,               NUM_DDC_DATA_CTX              , m_contextModels + m_numContextModels, m_numContextModels)
    8888, m_cAngleFlagSCModel         ( 1,             1,               NUM_ANGLE_FLAG_CTX            , m_contextModels + m_numContextModels, m_numContextModels)
    89 #if H_3D_DIM_DMM
     89#if H_3D_DIM_DMM && !MTK_DMM_SIMP_CODE_H0092
    9090, m_cDmm1DataSCModel          ( 1,             1,               NUM_DMM1_DATA_CTX             , m_contextModels + m_numContextModels, m_numContextModels)
    9191#endif
     
    171171  m_cDdcDataSCModel.initBuffer           ( sliceType, qp, (UChar*)INIT_DDC_DATA );
    172172  m_cAngleFlagSCModel.initBuffer         ( sliceType, qp, (UChar*)INIT_ANGLE_FLAG );
    173 #if H_3D_DIM_DMM
     173#if H_3D_DIM_DMM && !MTK_DMM_SIMP_CODE_H0092
    174174  m_cDmm1DataSCModel.initBuffer          ( sliceType, qp, (UChar*)INIT_DMM1_DATA );
    175175#endif
     
    241241  m_cDdcDataSCModel.initBuffer           ( eSliceType, iQp, (UChar*)INIT_DDC_DATA );
    242242  m_cAngleFlagSCModel.initBuffer         ( eSliceType, iQp, (UChar*)INIT_ANGLE_FLAG );
    243 #if H_3D_DIM_DMM
     243#if H_3D_DIM_DMM && !MTK_DMM_SIMP_CODE_H0092
    244244  m_cDmm1DataSCModel.initBuffer          ( eSliceType, iQp, (UChar*)INIT_DMM1_DATA );
    245245#endif
     
    423423  for( Int i = 0; i < iNumBit; i++ )
    424424  {
    425     m_pcTDecBinIf->decodeBin( uiSymbol, m_cDmm1DataSCModel.get(0, 0, 0) );
     425#if MTK_DMM_SIMP_CODE_H0092
     426      m_pcTDecBinIf->decodeBinEP( uiSymbol );
     427#else
     428      m_pcTDecBinIf->decodeBin( uiSymbol, m_cDmm1DataSCModel.get(0, 0, 0) );
     429#endif
    426430    uiIdx += uiSymbol << i;
    427431  }
  • branches/HTM-10.2-dev3-MediaTek/source/Lib/TLibDecoder/TDecSbac.h

    r884 r909  
    214214  ContextModel3DBuffer m_cDdcDataSCModel;
    215215  ContextModel3DBuffer m_cAngleFlagSCModel;
    216 #if H_3D_DIM_DMM
     216#if H_3D_DIM_DMM && !MTK_DMM_SIMP_CODE_H0092
    217217  ContextModel3DBuffer m_cDmm1DataSCModel;
    218218#endif
  • branches/HTM-10.2-dev3-MediaTek/source/Lib/TLibEncoder/TEncSbac.cpp

    r903 r909  
    9393, m_cDdcDataSCModel           ( 1,             1,               NUM_DDC_DATA_CTX              , m_contextModels + m_numContextModels, m_numContextModels)
    9494, m_cAngleFlagSCModel         ( 1,             1,               NUM_ANGLE_FLAG_CTX            , m_contextModels + m_numContextModels, m_numContextModels)
    95 #if H_3D_DIM_DMM
     95#if H_3D_DIM_DMM && !MTK_DMM_SIMP_CODE_H0092
    9696, m_cDmm1DataSCModel          ( 1,             1,               NUM_DMM1_DATA_CTX             , m_contextModels + m_numContextModels, m_numContextModels)
    9797#endif
     
    169169  m_cDdcDataSCModel.initBuffer           ( eSliceType, iQp, (UChar*)INIT_DDC_DATA );
    170170  m_cAngleFlagSCModel.initBuffer         ( eSliceType, iQp, (UChar*)INIT_ANGLE_FLAG );
    171 #if H_3D_DIM_DMM
     171#if H_3D_DIM_DMM && !MTK_DMM_SIMP_CODE_H0092
    172172  m_cDmm1DataSCModel.initBuffer          ( eSliceType, iQp, (UChar*)INIT_DMM1_DATA );
    173173#endif
     
    255255      curCost += m_cDdcDataSCModel.calcCost           ( curSliceType, qp, (UChar*)INIT_DDC_DATA );
    256256      curCost += m_cAngleFlagSCModel.calcCost         ( curSliceType, qp, (UChar*)INIT_ANGLE_FLAG ); 
    257 #if H_3D_DIM_DMM
     257#if H_3D_DIM_DMM && !MTK_DMM_SIMP_CODE_H0092
    258258      curCost += m_cDmm1DataSCModel.calcCost          ( curSliceType, qp, (UChar*)INIT_DMM1_DATA );
    259259#endif
     
    319319  m_cDdcDataSCModel.initBuffer           ( eSliceType, iQp, (UChar*)INIT_DDC_DATA );
    320320  m_cAngleFlagSCModel.initBuffer         ( eSliceType, iQp, (UChar*)INIT_ANGLE_FLAG );
    321 #if H_3D_DIM_DMM
     321#if H_3D_DIM_DMM && !MTK_DMM_SIMP_CODE_H0092
    322322  m_cDmm1DataSCModel.initBuffer          ( eSliceType, iQp, (UChar*)INIT_DMM1_DATA );
    323323#endif
     
    520520  for ( Int i = 0; i < iNumBit; i++ )
    521521  {
    522     m_pcBinIf->encodeBin( ( uiTabIdx >> i ) & 1, m_cDmm1DataSCModel.get(0, 0, 0) );
     522#if MTK_DMM_SIMP_CODE_H0092
     523      m_pcBinIf->encodeBinEP( ( uiTabIdx >> i ) & 1 );
     524#else
     525      m_pcBinIf->encodeBin( ( uiTabIdx >> i ) & 1, m_cDmm1DataSCModel.get(0, 0, 0) );
     526#endif
    523527  }
    524528}
  • branches/HTM-10.2-dev3-MediaTek/source/Lib/TLibEncoder/TEncSbac.h

    r884 r909  
    258258  ContextModel3DBuffer m_cDdcDataSCModel;
    259259  ContextModel3DBuffer m_cAngleFlagSCModel;
    260 #if H_3D_DIM_DMM
     260#if H_3D_DIM_DMM && !MTK_DMM_SIMP_CODE_H0092
    261261  ContextModel3DBuffer m_cDmm1DataSCModel;
    262262#endif
Note: See TracChangeset for help on using the changeset viewer.