Changeset 976 in 3DVCSoftware for trunk/source/Lib/TLibEncoder


Ignore:
Timestamp:
7 Jul 2014, 17:27:51 (11 years ago)
Author:
tech
Message:
  • Merged 11.1-dev0@975. (Clean ups)
  • Added coding results.
  • Changed version number.
Location:
trunk/source/Lib/TLibEncoder
Files:
10 edited

Legend:

Unmodified
Added
Removed
  • trunk/source/Lib/TLibEncoder/TEncCavlc.cpp

    r964 r976  
    273273  WRITE_FLAG( pcPPS->getSliceHeaderExtensionPresentFlag() ? 1 : 0, "slice_segment_header_extension_present_flag");
    274274
    275   #if MTK_DLT_CODING_FIX_H0091
     275  #if H_3D
    276276    if(( !pcPPS->getSPS()->getVPS()->getDepthId( pcPPS->getSPS()->getLayerId() ) )||
    277277        pcPPS->getLayerId() != 1  )
    278278    {
    279 #if H_MV_HLS_8_SPS_NODOC_48
    280279      pcPPS->setPps3dExtensionFlag( false );
    281 #else
    282       pcPPS->setPpsExtensionTypeFlag( PPS_EX_T_3D, false );
    283 #endif
    284280    }
    285281  #endif
     
    290286  WRITE_FLAG( 1, "pps_extension_present_flag" );
    291287
    292 #if H_MV_HLS_8_SPS_NODOC_48
    293288    WRITE_FLAG( pcPPS->getPpsRangeExtensionsFlag( ) ? 1 : 0 , "pps_range_extensions_flag" );
    294289    WRITE_FLAG( pcPPS->getPpsMultilayerExtensionFlag( ) ? 1 : 0 , "pps_multilayer_extension_flag" );
     
    307302    {
    308303      WRITE_FLAG( pcPPS->getPocResetInfoPresentFlag( ) ? 1 : 0 , "poc_reset_info_present_flag" );
    309 #if H_MV_HLS_8_PPS_NODOC_NN
    310304      WRITE_FLAG( 0, "pps_extension_reserved_zero_flag" );
    311 #endif
    312305    }
    313306
     
    318311    }
    319312#endif
    320 #else
    321   for ( Int i = 0; i < PPS_EX_T_MAX_NUM; i++ )
    322   {
    323     WRITE_FLAG( pcPPS->getPpsExtensionTypeFlag( i ) ? 1 : 0 , "pps_extension_type_flag" );
    324 #if H_3D
    325     assert( !pcPPS->getPpsExtensionTypeFlag( i ) || i == PPS_EX_T_MV || i == PPS_EX_T_3D || i == PPS_EX_T_ESC );
    326 #else
    327     assert( !pcPPS->getPpsExtensionTypeFlag( i ) || i == PPS_EX_T_MV || i == PPS_EX_T_ESC );
    328 #endif
    329   }
    330 
    331   if( pcPPS->getPpsExtensionTypeFlag( PPS_EX_T_MV ) )
    332   {
    333     WRITE_FLAG( pcPPS->getPocResetInfoPresentFlag( ) ? 1 : 0 , "poc_reset_info_present_flag" );
    334   }
    335 
    336 #if H_3D
    337   if( pcPPS->getPpsExtensionTypeFlag( PPS_EX_T_3D ) ) // This probably needs to be aligned with Rext and SHVC
    338   {
    339     codePPSExtension( pcPPS );
    340   }
    341 #endif
    342 #endif
    343 
    344313#endif
    345314
     
    861830  if ( pcSPS->getSpsExtensionPresentFlag() )
    862831  {
    863 #if H_MV_HLS_8_SPS_NODOC_48
    864832    WRITE_FLAG( pcSPS->getSpsRangeExtensionsFlag( ) ? 1 : 0 , "sps_range_extensions_flag" );
    865833    WRITE_FLAG( pcSPS->getSpsMultilayerExtensionFlag( ) ? 1 : 0 , "sps_multilayer_extension_flag" );
    866834#if !H_3D
    867     WRITE_CODE( pcSPS->getSpsExtension6bits( ), 6, "sps_extension_6bits" );
     835    WRITE_CODE( pcSPS->getSpsExtension6bits( ), 6, "sps_extension_6bits" ); 
    868836#else
    869837    WRITE_FLAG( pcSPS->getSps3dExtensionFlag( ) ? 1 : 0 , "sps_3d_extension_flag" );
    870838    WRITE_CODE( pcSPS->getSpsExtension5bits( ), 5, "sps_extension_5bits" );
    871839#endif
    872  }
     840  }
    873841
    874842  if ( pcSPS->getSpsRangeExtensionsFlag() )
     
    889857
    890858#endif
    891 #else
    892     for (Int i = 0; i < PS_EX_T_MAX_NUM; i++)
    893     {
    894       WRITE_FLAG( pcSPS->getSpsExtensionTypeFlag( i ) ? 1 : 0 , "sps_extension_type_flag" );
    895 #if H_3D
    896       assert( !pcSPS->getSpsExtensionTypeFlag( i ) || i == PS_EX_T_MV || i == PS_EX_T_3D );
    897 #else
    898       assert( !pcSPS->getSpsExtensionTypeFlag( i ) || i == PS_EX_T_MV );
    899 #endif
    900     } 
    901 
    902     if( pcSPS->getSpsExtensionTypeFlag( PS_EX_T_MV ))
    903     {
    904       codeSPSExtension( pcSPS );
    905     }
    906 
    907 #if H_3D
    908     if( pcSPS->getSpsExtensionTypeFlag( PS_EX_T_3D ))
    909     {
    910       codeSPSExtension2( pcSPS, viewIndex, depthFlag );
    911     }
    912 #endif
    913   }
    914 #endif
    915 #endif
     859#endif
     860
    916861}
    917862
     
    955900{
    956901  WRITE_CODE( pcVPS->getVPSId(),                    4,        "vps_video_parameter_set_id" );
    957 #if H_MV_HLS_8_SYN_Q0041_03
     902#if H_MV
    958903  WRITE_FLAG( pcVPS->getVpsBaseLayerInternalFlag( ) ? 1 : 0 , "vps_base_layer_internal_flag" );
    959904  WRITE_FLAG( 1                                             , "vps_reserved_one_bit" );
     
    1042987  }
    1043988#if H_MV
    1044 #if H_MV_HLS_8_RPS_Q0100_36
    1045989  WRITE_FLAG( pcVPS->getVpsExtensionFlag(),                     "vps_extension_flag" );
    1046 #else
    1047   WRITE_FLAG( 1,                     "vps_extension_flag" );
    1048 #endif
    1049990  m_pcBitIf->writeAlignOne();
    1050991  codeVPSExtension( pcVPS );                           
     
    10691010#if H_MV
    10701011Void TEncCavlc::codeVPSExtension( TComVPS *pcVPS )
    1071 {
    1072  
    1073 #if !H_MV_HLS_8_SYN_Q0041_03
    1074   WRITE_FLAG( pcVPS->getAvcBaseLayerFlag() ? 1 : 0,          "avc_base_layer_flag" );
    1075 #endif
    1076 
     1012
    10771013  WRITE_FLAG( pcVPS->getSplittingFlag() ? 1 : 0,             "splitting_flag" );
    10781014
     
    11871123  }
    11881124
    1189 #if H_MV_HLS_8_SYN_39_19
    11901125  if ( pcVPS->getNumIndependentLayers() > 1 )
    11911126  {
     
    12041139    WRITE_CODE( pcVPS->getDefaultOutputLayerIdc( ), 2, "default_output_layer_idc" );
    12051140  }
    1206 #else
    1207   WRITE_UVLC( pcVPS->getNumAddLayerSets( ), "num_add_layer_sets" );
    1208 
    1209   if( pcVPS->getNumOutputLayerSets() > 1)
    1210   {
    1211     WRITE_CODE( pcVPS->getDefaultOutputLayerIdc( ), 2, "default_output_layer_idc" );
    1212   } 
    1213 #endif
    12141141
    12151142  assert( pcVPS->getOutputLayerFlag(0, 0) == pcVPS->inferOutputLayerFlag( 0, 0 ));
     
    12211148  for( Int i = 1; i < pcVPS->getNumOutputLayerSets( ); i++ )
    12221149  {
    1223 #if H_MV_HLS_8_SYN_39_19
    12241150    if( i >= pcVPS->getNumLayerSets( ) )   
    1225 #else
    1226     if( i > pcVPS->getVpsNumLayerSetsMinus1( ) )   
    1227 #endif
    12281151    {     
    12291152      WRITE_UVLC( pcVPS->getLayerSetIdxForOlsMinus1( i ),      "layer_set_idx_for_ols_minus1[i]" );
     
    12561179  }
    12571180
    1258 #if !H_MV_HLS_8_PMS_Q0195_20
    1259   WRITE_FLAG( pcVPS->getRepFormatIdxPresentFlag( ) ? 1 : 0 , "rep_format_idx_present_flag" );
    1260   if ( pcVPS->getRepFormatIdxPresentFlag() )
    1261   {
    1262     WRITE_UVLC( pcVPS->getVpsNumRepFormatsMinus1( ), "vps_num_rep_formats_minus1" );
    1263   }
    1264 #else
    12651181  WRITE_UVLC( pcVPS->getVpsNumRepFormatsMinus1( ), "vps_num_rep_formats_minus1" );
    1266 #endif
    12671182
    12681183  for (Int i = 0; i <= pcVPS->getVpsNumRepFormatsMinus1(); i++ )
     
    12751190  }
    12761191
    1277 #if H_MV_HLS_8_PMS_Q0195_20
    12781192  if ( pcVPS->getVpsNumRepFormatsMinus1() > 0 )
    12791193  {
    12801194    WRITE_FLAG( pcVPS->getRepFormatIdxPresentFlag( ) ? 1 : 0 , "rep_format_idx_present_flag" );
    12811195  }
    1282 #endif
     1196
    12831197  if( pcVPS->getRepFormatIdxPresentFlag() )
    12841198  {
    1285 #if H_MV_HLS_8_SYN_Q0041_03
    12861199    for( Int i = pcVPS->getVpsBaseLayerInternalFlag() ? 1 : 0; i <=  pcVPS->getMaxLayersMinus1(); i++ )
    1287 #else
    1288     for( Int i = 1; i <=  pcVPS->getMaxLayersMinus1(); i++ )
    1289 #endif
    1290     {
    1291 #if !H_MV_HLS_8_PMS_Q0195_20
    1292       if( pcVPS->getVpsNumRepFormatsMinus1() > 0 )
    1293       {
    1294 #endif
     1200    {
    12951201        WRITE_CODE( pcVPS->getVpsRepFormatIdx(i), pcVPS->getVpsRepFormatIdxLen(), "vps_rep_format_idx[i]" );
    1296 #if !H_MV_HLS_8_PMS_Q0195_20
    1297       }
    1298 #endif
    1299     }
    1300   }
    1301 #if H_MV_HLS_8_PMS_Q0195_20
     1202    }
     1203  }
    13021204  else
    13031205  {
    1304 #if H_MV_HLS_8_SYN_Q0041_03
    13051206    for( Int i = pcVPS->getVpsBaseLayerInternalFlag() ? 1 : 0; i <=  pcVPS->getMaxLayersMinus1(); i++ )
    1306 #else
    1307     for( Int i = 1; i <=  pcVPS->getMaxLayersMinus1(); i++ )
    1308 #endif
    13091207    {
    13101208      assert( pcVPS->getVpsRepFormatIdx( i ) ==  pcVPS->inferVpsRepFormatIdx( i ) );
    13111209    }
    13121210  }
    1313 #endif
    1314 
    13151211
    13161212  WRITE_FLAG( pcVPS->getMaxOneActiveRefLayerFlag( ) ? 1 : 0, "max_one_active_ref_layer_flag" );
     
    13371233  }
    13381234
    1339 #if H_MV_HLS_8_SYN_Q0041_03
    13401235  for( Int i = pcVPS->getVpsBaseLayerInternalFlag() ?  1 : 2; i <= pcVPS->getMaxLayersMinus1(); i++ )
    13411236  {
    13421237    for( Int j = pcVPS->getVpsBaseLayerInternalFlag() ?  0 : 1; j < i; j++ )
    1343 #else
    1344   for( Int i = 1; i <= pcVPS->getMaxLayersMinus1(); i++ )
    1345   {
    1346     for( Int j = 0; j < i; j++ )
    1347 #endif
    13481238    {
    13491239      if (pcVPS->getDirectDependencyFlag( i, j) )
     
    13661256
    13671257
    1368 WRITE_FLAG( pcVPS->getVpsVuiPresentFlag() ? 1 : 0 , "vps_vui_present_flag" );
     1258  WRITE_FLAG( pcVPS->getVpsVuiPresentFlag() ? 1 : 0 , "vps_vui_present_flag" );
    13691259  if( pcVPS->getVpsVuiPresentFlag() )
    13701260  {
     
    13971287  for( Int i = 1; i < vps->getNumOutputLayerSets(); i++ )
    13981288  { 
    1399 #if H_MV_HLS_8_MIS_Q0102_30
    14001289    Int currLsIdx = vps->olsIdxToLsIdx( i );
    1401 #endif
    14021290    WRITE_FLAG( dpbSize->getSubLayerFlagInfoPresentFlag( i ) ? 1 : 0 , "sub_layer_flag_info_present_flag" );
    1403 #if H_MV_HLS_8_MIS_Q0102_30
    14041291    for( Int j = 0; j  <=  vps->getMaxSubLayersInLayerSetMinus1( currLsIdx ); j++ )
    1405 #else
    1406     for( Int j = 0; j  <=  vps->getMaxSubLayersInLayerSetMinus1( i ); j++ )
    1407 #endif
    14081292    { 
    14091293      if( j > 0  &&  dpbSize->getSubLayerDpbInfoPresentFlag( i, j )  ) 
     
    14131297      if( dpbSize->getSubLayerDpbInfoPresentFlag( i, j ) )
    14141298      { 
    1415 #if H_MV_HLS_8_MIS_Q0102_30
    14161299        for( Int k = 0; k < vps->getNumLayersInIdList( currLsIdx ); k++ )   
    1417 #else
    1418         for( Int k = 0; k < vps->getNumSubDpbs( vps->olsIdxToLsIdx( i )); k++ )   
    1419 #endif
    14201300        {
    14211301          WRITE_UVLC( dpbSize->getMaxVpsDecPicBufferingMinus1( i, k, j ), "max_vps_dec_pic_buffering_minus1" );
     
    14281308        if ( j > 0 )
    14291309        {
    1430 #if H_MV_HLS_8_DBP_NODOC_42
    14311310          for( Int k = 0; k < vps->getNumLayersInIdList( vps->olsIdxToLsIdx( i ) ); k++ )   
    1432 #else
    1433           for( Int k = 0; k < vps->getNumSubDpbs( vps->olsIdxToLsIdx( i ) ); k++ )   
    1434 #endif
    14351311          {
    14361312            assert( dpbSize->getMaxVpsDecPicBufferingMinus1( i, k, j ) == dpbSize->getMaxVpsDecPicBufferingMinus1( i,k, j - 1 ) );
     
    14931369  if( pcVPSVUI->getBitRatePresentVpsFlag( )  ||  pcVPSVUI->getPicRatePresentVpsFlag( ) )
    14941370  {
    1495 #if H_MV_HLS_8_SYN_Q0041_03
    14961371    for( Int i = pcVPS->getVpsBaseLayerInternalFlag() ? 0 : 1; i  <=  pcVPS->getVpsNumLayerSetsMinus1(); i++ )
    1497 #else
    1498     for( Int i = 0; i  <=  pcVPS->getVpsNumLayerSetsMinus1(); i++ )
    1499 #endif
    1500     {
    1501 #if H_MV_HLS_8_MIS_Q0102_30
     1372    {
    15021373      for( Int j = 0; j  <=  pcVPS->getMaxSubLayersInLayerSetMinus1( i ); j++ )
    1503 #else         
    1504       for( Int j = 0; j  <=  pcVPS->getMaxTLayers(); j++ )
    1505 #endif
    15061374      {
    15071375        if( pcVPSVUI->getBitRatePresentVpsFlag( ) )
     
    15631431  if( !pcVPSVUI->getTilesNotInUseFlag() )
    15641432  {     
    1565 #if H_MV_HLS_8_SYN_Q0041_03
    15661433    for( Int i = pcVPS->getVpsBaseLayerInternalFlag() ? 0 : 1; i  <=  pcVPS->getMaxLayersMinus1(); i++ )
    1567 #else
    1568     for( Int i = 0; i  <=  pcVPS->getMaxLayersMinus1(); i++ )
    1569 #endif
    15701434    {
    15711435      WRITE_FLAG( pcVPSVUI->getTilesInUseFlag( i ) ? 1 : 0 , "tiles_in_use_flag[i]" );
     
    15751439      }
    15761440    } 
    1577 #if H_MV_HLS_8_SYN_Q0041_03
    15781441    for( Int i = pcVPS->getVpsBaseLayerInternalFlag() ? 1 : 2; i  <=  pcVPS->getMaxLayersMinus1(); i++ ) 
    1579 #else
    1580     for( Int i = 1; i  <=  pcVPS->getMaxLayersMinus1(); i++ ) 
    1581 #endif
    15821442    {
    15831443      for( Int j = 0; j < pcVPS->getNumDirectRefLayers( pcVPS->getLayerIdInNuh( i ) ) ; j++ )
     
    16101470      for( Int j = 0; j < pcVPS->getNumDirectRefLayers( pcVPS->getLayerIdInNuh( i ) ); j++ )
    16111471      {
    1612 #if H_MV_HLS_8_SYN_Q0041_03
    16131472        if( pcVPS->getVpsBaseLayerInternalFlag() || pcVPS->getRefLayerId( pcVPS->getLayerIdInNuh( i ), j ) > 0 )
    16141473        {       
    1615 #endif
    1616         WRITE_UVLC( pcVPSVUI->getMinSpatialSegmentOffsetPlus1( i, j ), "min_spatial_segment_offset_plus1" );
    1617         if( pcVPSVUI->getMinSpatialSegmentOffsetPlus1( i, j ) > 0 )
    1618         {
    1619           WRITE_FLAG( pcVPSVUI->getCtuBasedOffsetEnabledFlag( i, j ) ? 1 : 0 , "ctu_based_offset_enabled_flag" );
    1620           if( pcVPSVUI->getCtuBasedOffsetEnabledFlag( i, j ) )
     1474          WRITE_UVLC( pcVPSVUI->getMinSpatialSegmentOffsetPlus1( i, j ), "min_spatial_segment_offset_plus1" );
     1475          if( pcVPSVUI->getMinSpatialSegmentOffsetPlus1( i, j ) > 0 )
    16211476          {
    1622             WRITE_UVLC( pcVPSVUI->getMinHorizontalCtuOffsetPlus1( i, j ), "min_horizontal_ctu_offset_plus1" );
     1477            WRITE_FLAG( pcVPSVUI->getCtuBasedOffsetEnabledFlag( i, j ) ? 1 : 0 , "ctu_based_offset_enabled_flag" );
     1478            if( pcVPSVUI->getCtuBasedOffsetEnabledFlag( i, j ) )
     1479            {
     1480              WRITE_UVLC( pcVPSVUI->getMinHorizontalCtuOffsetPlus1( i, j ), "min_horizontal_ctu_offset_plus1" );
     1481            }
    16231482          }
    16241483        }
    1625 #if H_MV_HLS_8_SYN_Q0041_03
    1626         }
    1627 #endif
    16281484      }
    16291485    }
     
    16731529    for( Int i = 0; i < vpsVuiBspHrdP->getNumBitstreamPartitions( h ); i++ ) 
    16741530    {
    1675 #if H_MV_HLS_8_HRD_Q0101_04
    16761531      for( Int j = 0; j < pcVPS->getNumLayersInIdList( h ); j++ ) 
    16771532      {
    16781533        WRITE_FLAG( vpsVuiBspHrdP->getLayerInBspFlag( h, i, j ) ? 1 : 0 , "layer_in_bsp_flag" );
    1679 #else
    1680       for( Int j = 0; j <= pcVPS->getMaxLayersMinus1(); j++ ) 
    1681       {
    1682         if( pcVPS->getLayerIdIncludedFlag( h ,j ) )
    1683         {
    1684           WRITE_FLAG( vpsVuiBspHrdP->getLayerInBspFlag( h, i, j ) ? 1 : 0 , "layer_in_bsp_flag" );
    1685         }
    1686         else
    1687         {
    1688           vpsVuiBspHrdP->setLayerInBspFlag( h, i, j, false ); // This inference seems to be missing in spec
    1689         }
    1690 #endif
    16911534      }
    16921535    }
     
    16961539    {
    16971540      WRITE_UVLC( vpsVuiBspHrdP->getNumBspSchedCombinationsMinus1( h ), "num_bsp_sched_combinations_minus1" );
    1698 #if H_MV_HLS_8_HRD_Q0182_05
    16991541      for( Int i = 0; i <= vpsVuiBspHrdP->getNumBspSchedCombinationsMinus1( h ); i++ )
    1700 #else
    1701       for( Int i = 0; i < vpsVuiBspHrdP->getNumBspSchedCombinationsMinus1( h ); i++ )
    1702 #endif
    17031542      {
    17041543        for( Int j = 0; j < vpsVuiBspHrdP->getNumBitstreamPartitions( h ); j++ )
    17051544        { 
    1706 #if H_MV_HLS_8_HRD_Q0101_04
    17071545          WRITE_CODE( vpsVuiBspHrdP->getBspCombHrdIdx( h, i, j ),  vpsVuiBspHrdP->getBspCombHrdIdxLen(), "bsp_comb_hrd_idx" );
    1708 #else
    1709           WRITE_UVLC( vpsVuiBspHrdP->getBspCombHrdIdx( h, i, j ), "bsp_comb_hrd_idx" );
    1710 #endif
    17111546          WRITE_UVLC( vpsVuiBspHrdP->getBspCombSchedIdx( h, i, j ), "bsp_comb_sched_idx" );
    17121547
    1713 #if H_MV_HLS_8_HRD_Q0101_04
    17141548          vpsVuiBspHrdP->checkBspCombHrdAndShedIdx( pcVPS, h, i, j );
    1715 #endif
    17161549        } 
    17171550      }
     
    19071740      Int picOrderCntLSB = (pcSlice->getPOC()-pcSlice->getLastIDR()+(1<<pcSlice->getSPS()->getBitsForPOC())) & ((1<<pcSlice->getSPS()->getBitsForPOC())-1);
    19081741      WRITE_CODE( picOrderCntLSB, pcSlice->getSPS()->getBitsForPOC(), "slice_pic_order_cnt_lsb");
    1909 #if H_MV_HLS_8_POC_Q0142_32
    19101742      pcSlice->setSlicePicOrderCntLsb( picOrderCntLSB );
    1911 #endif
    19121743    }
    19131744
     
    23412172    }
    23422173
    2343 #if H_MV_HLS_8_POC_Q0142_32
    23442174    pcSlice->checkPocResetIdc();
    2345 #endif
    23462175
    23472176    if( pcSlice->getPocResetIdc() !=  0 )
     
    23552184      WRITE_CODE( pcSlice->getPocLsbVal( ), pcSlice->getPocLsbValLen() , "poc_lsb_val" );
    23562185    }             
    2357 #if H_MV_HLS_8_POC_Q0142_32
    23582186    pcSlice->checkPocLsbVal();
    2359 #endif
    23602187
    23612188    if( !pcSlice->getPocMsbValRequiredFlag() /* TODO &&  pcSlice->getVPS()->getVpsPocLsbAlignedFlag() */ )
     
    23632190      WRITE_FLAG( pcSlice->getPocMsbValPresentFlag( ) ? 1 : 0 , "poc_msb_val_present_flag" );
    23642191    }
    2365 #if H_MV_HLS_8_POC_Q0146_15
    23662192    else
    23672193    {
    23682194      assert( pcSlice->getPocMsbValPresentFlag() ==  pcSlice->inferPocMsbValPresentFlag( ) );
    23692195    }
    2370 #endif
    23712196   
    23722197    if( pcSlice->getPocMsbValPresentFlag() )
  • trunk/source/Lib/TLibEncoder/TEncCfg.h

    r964 r976  
    403403#if H_3D_IC
    404404  Bool      m_bUseIC;
    405 #if MTK_LOW_LATENCY_IC_ENCODING_H0086
    406405  Bool      m_bUseICLowLatencyEnc;
    407 #endif
    408406#endif
    409407#if H_3D_INTER_SDC
     
    516514  Void       setUseIC                       ( Bool bVal )    { m_bUseIC = bVal; }
    517515  Bool       getUseIC                       ()               { return m_bUseIC; }
    518 #if MTK_LOW_LATENCY_IC_ENCODING_H0086
    519516  Void       setUseICLowLatencyEnc          ( Bool bVal )    { m_bUseICLowLatencyEnc = bVal; }
    520517  Bool       getUseICLowLatencyEnc          ()               { return m_bUseICLowLatencyEnc; }
    521 #endif
    522518#endif
    523519#if H_3D_INTER_SDC
  • trunk/source/Lib/TLibEncoder/TEncCu.cpp

    r950 r976  
    18151815    rpcTempCU->getInterMergeCandidates( 0, 0, cMvFieldNeighbours, uhInterDirNeighbours, numValidMergeCand );
    18161816    rpcTempCU->xGetInterMergeCandidates( 0, 0, cMvFieldNeighbours,uhInterDirNeighbours
    1817 #if !ETRIKHU_CLEANUP_H0083
    1818       , vspFlag
    1819 #endif
    18201817      , inheritedVSPDisInfo
    18211818#if H_3D_SPIVMP
    1822 #if !ETRIKHU_CLEANUP_H0083_MISSING
    1823       , bSPIVMPFlag
    1824 #endif
    18251819      , pcMvFieldSP, puhInterDirSP
    18261820#endif
     
    18281822      );
    18291823
    1830 #if ETRIKHU_CLEANUP_H0083
    18311824    rpcTempCU->buildMCL( cMvFieldNeighbours,uhInterDirNeighbours, vspFlag
    18321825#if H_3D_SPIVMP
     
    18351828      , numValidMergeCand
    18361829      );
    1837 #endif
    18381830
    18391831#else
     
    24002392    pDBBPTmpData->auhMergeIndex[uiSegment] = rpcTempCU->getMergeIndex(0);
    24012393   
    2402 #if RWTH_DBBP_NO_SPU_H0057
    24032394    AOF( rpcTempCU->getSPIVMPFlag(0) == false );
    24042395    AOF( rpcTempCU->getVSPFlag(0) == 0 );
    2405 #else
    2406     pDBBPTmpData->ahVSPFlag[uiSegment] = rpcTempCU->getVSPFlag(0);
    2407     pDBBPTmpData->acDvInfo[uiSegment] = rpcTempCU->getDvInfo(0);
    2408 #endif
    24092396   
    24102397    for ( UInt uiRefListIdx = 0; uiRefListIdx < 2; uiRefListIdx++ )
     
    24372424    rpcTempCU->setMergeFlagSubParts(pDBBPTmpData->abMergeFlag[uiSegment], uiPartAddr, uiSegment, uhDepth);
    24382425    rpcTempCU->setMergeIndexSubParts(pDBBPTmpData->auhMergeIndex[uiSegment], uiPartAddr, uiSegment, uhDepth);
    2439    
    2440 #if !RWTH_DBBP_NO_SPU_H0057
    2441     rpcTempCU->setVSPFlagSubParts(pDBBPTmpData->ahVSPFlag[uiSegment], uiPartAddr, uiSegment, uhDepth);
    2442     rpcTempCU->setDvInfoSubParts(pDBBPTmpData->acDvInfo[uiSegment], uiPartAddr, uiSegment, uhDepth);
    2443 #endif
    2444    
     2426       
    24452427    for ( UInt uiRefListIdx = 0; uiRefListIdx < 2; uiRefListIdx++ )
    24462428    {
  • trunk/source/Lib/TLibEncoder/TEncEntropy.cpp

    r950 r976  
    157157
    158158  if( !pcCU->getSlice()->getApplyIC() )
     159  {
    159160    return;
    160 
    161   if( bRD )
    162   {
    163     uiAbsPartIdx = 0;
    164   }
    165 #if MTK_LOW_LATENCY_IC_ENCODING_H0086
     161  }
     162
     163  if( bRD )
     164  {
     165    uiAbsPartIdx = 0;
     166  }
    166167  else
    167168  {
     
    172173    }
    173174  }
    174 #endif
    175175  if( pcCU->isICFlagRequired( uiAbsPartIdx ) )
     176  {
    176177    m_pcEntropyCoderIf->codeICFlag( pcCU, uiAbsPartIdx );
     178  }
    177179}
    178180#endif
     
    255257 
    256258#if H_3D_DBBP
    257 
    258 #if MTK_DBBP_SIGNALING_H0094
    259259  if( pcCU->getSlice()->getVPS()->getUseDBBP(pcCU->getSlice()->getLayerIdInVps()) )
    260 #else
    261   if( pcCU->getSlice()->getVPS()->getUseDBBP(pcCU->getSlice()->getLayerIdInVps()) && pcCU->getPartitionSize(uiAbsPartIdx) == RWTH_DBBP_PACK_MODE )
    262 #endif
    263260  {
    264261    encodeDBBPFlag(pcCU, uiAbsPartIdx, bRD);
     
    266263    if( pcCU->getDBBPFlag(uiAbsPartIdx) )
    267264    {
    268 #if !MTK_DBBP_SIGNALING_H0094
    269       AOF( pcCU->getPartitionSize(uiAbsPartIdx) == RWTH_DBBP_PACK_MODE );
    270 #endif
    271265      // restore virtual partition size for DBBP blocks
    272266      pcCU->setPartSizeSubParts(eVirtualPartSize, uiAbsPartIdx, uiDepth);
     
    290284    return;
    291285  }
    292 #if !MTK_SDC_FLAG_FIX_H0095
    293 #if H_3D_DIM_SDC
    294   if( pcCU->getSDCFlag(uiAbsPartIdx) )
    295   {
    296     return;
    297   }
    298 #endif
    299 #endif
    300286 
    301287  if( bRD )
  • trunk/source/Lib/TLibEncoder/TEncGOP.cpp

    r964 r976  
    23252325      std::vector<Int> temp;
    23262326      TComSlice::markCurrPic( pcPic );
    2327 #if !H_MV_HLS_8_DBP_NODOC_42
    2328       TComSlice::markIvRefPicsAsUnused   ( m_ivPicLists, temp, pcPic->getSlice(0)->getVPS(), m_layerId, pcPic->getPOC() );
    2329 #endif
    23302327#endif
    23312328      m_bFirst = false;
  • trunk/source/Lib/TLibEncoder/TEncSbac.cpp

    r950 r976  
    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 && !MTK_DMM_SIMP_CODE_H0092
    96 , m_cDmm1DataSCModel          ( 1,             1,               NUM_DMM1_DATA_CTX             , m_contextModels + m_numContextModels, m_numContextModels)
    97 #endif
    9895#if H_3D_DIM_SDC
    9996, m_cSDCResidualFlagSCModel   ( 1,             1,               SDC_NUM_RESIDUAL_FLAG_CTX     , m_contextModels + m_numContextModels, m_numContextModels)
     
    169166  m_cDdcDataSCModel.initBuffer           ( eSliceType, iQp, (UChar*)INIT_DDC_DATA );
    170167  m_cAngleFlagSCModel.initBuffer         ( eSliceType, iQp, (UChar*)INIT_ANGLE_FLAG );
    171 #if H_3D_DIM_DMM && !MTK_DMM_SIMP_CODE_H0092
    172   m_cDmm1DataSCModel.initBuffer          ( eSliceType, iQp, (UChar*)INIT_DMM1_DATA );
    173 #endif
    174168#if H_3D_DIM_SDC
    175169  m_cSDCResidualFlagSCModel.initBuffer   ( eSliceType, iQp, (UChar*)INIT_SDC_RESIDUAL_FLAG );
     
    255249      curCost += m_cDdcDataSCModel.calcCost           ( curSliceType, qp, (UChar*)INIT_DDC_DATA );
    256250      curCost += m_cAngleFlagSCModel.calcCost         ( curSliceType, qp, (UChar*)INIT_ANGLE_FLAG ); 
    257 #if H_3D_DIM_DMM && !MTK_DMM_SIMP_CODE_H0092
    258       curCost += m_cDmm1DataSCModel.calcCost          ( curSliceType, qp, (UChar*)INIT_DMM1_DATA );
    259 #endif
    260251    }
    261252#endif
     
    319310  m_cDdcDataSCModel.initBuffer           ( eSliceType, iQp, (UChar*)INIT_DDC_DATA );
    320311  m_cAngleFlagSCModel.initBuffer         ( eSliceType, iQp, (UChar*)INIT_ANGLE_FLAG );
    321 #if H_3D_DIM_DMM && !MTK_DMM_SIMP_CODE_H0092
    322   m_cDmm1DataSCModel.initBuffer          ( eSliceType, iQp, (UChar*)INIT_DMM1_DATA );
    323 #endif
    324312#if H_3D_DIM_SDC
    325313  m_cSDCResidualFlagSCModel.initBuffer   ( eSliceType, iQp, (UChar*)INIT_SDC_RESIDUAL_FLAG );
     
    482470    m_pcBinIf->encodeBin( 1, rcSCModel );
    483471    UInt uiCount = 0;
    484 #if QC_SIMP_DELTADC_CODING_H0131
    485472    Bool bNoExGo = ( uiSymbol < 3 );
    486473
    487474    while( --uiSymbol && ++uiCount < 3 )
    488 #else
    489     Bool bNoExGo = (uiSymbol < 13);
    490 
    491     while( --uiSymbol && ++uiCount < 13 )
    492 #endif
    493475    {
    494476      m_pcBinIf->encodeBin( 1, rcSCModel );
     
    526508  for ( Int i = 0; i < iNumBit; i++ )
    527509  {
    528 #if MTK_DMM_SIMP_CODE_H0092
    529       m_pcBinIf->encodeBinEP( ( uiTabIdx >> i ) & 1 );
    530 #else
    531     m_pcBinIf->encodeBin( ( uiTabIdx >> i ) & 1, m_cDmm1DataSCModel.get(0, 0, 0) );
    532 #endif
     510    m_pcBinIf->encodeBinEP( ( uiTabIdx >> i ) & 1 );
    533511  }
    534512}
     
    12431221  if( ( pcCU->getSlice()->getSPS()->getMaxCUWidth() >> pcCU->getDepth( absPartIdx ) ) < 64 ) //DMM and HEVC intra modes are both allowed
    12441222  {
    1245 #if LGE_SIMP_DIM_NOT_PRESENT_FLAG_CODING_H0119_H0135
    12461223    m_pcBinIf->encodeBin( isDimMode( dir ) ? 0 : 1, m_cAngleFlagSCModel.get( 0, 0, 0 ) );
    1247 #else
    1248     m_pcBinIf->encodeBin( isDimMode( dir ) ? 0 : 1, m_cAngleFlagSCModel.get( 0, 0, pcCU->getCtxAngleFlag( absPartIdx ) ) );
    1249 #endif
    12501224  }
    12511225  if( isDimMode( dir ) )
     
    23272301      dimDeltaDC = isDimDeltaDC( dir );
    23282302    }
    2329 #if MTK_DELTA_DC_FLAG_ONE_CONTEXT_H0084_H0100_H0113
    23302303    m_pcBinIf->encodeBin( dimDeltaDC, m_cDdcFlagSCModel.get( 0, 0, 0 ) );
    2331 #else
    2332     m_pcBinIf->encodeBin( dimDeltaDC, m_cDdcFlagSCModel.get( 0, 0, uiNumSegments-1 ) );
    2333 #endif
    23342304  }
    23352305  else //all-zero inter SDC is not allowed
     
    23732343Void TEncSbac::codeDBBPFlag( TComDataCU* pcCU, UInt uiAbsPartIdx )
    23742344{
    2375 #if !MTK_DBBP_SIGNALING_H0094
    2376   PartSize ePartSize = pcCU->getPartitionSize( uiAbsPartIdx );
    2377   AOF( ePartSize == RWTH_DBBP_PACK_MODE );
    2378 #endif
    23792345  AOF( pcCU->getSlice()->getVPS()->getUseDBBP(pcCU->getSlice()->getLayerIdInVps()) );
    23802346  AOF( !pcCU->getSlice()->getIsDepth() );
  • trunk/source/Lib/TLibEncoder/TEncSbac.h

    r950 r976  
    258258  ContextModel3DBuffer m_cDdcDataSCModel;
    259259  ContextModel3DBuffer m_cAngleFlagSCModel;
    260 #if H_3D_DIM_DMM && !MTK_DMM_SIMP_CODE_H0092
    261   ContextModel3DBuffer m_cDmm1DataSCModel;
    262 #endif
    263260#if H_3D_DIM_SDC 
    264261  ContextModel3DBuffer m_cSDCResidualFlagSCModel;
  • trunk/source/Lib/TLibEncoder/TEncSearch.cpp

    r964 r976  
    11461146        for( UInt uiX = 0; uiX < uiWidth; uiX++ )
    11471147        {
    1148 #if H_3D_DIM && !SEC_NO_RESI_DLT_H0105
    1149           if( (isDimMode( uiLumaPredMode ) || uiLumaPredMode == HOR_IDX || uiLumaPredMode == VER_IDX || uiLumaPredMode == DC_IDX) && pcCU->getSlice()->getIsDepth() && pcCU->getSlice()->getPPS()->getDLT()->getUseDLTFlag(pcCU->getSlice()->getLayerIdInVps()) )
    1150           {
    1151             pResi[ uiX ] = pcCU->getSlice()->getPPS()->getDLT()->depthValue2idx( pcCU->getSlice()->getLayerIdInVps(), pOrg[ uiX ] ) - pcCU->getSlice()->getPPS()->getDLT()->depthValue2idx( pcCU->getSlice()->getLayerIdInVps(), pPred[ uiX ] );
    1152           }
    1153           else
    1154           {
    1155             pResi[ uiX ] = pOrg[ uiX ] - pPred[ uiX ];
    1156           }
    1157 #else
    11581148          pResi[ uiX ] = pOrg[ uiX ] - pPred[ uiX ];
    1159 #endif
    11601149        }
    11611150        pOrg  += uiStride;
     
    12211210      for( UInt uiX = 0; uiX < uiWidth; uiX++ )
    12221211      {
    1223 #if H_3D_DIM && !SEC_NO_RESI_DLT_H0105
    1224         if( (isDimMode( uiLumaPredMode ) || uiLumaPredMode == HOR_IDX || uiLumaPredMode == VER_IDX || uiLumaPredMode == DC_IDX) && pcCU->getSlice()->getIsDepth() && pcCU->getSlice()->getPPS()->getDLT()->getUseDLTFlag(pcCU->getSlice()->getLayerIdInVps()) )
    1225         {
    1226           pReco    [ uiX ] = pcCU->getSlice()->getPPS()->getDLT()->idx2DepthValue( pcCU->getSlice()->getLayerIdInVps(), Clip3( 0, pcCU->getSlice()->getPPS()->getDLT()->getNumDepthValues( pcCU->getSlice()->getLayerIdInVps() ) - 1, pcCU->getSlice()->getPPS()->getDLT()->depthValue2idx( pcCU->getSlice()->getLayerIdInVps(), pPred[ uiX ] ) + pResi[ uiX ] ) );
    1227         }
    1228         else
    1229         {
    1230           pReco    [ uiX ] = ClipY( pPred[ uiX ] + pResi[ uiX ] );
    1231         }
    1232 #else
    12331212        pReco    [ uiX ] = ClipY( pPred[ uiX ] + pResi[ uiX ] );
    1234 #endif
    12351213        pRecQt   [ uiX ] = pReco[ uiX ];
    12361214        pRecIPred[ uiX ] = pReco[ uiX ];
     
    19891967  // get DC prediction for each segment
    19901968  Pel apDCPredValues[2];
    1991 #if HS_DMM_SDC_PREDICTOR_UNIFY_H0108
    19921969  if ( getDimType( uiLumaPredMode ) == DMM1_IDX || getDimType( uiLumaPredMode ) == DMM4_IDX )
    19931970  {
     
    19961973  }
    19971974  else
    1998 #endif
    1999   analyzeSegmentsSDC(piPred, uiStride, uiWidth, apDCPredValues, uiNumSegments, pbMask, uiMaskStride, uiLumaPredMode );
     1975  {
     1976    analyzeSegmentsSDC(piPred, uiStride, uiWidth, apDCPredValues, uiNumSegments, pbMask, uiMaskStride, uiLumaPredMode );
     1977  }
     1978
    20001979
    20011980  // get original DC for each segment
     
    36743653      pcCU->setInterDirSubParts(pDBBPTmpData->auhInterDir[0], 0, 0, pcCU->getDepth(0)); // interprets depth relative to LCU level
    36753654     
    3676 #if !RWTH_DBBP_NO_SPU_H0057
    3677       pcCU->setVSPFlagSubParts(pDBBPTmpData->ahVSPFlag[0], 0, 0, pcCU->getDepth(0));
    3678       pcCU->setDvInfoSubParts(pDBBPTmpData->acDvInfo[0], 0, 0, pcCU->getDepth(0));
    3679 #endif
    3680      
    36813655      for ( UInt uiRefListIdx = 0; uiRefListIdx < 2; uiRefListIdx++ )
    36823656      {
     
    37073681      pcCU->xGetInterMergeCandidates( 0, 0, cMvFieldNeighbours,uhInterDirNeighbours
    37083682#if H_3D_VSP
    3709 #if !ETRIKHU_CLEANUP_H0083
    3710                                         , vspFlag
    3711 #endif
    37123683                                        , inheritedVSPDisInfo
    37133684#endif
    37143685#if H_3D_SPIVMP
    3715 #if !ETRIKHU_CLEANUP_H0083_MISSING
    3716         , pbSPIVMPFlag
    3717 #endif
    37183686        , pcMvFieldSP, puhInterDirSP
    37193687#endif
     
    37213689        );
    37223690
    3723 #if ETRIKHU_CLEANUP_H0083
    37243691      pcCU->buildMCL( cMvFieldNeighbours,uhInterDirNeighbours
    37253692#if H_3D_VSP
     
    37313698                                        , numValidMergeCand
    37323699        );
    3733 #endif
    37343700#else
    37353701      pcCU->getInterMergeCandidates( 0, 0, cMvFieldNeighbours,uhInterDirNeighbours, numValidMergeCand );
     
    37453711    pcCU->xGetInterMergeCandidates( uiAbsPartIdx, iPUIdx, cMvFieldNeighbours, uhInterDirNeighbours
    37463712#if H_3D_VSP
    3747 #if !ETRIKHU_CLEANUP_H0083
    3748                                       , vspFlag
    3749 #endif
    37503713                                      , inheritedVSPDisInfo
    37513714#endif
    37523715#if H_3D_SPIVMP
    3753 #if !ETRIKHU_CLEANUP_H0083_MISSING
    3754       , pbSPIVMPFlag
    3755 #endif
    37563716      , pcMvFieldSP, puhInterDirSP
    37573717#endif
     
    37593719      );
    37603720
    3761 #if ETRIKHU_CLEANUP_H0083
    37623721    pcCU->buildMCL( cMvFieldNeighbours, uhInterDirNeighbours
    37633722#if H_3D_VSP
     
    37693728                                      , numValidMergeCand
    37703729      );
    3771 #endif
    37723730#else
    37733731    pcCU->getInterMergeCandidates( uiAbsPartIdx, iPUIdx, cMvFieldNeighbours, uhInterDirNeighbours, numValidMergeCand
  • trunk/source/Lib/TLibEncoder/TEncSlice.cpp

    r964 r976  
    930930     )
    931931  {
    932 #if MTK_LOW_LATENCY_IC_ENCODING_H0086
    933932    pcSlice ->xSetApplyIC(pcEncTop->getUseICLowLatencyEnc());
    934 #else
    935     pcSlice ->xSetApplyIC();
    936 #endif
    937933    if ( pcSlice->getApplyIC() )
    938934    {
  • trunk/source/Lib/TLibEncoder/TEncTop.cpp

    r964 r976  
    698698  m_cSPS.setSpsScalingListRefLayerId      ( 0              );
    699699  m_cSPS.setSpsExtensionPresentFlag              ( true );
    700 #if H_MV_HLS_8_SPS_NODOC_48
    701700  m_cSPS.setSpsMultilayerExtensionFlag    ( true );
    702 #else
    703   m_cSPS.setSpsExtensionTypeFlag          ( PS_EX_T_MV ,true );
    704 #endif
    705701#if H_3D
    706 #if H_MV_HLS_8_SPS_NODOC_48
    707702  m_cSPS.setSps3dExtensionFlag            ( true );
    708 #else
    709   m_cSPS.setSpsExtensionTypeFlag          ( PS_EX_T_3D ,true );
    710 #endif
    711703#endif
    712704#endif
     
    777769    m_cSPS.setNumReorderPics(m_numReorderPics[i], i);
    778770  }
    779 #if H_MV_HLS_8_HRD_Q0102_08
     771#if H_MV
    780772  for ( Int ols = 0; ols < m_cVPS->getNumOutputLayerSets(); ols++)
    781773  {
     
    788780  }
    789781
    790 #if H_MV_HLS_8_RPS_Q0100_36
    791782  m_cVPS->inferDbpSizeLayerSetZero( &m_cSPS, true );
    792 #endif
    793 
    794783#endif
    795784  m_cSPS.setPCMBitDepthLuma (g_uiPCMBitDepthLuma);
     
    853842  m_cPPS.setPPSId( getLayerIdInVps() );
    854843  m_cPPS.setSPSId( getLayerIdInVps() );
    855 #if H_MV_HLS_8_SPS_NODOC_48
    856844  m_cPPS.setPpsMultilayerExtensionFlag    ( true );
    857845#if H_3D
    858846  m_cPPS.setPps3dExtensionFlag            ( true );
    859 #endif
    860 #else
    861   m_cPPS.setPpsExtensionTypeFlag          ( PPS_EX_T_MV ,true );
    862 #if H_3D
    863   m_cPPS.setPpsExtensionTypeFlag          ( PPS_EX_T_3D ,true );
    864 #endif
    865847#endif
    866848#endif
Note: See TracChangeset for help on using the changeset viewer.