Ignore:
Timestamp:
22 Apr 2014, 17:08:54 (10 years ago)
Author:
tech
Message:

Merged 10.2-dev3-HiSilicon@928.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • branches/HTM-10.2-dev0/source/Lib/TLibEncoder/TEncSbac.cpp

    r936 r939  
    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
     
    482482    m_pcBinIf->encodeBin( 1, rcSCModel );
    483483    UInt uiCount = 0;
     484#if QC_SIMP_DELTADC_CODING_H0131
     485    Bool bNoExGo = ( uiSymbol < 3 );
     486
     487    while( --uiSymbol && ++uiCount < 3 )
     488#else
    484489    Bool bNoExGo = (uiSymbol < 13);
    485490
    486491    while( --uiSymbol && ++uiCount < 13 )
     492#endif
    487493    {
    488494      m_pcBinIf->encodeBin( 1, rcSCModel );
     
    520526  for ( Int i = 0; i < iNumBit; i++ )
    521527  {
     528#if MTK_DMM_SIMP_CODE_H0092
     529      m_pcBinIf->encodeBinEP( ( uiTabIdx >> i ) & 1 );
     530#else
    522531    m_pcBinIf->encodeBin( ( uiTabIdx >> i ) & 1, m_cDmm1DataSCModel.get(0, 0, 0) );
     532#endif
    523533  }
    524534}
     
    12331243  if( ( pcCU->getSlice()->getSPS()->getMaxCUWidth() >> pcCU->getDepth( absPartIdx ) ) < 64 ) //DMM and HEVC intra modes are both allowed
    12341244  {
     1245#if LGE_SIMP_DIM_NOT_PRESENT_FLAG_CODING_H0119_H0135
     1246    m_pcBinIf->encodeBin( isDimMode( dir ) ? 0 : 1, m_cAngleFlagSCModel.get( 0, 0, 0 ) );
     1247#else
    12351248    m_pcBinIf->encodeBin( isDimMode( dir ) ? 0 : 1, m_cAngleFlagSCModel.get( 0, 0, pcCU->getCtxAngleFlag( absPartIdx ) ) );
     1249#endif
    12361250  }
    12371251  if( isDimMode( dir ) )
     
    23132327      dimDeltaDC = isDimDeltaDC( dir );
    23142328    }
    2315 
     2329#if MTK_DELTA_DC_FLAG_ONE_CONTEXT_H0084_H0100_H0113
     2330    m_pcBinIf->encodeBin( dimDeltaDC, m_cDdcFlagSCModel.get( 0, 0, 0 ) );
     2331#else
    23162332    m_pcBinIf->encodeBin( dimDeltaDC, m_cDdcFlagSCModel.get( 0, 0, uiNumSegments-1 ) );
     2333#endif
    23172334  }
    23182335  else //all-zero inter SDC is not allowed
Note: See TracChangeset for help on using the changeset viewer.