Ignore:
Timestamp:
2 Feb 2014, 04:51:29 (11 years ago)
Author:
seregin
Message:

update to HM-13.0

File:
1 edited

Legend:

Unmodified
Added
Removed
  • branches/SHM-5.0-dev/source/Lib/TLibEncoder/TEncSearch.cpp

    r540 r593  
    44 * granted under this license. 
    55 *
    6  * Copyright (c) 2010-2013, ITU/ISO/IEC
     6 * Copyright (c) 2010-2014, ITU/ISO/IEC
    77 * All rights reserved.
    88 *
     
    199199  m_pppcRDSbacCoder     = pppcRDSbacCoder;
    200200  m_pcRDGoOnSbacCoder   = pcRDGoOnSbacCoder;
    201  
    202   m_bUseSBACRD          = pppcRDSbacCoder ? true : false;
    203201 
    204202  for (Int iDir = 0; iDir < 2; iDir++)
     
    11251123  {
    11261124    Int scalingListType = 0 + g_eTTable[(Int)TEXT_LUMA];
    1127     assert(scalingListType < 6);
     1125    assert(scalingListType < SCALING_LIST_NUM);
    11281126    m_pcTrQuant->invtransformNxN( pcCU->getCUTransquantBypass(uiAbsPartIdx), TEXT_LUMA,pcCU->getLumaIntraDir( uiAbsPartIdx ), piResi, uiStride, pcCoeff, uiWidth, uiHeight, scalingListType, useTransformSkip );
    11291127  }
     
    13181316    {
    13191317      Int scalingListType = 0 + g_eTTable[(Int)eText];
    1320       assert(scalingListType < 6);
     1318      assert(scalingListType < SCALING_LIST_NUM);
    13211319      m_pcTrQuant->invtransformNxN( pcCU->getCUTransquantBypass(uiAbsPartIdx), TEXT_CHROMA, REG_DCT, piResi, uiStride, pcCoeff, uiWidth, uiHeight, scalingListType, useTransformSkipChroma );
    13221320    }
     
    14241422  checkTransformSkip         &= (widthTransformSkip == 4 && heightTransformSkip == 4);
    14251423  checkTransformSkip         &= (!pcCU->getCUTransquantBypass(0));
    1426   checkTransformSkip         &= (!((pcCU->getQP( 0 ) == 0) && (pcCU->getSlice()->getSPS()->getUseLossless())));
    14271424  if ( m_pcEncCfg->getUseTransformSkipFast() )
    14281425  {
     
    14341431    {
    14351432      //----- store original entropy coding status -----
    1436       if( m_bUseSBACRD)
    1437       {
    1438         m_pcRDGoOnSbacCoder->store( m_pppcRDSbacCoder[ uiFullDepth ][ CI_QT_TRAFO_ROOT ] );
    1439       }
     1433      m_pcRDGoOnSbacCoder->store( m_pppcRDSbacCoder[ uiFullDepth ][ CI_QT_TRAFO_ROOT ] );
     1434
    14401435      UInt   singleDistYTmp     = 0;
    14411436      UInt   singleDistCTmp     = 0;
     
    15031498          {
    15041499            xStoreIntraResultQT(pcCU, uiTrDepth, uiAbsPartIdx,bLumaOnly );
    1505             if( m_bUseSBACRD)
    1506             {
    1507               m_pcRDGoOnSbacCoder->store( m_pppcRDSbacCoder[ uiFullDepth ][ CI_TEMP_BEST ] );
    1508             }
     1500            m_pcRDGoOnSbacCoder->store( m_pppcRDSbacCoder[ uiFullDepth ][ CI_TEMP_BEST ] );
    15091501          }
    15101502        }
     
    15291521          }
    15301522        }
    1531         if(m_bUseSBACRD)
    1532         {
    1533           m_pcRDGoOnSbacCoder->load( m_pppcRDSbacCoder[ uiFullDepth ][ CI_TEMP_BEST ] );
    1534         }
    1535       }
     1523        m_pcRDGoOnSbacCoder->load( m_pppcRDSbacCoder[ uiFullDepth ][ CI_TEMP_BEST ] );
     1524      }
    15361525
    15371526      if( !bLumaOnly )
     
    15581547      pcCU ->setTransformSkipSubParts ( 0, TEXT_LUMA, uiAbsPartIdx, uiFullDepth );
    15591548      //----- store original entropy coding status -----
    1560       if( m_bUseSBACRD && bCheckSplit )
     1549      if( bCheckSplit )
    15611550      {
    15621551        m_pcRDGoOnSbacCoder->store( m_pppcRDSbacCoder[ uiFullDepth ][ CI_QT_TRAFO_ROOT ] );
     
    15951584  {
    15961585    //----- store full entropy coding status, load original entropy coding status -----
    1597     if( m_bUseSBACRD )
    1598     {
    1599       if( bCheckFull )
    1600       {
    1601         m_pcRDGoOnSbacCoder->store( m_pppcRDSbacCoder[ uiFullDepth ][ CI_QT_TRAFO_TEST ] );
    1602         m_pcRDGoOnSbacCoder->load ( m_pppcRDSbacCoder[ uiFullDepth ][ CI_QT_TRAFO_ROOT ] );
    1603       }
    1604       else
    1605       {
    1606         m_pcRDGoOnSbacCoder->store( m_pppcRDSbacCoder[ uiFullDepth ][ CI_QT_TRAFO_ROOT ] );
    1607       }
    1608     }
     1586    if( bCheckFull )
     1587    {
     1588      m_pcRDGoOnSbacCoder->store( m_pppcRDSbacCoder[ uiFullDepth ][ CI_QT_TRAFO_TEST ] );
     1589      m_pcRDGoOnSbacCoder->load ( m_pppcRDSbacCoder[ uiFullDepth ][ CI_QT_TRAFO_ROOT ] );
     1590    }
     1591    else
     1592    {
     1593      m_pcRDGoOnSbacCoder->store( m_pppcRDSbacCoder[ uiFullDepth ][ CI_QT_TRAFO_ROOT ] );
     1594    }
     1595
    16091596    //----- code splitted block -----
    16101597    Double  dSplitCost      = 0.0;
     
    16471634    }
    16481635    //----- restore context states -----
    1649     if( m_bUseSBACRD )
    1650     {
    1651       m_pcRDGoOnSbacCoder->load ( m_pppcRDSbacCoder[ uiFullDepth ][ CI_QT_TRAFO_ROOT ] );
    1652     }
     1636    m_pcRDGoOnSbacCoder->load ( m_pppcRDSbacCoder[ uiFullDepth ][ CI_QT_TRAFO_ROOT ] );
     1637
    16531638    //----- determine rate and r-d cost -----
    16541639    UInt uiSplitBits = xGetIntraBitsQT( pcCU, uiTrDepth, uiAbsPartIdx, true, !bLumaOnly, false );
     
    16651650    }
    16661651    //----- set entropy coding status -----
    1667     if( m_bUseSBACRD )
    1668     {
    1669       m_pcRDGoOnSbacCoder->load ( m_pppcRDSbacCoder[ uiFullDepth ][ CI_QT_TRAFO_TEST ] );
    1670     }
    1671    
     1652    m_pcRDGoOnSbacCoder->load ( m_pppcRDSbacCoder[ uiFullDepth ][ CI_QT_TRAFO_TEST ] );
     1653
    16721654    //--- set transform index and Cbf values ---
    16731655    pcCU->setTrIdxSubParts( uiTrDepth, uiAbsPartIdx, uiFullDepth );
     
    21942176    {
    21952177        //use RDO to decide whether Cr/Cb takes TS
    2196         if( m_bUseSBACRD )
    2197         {
    2198           m_pcRDGoOnSbacCoder->store( m_pppcRDSbacCoder[uiFullDepth][CI_QT_TRAFO_ROOT] );
    2199         }
     2178        m_pcRDGoOnSbacCoder->store( m_pppcRDSbacCoder[uiFullDepth][CI_QT_TRAFO_ROOT] );
    22002179
    22012180        for(Int chromaId = 0; chromaId < 2; chromaId ++)
     
    22392218
    22402219            if(singleCostTmp < dSingleCost)
     2220          {
     2221            dSingleCost = singleCostTmp;
     2222            singleDistC = singleDistCTmp;
     2223            bestModeId  = chromaModeId;
     2224            singleCbfC  = singleCbfCTmp;
     2225           
     2226            if(bestModeId == firstCheckId)
    22412227            {
    2242               dSingleCost = singleCostTmp;
    2243               singleDistC = singleDistCTmp;
    2244               bestModeId  = chromaModeId;
    2245               singleCbfC  = singleCbfCTmp;
    2246 
    2247               if(bestModeId == firstCheckId)
    2248               {
    2249                 xStoreIntraResultChromaQT(pcCU, uiTrDepth, uiAbsPartIdx,chromaId);
    2250                 if( m_bUseSBACRD)
    2251                 {
    2252                   m_pcRDGoOnSbacCoder->store( m_pppcRDSbacCoder[ uiFullDepth ][ CI_TEMP_BEST ] );
    2253                 }
    2254               }
    2255             }
    2256             if(chromaModeId == firstCheckId)
    2257             {
    2258               m_pcRDGoOnSbacCoder->load ( m_pppcRDSbacCoder[ uiFullDepth ][ CI_QT_TRAFO_ROOT ] );
     2228              xStoreIntraResultChromaQT(pcCU, uiTrDepth, uiAbsPartIdx,chromaId);
     2229              m_pcRDGoOnSbacCoder->store( m_pppcRDSbacCoder[ uiFullDepth ][ CI_TEMP_BEST ] );
    22592230            }
    22602231          }
    2261 
    2262           if(bestModeId == firstCheckId)
     2232          if(chromaModeId == firstCheckId)
    22632233          {
    2264             xLoadIntraResultChromaQT(pcCU, uiTrDepth, uiAbsPartIdx,chromaId);
    2265             pcCU->setCbfSubParts ( singleCbfC << uiTrDepth, (TextType)(chromaId + 2), uiAbsPartIdx, pcCU->getDepth(0) + actualTrDepth );
    2266             if(m_bUseSBACRD)
    2267             {
    2268               m_pcRDGoOnSbacCoder->load( m_pppcRDSbacCoder[ uiFullDepth ][ CI_TEMP_BEST ] );
    2269             }
     2234            m_pcRDGoOnSbacCoder->load ( m_pppcRDSbacCoder[ uiFullDepth ][ CI_QT_TRAFO_ROOT ] );
    22702235          }
    2271           pcCU ->setTransformSkipSubParts( bestModeId, (TextType)(chromaId + 2), uiAbsPartIdx, pcCU->getDepth( 0 ) +  actualTrDepth );
    2272           ruiDist += singleDistC;
    2273 
    2274           if(chromaId == 0)
    2275           {
    2276             if( m_bUseSBACRD )
    2277             {
    2278               m_pcRDGoOnSbacCoder->store( m_pppcRDSbacCoder[uiFullDepth][CI_QT_TRAFO_ROOT] );
    2279             }
    2280           }
    2281         }
     2236        }
     2237       
     2238        if(bestModeId == firstCheckId)
     2239        {
     2240          xLoadIntraResultChromaQT(pcCU, uiTrDepth, uiAbsPartIdx,chromaId);
     2241          pcCU->setCbfSubParts ( singleCbfC << uiTrDepth, (TextType)(chromaId + 2), uiAbsPartIdx, pcCU->getDepth(0) + actualTrDepth );
     2242          m_pcRDGoOnSbacCoder->load( m_pppcRDSbacCoder[ uiFullDepth ][ CI_TEMP_BEST ] );
     2243        }
     2244        pcCU ->setTransformSkipSubParts( bestModeId, (TextType)(chromaId + 2), uiAbsPartIdx, pcCU->getDepth( 0 ) +  actualTrDepth );
     2245        ruiDist += singleDistC;
     2246       
     2247        if(chromaId == 0)
     2248        {
     2249          m_pcRDGoOnSbacCoder->store( m_pppcRDSbacCoder[uiFullDepth][CI_QT_TRAFO_ROOT] );
     2250        }
     2251      }
    22822252    }
    22832253    else
     
    25752545     
    25762546      // set context models
    2577       if( m_bUseSBACRD )
    2578       {
    2579         m_pcRDGoOnSbacCoder->load( m_pppcRDSbacCoder[uiDepth][CI_CURR_BEST] );
    2580       }
     2547      m_pcRDGoOnSbacCoder->load( m_pppcRDSbacCoder[uiDepth][CI_CURR_BEST] );
    25812548     
    25822549      // determine residual for partition
     
    26402607     
    26412608      // set context models
    2642       if( m_bUseSBACRD )
    2643       {
    2644         m_pcRDGoOnSbacCoder->load( m_pppcRDSbacCoder[uiDepth][CI_CURR_BEST] );
    2645       }
     2609      m_pcRDGoOnSbacCoder->load( m_pppcRDSbacCoder[uiDepth][CI_CURR_BEST] );
    26462610     
    26472611      // determine residual for partition
     
    27702734 
    27712735  //===== reset context models =====
    2772   if(m_bUseSBACRD)
    2773   {
    2774     m_pcRDGoOnSbacCoder->load(m_pppcRDSbacCoder[uiDepth][CI_CURR_BEST]);
    2775   }
     2736  m_pcRDGoOnSbacCoder->load(m_pppcRDSbacCoder[uiDepth][CI_CURR_BEST]);
    27762737 
    27772738  //===== set distortion (rate and r-d costs are determined later) =====
     
    28052766  {
    28062767    //----- restore context models -----
    2807     if( m_bUseSBACRD )
    2808     {
    2809       m_pcRDGoOnSbacCoder->load( m_pppcRDSbacCoder[uiDepth][CI_CURR_BEST] );
    2810     }
     2768    m_pcRDGoOnSbacCoder->load( m_pppcRDSbacCoder[uiDepth][CI_CURR_BEST] );
    28112769   
    28122770    //----- chroma coding -----
     
    28142772    pcCU->setChromIntraDirSubParts  ( uiModeList[uiMode], 0, uiDepth );
    28152773    xRecurIntraChromaCodingQT       ( pcCU,   0, 0, pcOrgYuv, pcPredYuv, pcResiYuv, uiDist );
    2816     if( m_bUseSBACRD && pcCU->getSlice()->getPPS()->getUseTransformSkip() )
     2774    if( pcCU->getSlice()->getPPS()->getUseTransformSkip() )
    28172775    {
    28182776      m_pcRDGoOnSbacCoder->load( m_pppcRDSbacCoder[uiDepth][CI_CURR_BEST] );
     
    28462804 
    28472805  //----- restore context models -----
    2848   if( m_bUseSBACRD )
    2849   {
    2850     m_pcRDGoOnSbacCoder->load( m_pppcRDSbacCoder[uiDepth][CI_CURR_BEST] );
    2851   }
     2806  m_pcRDGoOnSbacCoder->load( m_pppcRDSbacCoder[uiDepth][CI_CURR_BEST] );
    28522807}
    28532808
     
    30052960  dCost = m_pcRdCost->calcRdCost( uiBits, uiDistortion );
    30062961
    3007   if(m_bUseSBACRD)
    3008   {
    3009     m_pcRDGoOnSbacCoder->load(m_pppcRDSbacCoder[uiDepth][CI_CURR_BEST]);
    3010   }
     2962  m_pcRDGoOnSbacCoder->load(m_pppcRDSbacCoder[uiDepth][CI_CURR_BEST]);
    30112963
    30122964  pcCU->getTotalBits()       = uiBits;
     
    45744526    + m_pcRdCost->getDistPart(g_bitDepthC, rpcYuvRec->getCrAddr(),   rpcYuvRec->getCStride(), pcYuvOrg->getCrAddr(),   pcYuvOrg->getCStride(), uiWidth >> 1, uiHeight >> 1, TEXT_CHROMA_V );
    45754527
    4576     if( m_bUseSBACRD )
    4577     {
    4578       m_pcRDGoOnSbacCoder->load(m_pppcRDSbacCoder[pcCU->getDepth(0)][CI_CURR_BEST]);
    4579     }
     4528    m_pcRDGoOnSbacCoder->load(m_pppcRDSbacCoder[pcCU->getDepth(0)][CI_CURR_BEST]);
    45804529   
    45814530    m_pcEntropyCoder->resetBits();
     
    45924541    pcCU->getTotalCost()       = m_pcRdCost->calcRdCost( uiBits, uiDistortion );
    45934542   
    4594     if( m_bUseSBACRD )
    4595     {
    4596       m_pcRDGoOnSbacCoder->store(m_pppcRDSbacCoder[pcCU->getDepth(0)][CI_TEMP_BEST]);
    4597     }
     4543    m_pcRDGoOnSbacCoder->store(m_pppcRDSbacCoder[pcCU->getDepth(0)][CI_TEMP_BEST]);
    45984544   
    45994545    pcCU->setCbfSubParts( 0, 0, 0, 0, pcCU->getDepth( 0 ) );
     
    46314577    uiBits = 0;
    46324578    uiDistortion = 0;
    4633     if( m_bUseSBACRD )
    4634     {
    4635       m_pcRDGoOnSbacCoder->load( m_pppcRDSbacCoder[ pcCU->getDepth( 0 ) ][ CI_CURR_BEST ] );
    4636     }
     4579    m_pcRDGoOnSbacCoder->load( m_pppcRDSbacCoder[ pcCU->getDepth( 0 ) ][ CI_CURR_BEST ] );
    46374580   
    46384581    UInt uiZeroDistortion = 0;
     
    46684611    }
    46694612   
    4670     if( m_bUseSBACRD )
    4671     {
    4672       m_pcRDGoOnSbacCoder->load( m_pppcRDSbacCoder[pcCU->getDepth(0)][CI_CURR_BEST] );
    4673     }
     4613    m_pcRDGoOnSbacCoder->load( m_pppcRDSbacCoder[pcCU->getDepth(0)][CI_CURR_BEST] );
    46744614#if 0 // check
    46754615    {
     
    46774617      m_pcEntropyCoder->encodeCoeff( pcCU, 0, pcCU->getDepth(0), pcCU->getWidth(0), pcCU->getHeight(0) );
    46784618      const UInt uiBitsForCoeff = m_pcEntropyCoder->getNumberOfWrittenBits();
    4679       if( m_bUseSBACRD )
    4680       {
    4681         m_pcRDGoOnSbacCoder->load( m_pppcRDSbacCoder[pcCU->getDepth(0)][CI_CURR_BEST] );
    4682       }
     4619      m_pcRDGoOnSbacCoder->load( m_pppcRDSbacCoder[pcCU->getDepth(0)][CI_CURR_BEST] );
    46834620      if( uiBitsForCoeff != uiBits )
    46844621        assert( 0 );
     
    47294666      dCostBest        = dCost;
    47304667      qpBest           = qp;
    4731       if( m_bUseSBACRD )
    4732       {
    4733         m_pcRDGoOnSbacCoder->store( m_pppcRDSbacCoder[ pcCU->getDepth( 0 ) ][ CI_TEMP_BEST ] );
    4734       }
     4668      m_pcRDGoOnSbacCoder->store( m_pppcRDSbacCoder[ pcCU->getDepth( 0 ) ][ CI_TEMP_BEST ] );
    47354669    }
    47364670  }
     
    47404674  if( qpMin != qpMax && qpBest != qpMax )
    47414675  {
    4742     if( m_bUseSBACRD )
    4743     {
    4744       assert( 0 ); // check
    4745       m_pcRDGoOnSbacCoder->load( m_pppcRDSbacCoder[ pcCU->getDepth( 0 ) ][ CI_TEMP_BEST ] );
    4746     }
     4676    assert( 0 ); // check
     4677    m_pcRDGoOnSbacCoder->load( m_pppcRDSbacCoder[ pcCU->getDepth( 0 ) ][ CI_TEMP_BEST ] );
     4678
    47474679    // copy best cbf and trIdx to pcCU
    47484680    const UInt uiQPartNum = pcCU->getPic()->getNumPartInCU() >> (pcCU->getDepth(0) << 1);
     
    48244756  UInt uiBestTransformMode[3] = {0};
    48254757
    4826   if( m_bUseSBACRD )
    4827   {
    4828     m_pcRDGoOnSbacCoder->store( m_pppcRDSbacCoder[ uiDepth ][ CI_QT_TRAFO_ROOT ] );
    4829   }
     4758  m_pcRDGoOnSbacCoder->store( m_pppcRDSbacCoder[ uiDepth ][ CI_QT_TRAFO_ROOT ] );
    48304759 
    48314760  if( bCheckFull )
     
    49654894
    49664895      Int scalingListType = 3 + g_eTTable[(Int)TEXT_LUMA];
    4967       assert(scalingListType < 6);     
     4896      assert(scalingListType < SCALING_LIST_NUM);
    49684897      m_pcTrQuant->invtransformNxN( pcCU->getCUTransquantBypass(uiAbsPartIdx), TEXT_LUMA,REG_DCT, pcResiCurrY, m_pcQTTempTComYuv[uiQTTempAccessLayer].getStride(),  pcCoeffCurrY, trWidth, trHeight, scalingListType );//this is for inter mode only
    49694898     
     
    50384967
    50394968        Int scalingListType = 3 + g_eTTable[(Int)TEXT_CHROMA_U];
    5040         assert(scalingListType < 6);
     4969        assert(scalingListType < SCALING_LIST_NUM);
    50414970        m_pcTrQuant->invtransformNxN( pcCU->getCUTransquantBypass(uiAbsPartIdx), TEXT_CHROMA,REG_DCT, pcResiCurrU, m_pcQTTempTComYuv[uiQTTempAccessLayer].getCStride(), pcCoeffCurrU, trWidthC, trHeightC, scalingListType  );
    50424971       
     
    51085037
    51095038        Int scalingListType = 3 + g_eTTable[(Int)TEXT_CHROMA_V];
    5110         assert(scalingListType < 6);
     5039        assert(scalingListType < SCALING_LIST_NUM);
    51115040        m_pcTrQuant->invtransformNxN( pcCU->getCUTransquantBypass(uiAbsPartIdx), TEXT_CHROMA,REG_DCT, pcResiCurrV, m_pcQTTempTComYuv[uiQTTempAccessLayer].getCStride(), pcCoeffCurrV, trWidthC, trHeightC, scalingListType );
    51125041       
     
    51925121      }
    51935122
    5194       if( m_bUseSBACRD )
    5195       {
    5196         m_pcRDGoOnSbacCoder->load( m_pppcRDSbacCoder[ uiDepth ][ CI_QT_TRAFO_ROOT ] );
    5197       }
     5123      m_pcRDGoOnSbacCoder->load( m_pppcRDSbacCoder[ uiDepth ][ CI_QT_TRAFO_ROOT ] );
    51985124
    51995125      pcCU->setTransformSkipSubParts ( 1, TEXT_LUMA, uiAbsPartIdx, uiDepth );
     
    52345160
    52355161        Int scalingListType = 3 + g_eTTable[(Int)TEXT_LUMA];
    5236         assert(scalingListType < 6);     
     5162        assert(scalingListType < SCALING_LIST_NUM);
    52375163
    52385164        m_pcTrQuant->invtransformNxN( pcCU->getCUTransquantBypass(uiAbsPartIdx), TEXT_LUMA,REG_DCT, pcResiCurrY, m_pcQTTempTComYuv[uiQTTempAccessLayer].getStride(),  pcCoeffCurrY, trWidth, trHeight, scalingListType, true );
     
    52925218      }
    52935219
    5294       if( m_bUseSBACRD )
    5295       {
    5296         m_pcRDGoOnSbacCoder->load( m_pppcRDSbacCoder[ uiDepth ][ CI_QT_TRAFO_ROOT ] );
    5297       }
     5220      m_pcRDGoOnSbacCoder->load( m_pppcRDSbacCoder[ uiDepth ][ CI_QT_TRAFO_ROOT ] );
    52985221
    52995222      pcCU->setTransformSkipSubParts ( 1, TEXT_CHROMA_U, uiAbsPartIdx, pcCU->getDepth(0)+uiTrModeC );
     
    53455268
    53465269        Int scalingListType = 3 + g_eTTable[(Int)TEXT_CHROMA_U];
    5347         assert(scalingListType < 6);
     5270        assert(scalingListType < SCALING_LIST_NUM);
    53485271
    53495272        m_pcTrQuant->invtransformNxN( pcCU->getCUTransquantBypass(uiAbsPartIdx), TEXT_CHROMA,REG_DCT, pcResiCurrU, m_pcQTTempTComYuv[uiQTTempAccessLayer].getCStride(), pcCoeffCurrU, trWidthC, trHeightC, scalingListType, true  );
     
    53875310
    53885311        Int scalingListType = 3 + g_eTTable[(Int)TEXT_CHROMA_V];
    5389         assert(scalingListType < 6);
     5312        assert(scalingListType < SCALING_LIST_NUM);
    53905313
    53915314        m_pcTrQuant->invtransformNxN( pcCU->getCUTransquantBypass(uiAbsPartIdx), TEXT_CHROMA,REG_DCT, pcResiCurrV, m_pcQTTempTComYuv[uiQTTempAccessLayer].getCStride(), pcCoeffCurrV, trWidthC, trHeightC, scalingListType, true );
     
    54235346    }
    54245347
    5425     if( m_bUseSBACRD )
    5426     {
    5427       m_pcRDGoOnSbacCoder->load( m_pppcRDSbacCoder[ uiDepth ][ CI_QT_TRAFO_ROOT ] );
    5428     }
    5429 
     5348    m_pcRDGoOnSbacCoder->load( m_pppcRDSbacCoder[ uiDepth ][ CI_QT_TRAFO_ROOT ] );
    54305349    m_pcEntropyCoder->resetBits();
    54315350
     
    54605379  if( bCheckSplit )
    54615380  {
    5462     if( m_bUseSBACRD && bCheckFull )
     5381    if( bCheckFull )
    54635382    {
    54645383      m_pcRDGoOnSbacCoder->store( m_pppcRDSbacCoder[ uiDepth ][ CI_QT_TRAFO_TEST ] );
     
    54925411    }
    54935412   
    5494     if( m_bUseSBACRD )
    5495     {
    5496       m_pcRDGoOnSbacCoder->load( m_pppcRDSbacCoder[ uiDepth ][ CI_QT_TRAFO_ROOT ] );
    5497     }
     5413    m_pcRDGoOnSbacCoder->load( m_pppcRDSbacCoder[ uiDepth ][ CI_QT_TRAFO_ROOT ] );
    54985414    m_pcEntropyCoder->resetBits();
    54995415   
     
    55235439    }
    55245440    assert( bCheckFull );
    5525     if( m_bUseSBACRD )
    5526     {
    5527       m_pcRDGoOnSbacCoder->load( m_pppcRDSbacCoder[ uiDepth ][ CI_QT_TRAFO_TEST ] );
    5528     }
     5441
     5442    m_pcRDGoOnSbacCoder->load( m_pppcRDSbacCoder[ uiDepth ][ CI_QT_TRAFO_TEST ] );
    55295443  }
    55305444  rdCost += dSingleCost;
     
    57175631UInt TEncSearch::xModeBitsIntra( TComDataCU* pcCU, UInt uiMode, UInt uiPU, UInt uiPartOffset, UInt uiDepth, UInt uiInitTrDepth )
    57185632{
    5719   if( m_bUseSBACRD )
    5720   {
    5721     // Reload only contexts required for coding intra mode information
    5722     m_pcRDGoOnSbacCoder->loadIntraDirModeLuma( m_pppcRDSbacCoder[uiDepth][CI_CURR_BEST] );
    5723   }
     5633  // Reload only contexts required for coding intra mode information
     5634  m_pcRDGoOnSbacCoder->loadIntraDirModeLuma( m_pppcRDSbacCoder[uiDepth][CI_CURR_BEST] );
    57245635 
    57255636  pcCU->setLumaIntraDirSubParts ( uiMode, uiPartOffset, uiDepth + uiInitTrDepth );
     
    60375948}
    60385949
     5950#if SVC_EXTENSION
    60395951#if REF_IDX_ME_ZEROMV
    60405952Void TEncSearch::xPatternSearchFracDIFMv0(TComDataCU* pcCU,
     
    62056117}
    62066118#endif
     6119#endif //SVC_EXTENSION
    62076120
    62086121//! \}
Note: See TracChangeset for help on using the changeset viewer.