Ignore:
Timestamp:
22 May 2013, 21:05:43 (11 years ago)
Author:
tech
Message:

Merged HTM-6.2-dev3-RWTH-Fix Rev. 415

File:
1 edited

Legend:

Unmodified
Added
Removed
  • branches/HTM-6.2-dev0/source/Lib/TLibEncoder/TEncSearch.cpp

    r427 r433  
    912912      if( uiAbsPartIdx == 0 )
    913913      {
    914         m_pcEntropyCoder->encodeIntraDirModeLuma ( pcCU, 0 );
     914        m_pcEntropyCoder->encodeIntraDirModeLuma ( pcCU, 0
     915#if PKU_QC_DEPTH_INTRA_UNI_D0195
     916         ,true
     917#endif
     918          );
    915919      }
    916920    }
     
    17051709      UChar ucSegment = pMask?(UChar)pMask[uiX]:0;
    17061710      assert( ucSegment < uiNumSegments );
     1711#if MTK_SAMPLE_BASED_SDC_D0110     
     1712      Pel pResiDC = apDCResiValues[ucSegment];
    17071713     
     1714      pReco    [ uiX ] = Clip( pPred[ uiX ] + pResiDC );
     1715#else
    17081716      Pel pPredVal= apDCPredValues[ucSegment];
    17091717      Pel pResiDC = apDCResiValues[ucSegment];
    17101718     
    17111719      pReco    [ uiX ] = Clip( pPredVal + pResiDC );
     1720#endif
    17121721      pRecIPred[ uiX ] = pReco[ uiX ];
    17131722    }
     
    17391748  if ( m_pcRdCost->getUseVSO() )
    17401749  {
     1750#if FIX_SDC_ENC_RD_WVSO_D0163 && LGE_WVSO_A0119
     1751    if ( m_pcRdCost->getUseWVSO() )
     1752    {   
     1753      Int iDWeight = m_pcRdCost->getDWeight() * m_pcRdCost->getDWeight();
     1754      Int iVSOWeight = m_pcRdCost->getVSOWeight() * m_pcRdCost->getVSOWeight();
     1755      Dist iD = (Dist) m_pcRdCost->getDistPart( piReco, uiStride, piOrg, uiStride, uiWidth, uiHeight );
     1756      Dist iVSO = m_pcRdCost->getDistVS  ( pcCU, uiAbsPartIdx, piReco, uiStride, piOrg, uiStride, uiWidth, uiHeight, false, 0 );
     1757      ruiDist += (iDWeight * iD + iVSOWeight * iVSO) / ( iDWeight + iVSOWeight);
     1758    }
     1759    else
     1760#endif
    17411761    ruiDist = m_pcRdCost->getDistVS  ( pcCU, uiAbsPartIdx, piReco, uiStride, piOrg, uiStride, uiWidth, uiHeight, false, 0 );
    17421762  }
     
    17551775 
    17561776  // encode pred direction + residual data
    1757   m_pcEntropyCoder->encodePredInfo( pcCU, 0, true );
    1758  
     1777  m_pcEntropyCoder->encodePredInfo( pcCU, 0, true
     1778#if PKU_QC_DEPTH_INTRA_UNI_D0195
     1779    ,true
     1780#endif
     1781    );
    17591782  UInt   uiBits = m_pcEntropyCoder->getNumberOfWrittenBits();
    17601783 
     
    59976020    // Reload only contexts required for coding intra mode information
    59986021    m_pcRDGoOnSbacCoder->loadIntraDirModeLuma( m_pppcRDSbacCoder[uiDepth][CI_CURR_BEST] );
     6022#if PKU_QC_DEPTH_INTRA_UNI_D0195
     6023    m_pcRDGoOnSbacCoder->loadDepthMode( m_pppcRDSbacCoder[uiDepth][CI_CURR_BEST] );
     6024#endif
    59996025  }
    60006026 
     
    60026028 
    60036029  m_pcEntropyCoder->resetBits();
    6004   m_pcEntropyCoder->encodeIntraDirModeLuma ( pcCU, uiPartOffset);
     6030  m_pcEntropyCoder->encodeIntraDirModeLuma ( pcCU, uiPartOffset
     6031#if PKU_QC_DEPTH_INTRA_UNI_D0195
     6032    ,true
     6033#endif
     6034    );
    60056035 
    60066036  return m_pcEntropyCoder->getNumberOfWrittenBits();
     
    64126442  Int iMaskStride = ( uiWidth<<1 ) + 1;
    64136443  piMask += iMaskStride+1;
     6444#if QC_DC_PREDICTOR_D0183
     6445  getPredDCs( pcWedgelet->getPattern(), pcWedgelet->getStride(), piMask, iMaskStride, iPredDC1, iPredDC2 );
     6446#else
    64146447  getWedgePredDCs( pcWedgelet, piMask, iMaskStride, iPredDC1, iPredDC2, bAboveAvail, bLeftAvail );
     6448#endif
    64156449
    64166450  riDeltaDC1 = iDC1 - iPredDC1;
     
    65896623#endif
    65906624
     6625#if HHI_DELTADC_DLT_D0035
     6626  riDeltaDC1 = (Int)GetDepthValue2Idx( Clip(iPredDC1 + riDeltaDC1) ) - (Int)GetDepthValue2Idx( iPredDC1 );
     6627  riDeltaDC2 = (Int)GetDepthValue2Idx( Clip(iPredDC2 + riDeltaDC2) ) - (Int)GetDepthValue2Idx( iPredDC2 );
     6628#endif
    65916629}
    65926630#endif
     
    79738011
    79748012  // PredDC Calculation
     8013#if QC_DC_PREDICTOR_D0183
     8014  getPredDCs( pbRegion, uiWidth, piMask+iMaskStride+1, iMaskStride, iPredDC0, iPredDC1 );
     8015#else
    79758016  {
    79768017    UInt uiSum0 = 0;
     
    80128053    iPredDC1 = uiSum1 / uiCount1;
    80138054  }
     8055#endif
    80148056
    80158057  iDeltaDC0 = iDC0 - iPredDC0;
Note: See TracChangeset for help on using the changeset viewer.