Ignore:
Timestamp:
15 Mar 2013, 05:18:01 (11 years ago)
Author:
lg
Message:

JCT3V-C0223 with Macro FIX_LGE_WP_FOR_3D_C0223 & For texture-only coding Macro FIX_APPENCTOP_T_ONLY

File:
1 edited

Legend:

Unmodified
Added
Removed
  • branches/HTM-6.0-LG/source/Lib/TLibEncoder/TEncSlice.cpp

    r303 r305  
    677677    xCalcACDCParamSlice(pcSlice);
    678678  }
    679 
    680   Bool bWp_explicit = (pcSlice->getSliceType()==P_SLICE && pcSlice->getPPS()->getUseWP()) || (pcSlice->getSliceType()==B_SLICE && pcSlice->getPPS()->getWPBiPredIdc()==1);
    681   Bool bWp_implicit = (pcSlice->getSliceType()==B_SLICE && pcSlice->getPPS()->getWPBiPredIdc()==2);
    682 
    683   if ( bWp_explicit || bWp_implicit )
     679#if FIX_LGE_WP_FOR_3D_C0223
     680  Bool bWp_explicit = (pcSlice->getSliceType()==P_SLICE && pcSlice->getPPS()->getUseWP()) || (pcSlice->getSliceType()==B_SLICE && pcSlice->getPPS()->getWPBiPredIdc());
     681
     682  if ( bWp_explicit )
    684683  {
    685684    //------------------------------------------------------------------------------
     
    690689      printf("Weighted Prediction is not supported with slice mode determined by max number of bins.\n"); exit(0);
    691690    }
     691    xEstimateWPParamSlice( pcSlice );
     692    pcSlice->initWpScaling();
     693#if !FIX_LGE_WP_FOR_3D_C0223 // Interim fix for encoder/decoder mismatch of non-fade sequence
     694    // check WP on/off
     695    xCheckWPEnable( pcSlice );
     696#endif
     697  }
     698#else
     699
     700  Bool bWp_explicit = (pcSlice->getSliceType()==P_SLICE && pcSlice->getPPS()->getUseWP()) || (pcSlice->getSliceType()==B_SLICE && pcSlice->getPPS()->getWPBiPredIdc()==1);
     701  Bool bWp_implicit = (pcSlice->getSliceType()==B_SLICE && pcSlice->getPPS()->getWPBiPredIdc()==2);
     702
     703  if ( bWp_explicit || bWp_implicit )
     704  {
     705    //------------------------------------------------------------------------------
     706    //  Weighted Prediction implemented at Slice level. SliceMode=2 is not supported yet.
     707    //------------------------------------------------------------------------------
     708    if ( pcSlice->getSliceMode()==2 || pcSlice->getEntropySliceMode()==2 )
     709    {
     710      printf("Weighted Prediction is not supported with slice mode determined by max number of bins.\n"); exit(0);
     711    }
    692712
    693713    if( bWp_explicit )
     
    704724    }
    705725  }
    706 
     726#endif
    707727#if ADAPTIVE_QP_SELECTION
    708728  if( m_pcCfg->getUseAdaptQpSelect() )
Note: See TracChangeset for help on using the changeset viewer.