Changeset 54 in SHVCSoftware for branches/HM-10.0-dev-SHM/source/Lib/TLibEncoder/TEncSbac.cpp
- Timestamp:
- 2 Mar 2013, 09:25:00 (12 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
branches/HM-10.0-dev-SHM/source/Lib/TLibEncoder/TEncSbac.cpp
r51 r54 83 83 , m_cTransformSkipSCModel ( 1, 2, NUM_TRANSFORMSKIP_FLAG_CTX , m_contextModels + m_numContextModels, m_numContextModels) 84 84 , m_CUTransquantBypassFlagSCModel( 1, 1, NUM_CU_TRANSQUANT_BYPASS_FLAG_CTX, m_contextModels + m_numContextModels, m_numContextModels) 85 #if INTRA_BL 86 , m_cIntraBLPredFlagSCModel (1, 1, NUM_INTRA_BL_PRED_CTX , m_contextModels + m_numContextModels, m_numContextModels) 87 #endif 85 88 { 86 89 assert( m_numContextModels <= MAX_NUM_CTX_MOD ); … … 131 134 m_cCUTransSubdivFlagSCModel.initBuffer ( eSliceType, iQp, (UChar*)INIT_TRANS_SUBDIV_FLAG ); 132 135 m_cSaoMergeSCModel.initBuffer ( eSliceType, iQp, (UChar*)INIT_SAO_MERGE_FLAG ); 136 #if INTRA_BL 137 m_cIntraBLPredFlagSCModel.initBuffer ( eSliceType, iQp, (UChar*)INIT_INTRA_BL_PRED_FLAG ); 138 #endif 133 139 m_cSaoTypeIdxSCModel.initBuffer ( eSliceType, iQp, (UChar*)INIT_SAO_TYPE_IDX ); 134 140 m_cTransformSkipSCModel.initBuffer ( eSliceType, iQp, (UChar*)INIT_TRANSFORMSKIP_FLAG ); … … 163 169 curCost = m_cCUSplitFlagSCModel.calcCost ( curSliceType, qp, (UChar*)INIT_SPLIT_FLAG ); 164 170 curCost += m_cCUSkipFlagSCModel.calcCost ( curSliceType, qp, (UChar*)INIT_SKIP_FLAG ); 171 #if INTRA_BL 172 curCost += m_cIntraBLPredFlagSCModel.calcCost ( curSliceType, qp, (UChar*)INIT_INTRA_BL_PRED_FLAG ); 173 #endif 165 174 curCost += m_cCUMergeFlagExtSCModel.calcCost ( curSliceType, qp, (UChar*)INIT_MERGE_FLAG_EXT); 166 175 curCost += m_cCUMergeIdxExtSCModel.calcCost ( curSliceType, qp, (UChar*)INIT_MERGE_IDX_EXT); … … 234 243 m_cCUTransSubdivFlagSCModel.initBuffer ( eSliceType, iQp, (UChar*)INIT_TRANS_SUBDIV_FLAG ); 235 244 m_cSaoMergeSCModel.initBuffer ( eSliceType, iQp, (UChar*)INIT_SAO_MERGE_FLAG ); 245 #if INTRA_BL 246 m_cIntraBLPredFlagSCModel.initBuffer ( eSliceType, iQp, (UChar*)INIT_INTRA_BL_PRED_FLAG ); 247 #endif 236 248 m_cSaoTypeIdxSCModel.initBuffer ( eSliceType, iQp, (UChar*)INIT_SAO_TYPE_IDX ); 237 249 m_cTransformSkipSCModel.initBuffer ( eSliceType, iQp, (UChar*)INIT_TRANSFORMSKIP_FLAG ); … … 416 428 { 417 429 PartSize eSize = pcCU->getPartitionSize( uiAbsPartIdx ); 430 #if INTRA_BL 431 assert( !pcCU->isIntraBL( uiAbsPartIdx ) ); 432 #endif 418 433 if ( pcCU->isIntra( uiAbsPartIdx ) ) 419 434 { … … 1584 1599 this->xCopyContextsFrom(pScr); 1585 1600 } 1601 1602 #if INTRA_BL 1603 /** code intra_bl flag 1604 * \param pcCU 1605 * \param uiAbsPartIdx 1606 * \returns Void 1607 */ 1608 Void TEncSbac::codeIntraBLFlag( TComDataCU* pcCU, UInt uiAbsPartIdx ) 1609 { 1610 // get context function is here 1611 UInt uiSymbol = pcCU->isIntraBL( uiAbsPartIdx ) ? 1 : 0; 1612 1613 UInt uiCtxIntraBL = pcCU->getCtxIntraBLFlag( uiAbsPartIdx ) ; 1614 m_pcBinIf->encodeBin(uiSymbol, m_cIntraBLPredFlagSCModel.get( 0, 0, uiCtxIntraBL )); 1615 1616 DTRACE_CABAC_VL( g_nSymbolCounter++ ); 1617 DTRACE_CABAC_T( "\tuiSymbol: "); 1618 DTRACE_CABAC_V( uiSymbol ); 1619 DTRACE_CABAC_T( "\n"); 1620 } 1621 #endif 1586 1622 //! \}
Note: See TracChangeset for help on using the changeset viewer.