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


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/TLibDecoder
Files:
12 edited

Legend:

Unmodified
Added
Removed
  • trunk/source/Lib/TLibDecoder/NALread.cpp

    r964 r976  
    127127  else
    128128  {
    129 #if H_MV_HLS_8_GEN_Q0108_13
     129#if H_MV
    130130
    131131    // If nal_unit_type is in the range of BLA_W_LP to RSV_IRAP_VCL23, inclusive, i.e. the coded
  • trunk/source/Lib/TLibDecoder/TDecCAVLC.cpp

    r964 r976  
    374374
    375375#if H_MV
    376 #if H_MV_HLS_8_SPS_NODOC_48
    377376    READ_FLAG( uiCode, "pps_range_extensions_flag" ); pcPPS->setPpsRangeExtensionsFlag( uiCode == 1 );
    378377    READ_FLAG( uiCode, "pps_multilayer_extension_flag" ); pcPPS->setPpsMultilayerExtensionFlag( uiCode == 1 );
     
    390389    if ( pcPPS->getPpsMultilayerExtensionFlag() )
    391390    {
    392         READ_FLAG( uiCode, "poc_reset_info_present_flag" ); pcPPS->setPocResetInfoPresentFlag( uiCode == 1 );
    393 #if H_MV_HLS_8_PPS_NODOC_NN
    394         READ_FLAG( uiCode, "pps_extension_reserved_zero_flag" );
    395 #endif
     391      READ_FLAG( uiCode, "poc_reset_info_present_flag" ); pcPPS->setPocResetInfoPresentFlag( uiCode == 1 );
     392      READ_FLAG( uiCode, "pps_extension_reserved_zero_flag" );
    396393    }
    397394#if !H_3D
     
    406403    {
    407404#endif
    408 #else
    409     for ( Int i = 0; i < PPS_EX_T_MAX_NUM; i++ )
    410     {
    411       READ_FLAG( uiCode, "pps_extension_type_flag" ); pcPPS->setPpsExtensionTypeFlag( i, uiCode == 1 );
    412 #if H_3D
    413       assert( !pcPPS->getPpsExtensionTypeFlag( i ) || i == PPS_EX_T_MV || i == PPS_EX_T_3D || i == PPS_EX_T_ESC );
    414 #else
    415       assert( !pcPPS->getPpsExtensionTypeFlag( i ) || i == PPS_EX_T_MV || i == PPS_EX_T_ESC );
    416 #endif
    417     }
    418    
    419 
    420     if( pcPPS->getPpsExtensionTypeFlag( PPS_EX_T_MV ) )
    421     {
    422       READ_FLAG( uiCode, "poc_reset_info_present_flag" ); pcPPS->setPocResetInfoPresentFlag( uiCode == 1 );
    423     }
    424 
    425 #if H_3D
    426     if( pcPPS->getPpsExtensionTypeFlag( PPS_EX_T_3D ) ) // This probably needs to be aligned with Rext and SHVC
    427     {
    428       parsePPSExtension( pcPPS, pcVPS );
    429     }
    430 #endif
    431 
    432     if( pcPPS->getPpsExtensionTypeFlag( PPS_EX_T_ESC ) )
    433     {
    434 #endif
     405
    435406#endif
    436407
     
    481452            READ_FLAG(uiCode, "inter_view_dlt_pred_enable_flag[ i ]");
    482453
    483 #if  MTK_DLT_CODING_FIX_H0091
    484454            if( uiCode )
    485455            {
    486456                assert( pcDLT->getUseDLTFlag( 1 ));
    487457            }
    488 #endif
    489 
    490458            pcDLT->setInterViewDltPredEnableFlag( i, (uiCode == 1) ? true : false );
    491459
     
    795763  {
    796764#endif
    797   READ_CODE( 3,  uiCode, "sps_max_sub_layers_minus1" );          pcSPS->setMaxTLayers   ( uiCode+1 );
    798   assert(uiCode <= 6);
    799  
    800   READ_FLAG( uiCode, "sps_temporal_id_nesting_flag" );               pcSPS->setTemporalIdNestingFlag ( uiCode > 0 ? true : false );
    801   if ( pcSPS->getMaxTLayers() == 1 )
    802   {
    803     // sps_temporal_id_nesting_flag must be 1 when sps_max_sub_layers_minus1 is 0
    804     assert( uiCode == 1 );
    805   }
    806  
    807   parsePTL(pcSPS->getPTL(), 1, pcSPS->getMaxTLayers() - 1);
     765    READ_CODE( 3,  uiCode, "sps_max_sub_layers_minus1" );          pcSPS->setMaxTLayers   ( uiCode+1 );
     766    assert(uiCode <= 6);
     767
     768    READ_FLAG( uiCode, "sps_temporal_id_nesting_flag" );               pcSPS->setTemporalIdNestingFlag ( uiCode > 0 ? true : false );
     769    if ( pcSPS->getMaxTLayers() == 1 )
     770    {
     771      // sps_temporal_id_nesting_flag must be 1 when sps_max_sub_layers_minus1 is 0
     772      assert( uiCode == 1 );
     773    }
     774
     775    parsePTL(pcSPS->getPTL(), 1, pcSPS->getMaxTLayers() - 1);
    808776#if H_MV
    809777  }
     
    823791  {
    824792#endif
    825   READ_UVLC(     uiCode, "chroma_format_idc" );                  pcSPS->setChromaFormatIdc( uiCode );
    826   assert(uiCode <= 3);
    827   // in the first version we only support chroma_format_idc equal to 1 (4:2:0), so separate_colour_plane_flag cannot appear in the bitstream
    828   assert (uiCode == 1);
    829   if( uiCode == 3 )
    830   {
    831     READ_FLAG(     uiCode, "separate_colour_plane_flag");        assert(uiCode == 0);
    832   }
    833 
    834   READ_UVLC (    uiCode, "pic_width_in_luma_samples" );          pcSPS->setPicWidthInLumaSamples ( uiCode    );
    835   READ_UVLC (    uiCode, "pic_height_in_luma_samples" );         pcSPS->setPicHeightInLumaSamples( uiCode    );
     793    READ_UVLC(     uiCode, "chroma_format_idc" );                  pcSPS->setChromaFormatIdc( uiCode );
     794    assert(uiCode <= 3);
     795    // in the first version we only support chroma_format_idc equal to 1 (4:2:0), so separate_colour_plane_flag cannot appear in the bitstream
     796    assert (uiCode == 1);
     797    if( uiCode == 3 )
     798    {
     799      READ_FLAG(     uiCode, "separate_colour_plane_flag");        assert(uiCode == 0);
     800    }
     801
     802    READ_UVLC (    uiCode, "pic_width_in_luma_samples" );          pcSPS->setPicWidthInLumaSamples ( uiCode    );
     803    READ_UVLC (    uiCode, "pic_height_in_luma_samples" );         pcSPS->setPicHeightInLumaSamples( uiCode    );
    836804#if H_MV
    837805  }
     
    860828  {
    861829#endif
    862   READ_UVLC(     uiCode, "bit_depth_luma_minus8" );
    863   assert(uiCode <= 6);
    864   pcSPS->setBitDepthY( uiCode + 8 );
    865   pcSPS->setQpBDOffsetY( (Int) (6*uiCode) );
    866 
    867   READ_UVLC( uiCode,    "bit_depth_chroma_minus8" );
    868   assert(uiCode <= 6);
    869   pcSPS->setBitDepthC( uiCode + 8 );
    870   pcSPS->setQpBDOffsetC( (Int) (6*uiCode) );
     830    READ_UVLC(     uiCode, "bit_depth_luma_minus8" );
     831    assert(uiCode <= 6);
     832    pcSPS->setBitDepthY( uiCode + 8 );
     833    pcSPS->setQpBDOffsetY( (Int) (6*uiCode) );
     834
     835    READ_UVLC( uiCode,    "bit_depth_chroma_minus8" );
     836    assert(uiCode <= 6);
     837    pcSPS->setBitDepthC( uiCode + 8 );
     838    pcSPS->setQpBDOffsetC( (Int) (6*uiCode) );
    871839#if H_MV
    872840  }
     
    880848  { 
    881849#endif
    882   UInt subLayerOrderingInfoPresentFlag;
    883   READ_FLAG(subLayerOrderingInfoPresentFlag, "sps_sub_layer_ordering_info_present_flag");
    884  
    885   for(UInt i=0; i <= pcSPS->getMaxTLayers()-1; i++)
    886   {
    887     READ_UVLC ( uiCode, "sps_max_dec_pic_buffering_minus1[i]");
    888     pcSPS->setMaxDecPicBuffering( uiCode + 1, i);
    889     READ_UVLC ( uiCode, "sps_num_reorder_pics[i]" );
    890     pcSPS->setNumReorderPics(uiCode, i);
    891     READ_UVLC ( uiCode, "sps_max_latency_increase_plus1[i]");
    892     pcSPS->setMaxLatencyIncrease( uiCode, i );
    893 
    894     if (!subLayerOrderingInfoPresentFlag)
    895     {
    896       for (i++; i <= pcSPS->getMaxTLayers()-1; i++)
    897       {
    898         pcSPS->setMaxDecPicBuffering(pcSPS->getMaxDecPicBuffering(0), i);
    899         pcSPS->setNumReorderPics(pcSPS->getNumReorderPics(0), i);
    900         pcSPS->setMaxLatencyIncrease(pcSPS->getMaxLatencyIncrease(0), i);
    901       }
    902       break;
    903     }
    904   }
     850    UInt subLayerOrderingInfoPresentFlag;
     851    READ_FLAG(subLayerOrderingInfoPresentFlag, "sps_sub_layer_ordering_info_present_flag");
     852
     853    for(UInt i=0; i <= pcSPS->getMaxTLayers()-1; i++)
     854    {
     855      READ_UVLC ( uiCode, "sps_max_dec_pic_buffering_minus1[i]");
     856      pcSPS->setMaxDecPicBuffering( uiCode + 1, i);
     857      READ_UVLC ( uiCode, "sps_num_reorder_pics[i]" );
     858      pcSPS->setNumReorderPics(uiCode, i);
     859      READ_UVLC ( uiCode, "sps_max_latency_increase_plus1[i]");
     860      pcSPS->setMaxLatencyIncrease( uiCode, i );
     861
     862      if (!subLayerOrderingInfoPresentFlag)
     863      {
     864        for (i++; i <= pcSPS->getMaxTLayers()-1; i++)
     865        {
     866          pcSPS->setMaxDecPicBuffering(pcSPS->getMaxDecPicBuffering(0), i);
     867          pcSPS->setNumReorderPics(pcSPS->getNumReorderPics(0), i);
     868          pcSPS->setMaxLatencyIncrease(pcSPS->getMaxLatencyIncrease(0), i);
     869        }
     870        break;
     871      }
     872    }
    905873#if H_MV
    906874  }
     
    912880  READ_UVLC( uiCode, "log2_diff_max_min_coding_block_size" );
    913881  pcSPS->setLog2DiffMaxMinCodingBlockSize(uiCode);
    914  
     882
    915883  if (pcSPS->getPTL()->getGeneralPTL()->getLevelIdc() >= Level::LEVEL5)
    916884  {
    917885    assert(log2MinCUSize + pcSPS->getLog2DiffMaxMinCodingBlockSize() >= 5);
    918886  }
    919  
     887
    920888  Int maxCUDepthDelta = uiCode;
    921889  pcSPS->setMaxCUWidth  ( 1<<(log2MinCUSize + maxCUDepthDelta) );
     
    948916    {   
    949917#endif
    950     READ_FLAG( uiCode, "sps_scaling_list_data_present_flag" );                 pcSPS->setScalingListPresentFlag ( uiCode );
    951     if(pcSPS->getScalingListPresentFlag ())
    952     {
    953       parseScalingList( pcSPS->getScalingList() );
    954     }
     918      READ_FLAG( uiCode, "sps_scaling_list_data_present_flag" );                 pcSPS->setScalingListPresentFlag ( uiCode );
     919      if(pcSPS->getScalingListPresentFlag ())
     920      {
     921        parseScalingList( pcSPS->getScalingList() );
     922      }
    955923#if H_MV
    956924    }
     
    1017985  {
    1018986#if H_MV
    1019 #if H_MV_HLS_8_SPS_NODOC_48
    1020987    READ_FLAG( uiCode, "sps_range_extensions_flag" ); pcSPS->setSpsRangeExtensionsFlag( uiCode == 1 );
    1021988    READ_FLAG( uiCode, "sps_multilayer_extension_flag" ); pcSPS->setSpsMultilayerExtensionFlag( uiCode == 1 );
     
    10501017  {
    10511018#endif
    1052 #else
    1053     for (Int i = 0; i < PS_EX_T_MAX_NUM; i++)
    1054     {
    1055       READ_FLAG( uiCode, "sps_extension_type_flag" ); pcSPS->setSpsExtensionTypeFlag( i, uiCode );
    1056 #if H_3D
    1057       assert( !pcSPS->getSpsExtensionTypeFlag( i ) || i == PS_EX_T_MV || i == PS_EX_T_3D || i == PS_EX_T_ESC );
    1058 #else
    1059       assert( !pcSPS->getSpsExtensionTypeFlag( i ) || i == PS_EX_T_MV || i == PS_EX_T_ESC );
    1060 #endif
    1061     } 
    1062 
    1063     if( pcSPS->getSpsExtensionTypeFlag( PS_EX_T_MV ))
    1064     {
    1065       parseSPSExtension( pcSPS );
    1066     }
    1067 
    1068 #if H_3D
    1069     if( pcSPS->getSpsExtensionTypeFlag( PS_EX_T_3D ))
    1070     {
    1071       parseSPSExtension2( pcSPS, viewIndex, depthFlag  );
    1072     }
    1073 #endif
    1074 
    1075     if ( pcSPS->getSpsExtensionTypeFlag( PS_EX_T_ESC ))
    1076     {   
    1077 #endif
    1078 #endif
    1079         while ( xMoreRbspData() )
    1080         {
    1081           READ_FLAG( uiCode, "sps_extension_data_flag");
    1082         }
    1083 #if H_MV && !H_MV_HLS_8_SPS_NODOC_48
    1084     }
    1085 #endif
     1019
     1020#endif
     1021    while ( xMoreRbspData() )
     1022    {
     1023      READ_FLAG( uiCode, "sps_extension_data_flag");
     1024    }
    10861025  }
    10871026}
     
    11321071 
    11331072  READ_CODE( 4,  uiCode,  "vps_video_parameter_set_id" );         pcVPS->setVPSId( uiCode );
    1134 #if H_MV_HLS_8_SYN_Q0041_03
     1073#if H_MV
    11351074  READ_FLAG( uiCode, "vps_base_layer_internal_flag" );            pcVPS->setVpsBaseLayerInternalFlag( uiCode == 1 );
    11361075  READ_FLAG( uiCode, "vps_reserved_one_bit" );                    assert( uiCode == 1 );
     
    12211160    }
    12221161  }
    1223 #if H_MV_HLS_8_RPS_Q0100_36
     1162#if H_MV
    12241163  READ_FLAG( uiCode,  "vps_extension_flag" );                      pcVPS->setVpsExtensionFlag( uiCode == 1 ? true : false );
    12251164  if ( pcVPS->getVpsExtensionFlag() )
     
    12621201{
    12631202  UInt uiCode;
    1264 #if !H_MV_HLS_8_SYN_Q0041_03
    1265   READ_FLAG( uiCode, "avc_base_layer_flag" );                     pcVPS->setAvcBaseLayerFlag( uiCode == 1 ? true : false );
    1266 #endif
    12671203
    12681204  READ_FLAG( uiCode, "splitting_flag" );                          pcVPS->setSplittingFlag( uiCode == 1 ? true : false );
     
    13841320  }
    13851321
    1386 #if H_MV_HLS_8_SYN_39_19
    13871322  if ( pcVPS->getNumIndependentLayers() > 1 )
    13881323  {
     
    14041339  pcVPS->initTargetLayerIdLists( );
    14051340
    1406 #else
    1407   READ_UVLC( uiCode, "num_add_layer_sets"      ); pcVPS->setNumAddLayerSets( uiCode );
    1408   pcVPS->initTargetLayerIdLists( );
    1409   if( pcVPS->getNumOutputLayerSets() > 1)
    1410   {
    1411     READ_CODE( 2, uiCode, "default_output_layer_idc" ); pcVPS->setDefaultOutputLayerIdc( std::min( uiCode, (UInt) 2 ) );   
    1412   } 
    1413 #endif
    14141341
    14151342  pcVPS->setOutputLayerFlag(0, 0, pcVPS->inferOutputLayerFlag( 0, 0 ));
     
    14201347  for( Int i = 1; i < pcVPS->getNumOutputLayerSets( ); i++ )
    14211348  {
    1422 #if H_MV_HLS_8_SYN_39_19
    14231349    if( i >= pcVPS->getNumLayerSets( ) )   
    1424 #else
    1425     if( i > pcVPS->getVpsNumLayerSetsMinus1( ) )   
    1426 #endif
    14271350    {       
    14281351      READ_UVLC( uiCode,      "layer_set_idx_for_ols_minus1[i]" ); pcVPS->setLayerSetIdxForOlsMinus1( i, uiCode );
     
    14551378  }
    14561379
    1457 #if !H_MV_HLS_8_PMS_Q0195_20
    1458   READ_FLAG( uiCode, "rep_format_idx_present_flag" ); pcVPS->setRepFormatIdxPresentFlag( uiCode == 1 );
    1459   if ( pcVPS->getRepFormatIdxPresentFlag() )
    1460   {
    1461     READ_UVLC( uiCode, "vps_num_rep_formats_minus1" ); pcVPS->setVpsNumRepFormatsMinus1( uiCode );
    1462   }
    1463 #else
    14641380  READ_UVLC( uiCode, "vps_num_rep_formats_minus1" ); pcVPS->setVpsNumRepFormatsMinus1( uiCode );
    1465 #endif
    14661381
    14671382  for (Int i = 0; i <= pcVPS->getVpsNumRepFormatsMinus1(); i++ )
     
    14741389  }
    14751390
    1476 #if H_MV_HLS_8_PMS_Q0195_20
    14771391  if ( pcVPS->getVpsNumRepFormatsMinus1() > 0 )
    14781392  {
    14791393    READ_FLAG( uiCode, "rep_format_idx_present_flag" ); pcVPS->setRepFormatIdxPresentFlag( uiCode == 1 );
    14801394  }
    1481 #endif
    14821395  if( pcVPS->getRepFormatIdxPresentFlag() )
    14831396  {
    1484 #if H_MV_HLS_8_SYN_Q0041_03
    14851397    for( Int i = pcVPS->getVpsBaseLayerInternalFlag() ? 1 : 0; i <=  pcVPS->getMaxLayersMinus1(); i++ )
    1486 #else
    1487     for( Int i = 1; i <=  pcVPS->getMaxLayersMinus1(); i++ )
    1488 #endif
    1489     {
    1490 #if !H_MV_HLS_8_PMS_Q0195_20
    1491       if( pcVPS->getVpsNumRepFormatsMinus1() > 0 )
    1492       {
    1493 #endif
     1398    {
    14941399        READ_CODE( pcVPS->getVpsRepFormatIdxLen(), uiCode, "vps_rep_format_idx[i]" ); pcVPS->setVpsRepFormatIdx( i, uiCode );
    1495 #if !H_MV_HLS_8_PMS_Q0195_20
    1496       }
    1497 #endif
    1498     }
    1499   }
    1500 #if H_MV_HLS_8_PMS_Q0195_20
     1400    }
     1401  }
    15011402  else
    15021403  {
    1503 #if H_MV_HLS_8_SYN_Q0041_03
    15041404    for( Int i = pcVPS->getVpsBaseLayerInternalFlag() ? 1 : 0; i <=  pcVPS->getMaxLayersMinus1(); i++ )
    1505 #else
    1506     for( Int i = 1; i <=  pcVPS->getMaxLayersMinus1(); i++ )
    1507 #endif
    15081405    {
    15091406      pcVPS->setVpsRepFormatIdx( i, pcVPS->inferVpsRepFormatIdx( i ) );
    15101407    }
    15111408  }
    1512 #endif
    15131409
    15141410  READ_FLAG( uiCode, "max_one_active_ref_layer_flag" ); pcVPS->setMaxOneActiveRefLayerFlag ( uiCode == 1 );
     
    15351431  }
    15361432
    1537 #if H_MV_HLS_8_SYN_Q0041_03
    15381433  for( Int i = pcVPS->getVpsBaseLayerInternalFlag() ?  1 : 2; i <= pcVPS->getMaxLayersMinus1(); i++ )
    15391434  {
    15401435    for( Int j = pcVPS->getVpsBaseLayerInternalFlag() ?  0 : 1; j < i; j++ )
    1541 #else
    1542   for( Int i = 1; i <= pcVPS->getMaxLayersMinus1(); i++ )
    1543   {
    1544     for( Int j = 0; j < i; j++ )
    1545 #endif
    15461436    {
    15471437      if (pcVPS->getDirectDependencyFlag( i, j) )
     
    16291519  if( pcVPSVUI->getBitRatePresentVpsFlag( )  ||  pcVPSVUI->getPicRatePresentVpsFlag( ) )
    16301520  {
    1631 #if H_MV_HLS_8_SYN_Q0041_03
    16321521    for( Int i = pcVPS->getVpsBaseLayerInternalFlag() ? 0 : 1; i  <=  pcVPS->getVpsNumLayerSetsMinus1(); i++ )
    1633 #else
    1634     for( Int i = 0; i  <=  pcVPS->getVpsNumLayerSetsMinus1(); i++ )
    1635 #endif
    1636     {
    1637 #if H_MV_HLS_8_MIS_Q0102_30
     1522    {
    16381523      for( Int j = 0; j  <=  pcVPS->getMaxSubLayersInLayerSetMinus1( i ); j++ )
    1639 #else       
    1640       for( Int j = 0; j  <=  pcVPS->getMaxTLayers(); j++ )
    1641 #endif
    16421524      {
    16431525        if( pcVPSVUI->getBitRatePresentVpsFlag( ) )
     
    16991581  if( !pcVPSVUI->getTilesNotInUseFlag() )
    17001582  {     
    1701 #if H_MV_HLS_8_SYN_Q0041_03
    17021583    for( Int i = pcVPS->getVpsBaseLayerInternalFlag() ? 0 : 1; i  <=  pcVPS->getMaxLayersMinus1(); i++ )
    1703 #else
    1704     for( Int i = 0; i  <=  pcVPS->getMaxLayersMinus1(); i++ )
    1705 #endif
    17061584    {
    17071585      READ_FLAG( uiCode, "tiles_in_use_flag[i]" ); pcVPSVUI->setTilesInUseFlag( i, uiCode == 1 );
     
    17111589      }
    17121590    } 
    1713 #if H_MV_HLS_8_SYN_Q0041_03
    17141591    for( Int i = pcVPS->getVpsBaseLayerInternalFlag() ? 1 : 2; i  <=  pcVPS->getMaxLayersMinus1(); i++ ) 
    1715 #else
    1716     for( Int i = 1; i  <=  pcVPS->getMaxLayersMinus1(); i++ )     
    1717 #endif
    17181592    {
    17191593      for( Int j = 0; j < pcVPS->getNumDirectRefLayers( pcVPS->getLayerIdInNuh( i ) ) ; j++ )
     
    17461620      for( Int j = 0; j < pcVPS->getNumDirectRefLayers( pcVPS->getLayerIdInNuh( i ) ); j++ )
    17471621      {
    1748 #if H_MV_HLS_8_SYN_Q0041_03
    17491622        if( pcVPS->getVpsBaseLayerInternalFlag() || pcVPS->getRefLayerId( pcVPS->getLayerIdInNuh( i ), j ) > 0 )
    17501623        {       
    1751 #endif
    17521624          READ_UVLC( uiCode, "min_spatial_segment_offset_plus1" ); pcVPSVUI->setMinSpatialSegmentOffsetPlus1( i, j, uiCode );
    17531625          if( pcVPSVUI->getMinSpatialSegmentOffsetPlus1( i, j ) > 0 )
     
    17591631            }
    17601632          }
    1761 #if H_MV_HLS_8_SYN_Q0041_03
    1762         }
    1763 #endif
     1633        }
    17641634      }
    17651635    }
     
    18081678    for( Int i = 0; i < vpsVuiBspHrdP->getNumBitstreamPartitions( h ); i++ ) 
    18091679    {
    1810 #if H_MV_HLS_8_HRD_Q0101_04
    18111680      for( Int j = 0; j < pcVPS->getNumLayersInIdList( h ); j++ ) 
    18121681      {
    18131682        READ_FLAG( uiCode, "layer_in_bsp_flag" ); vpsVuiBspHrdP->setLayerInBspFlag( h, i, j, uiCode == 1 );
    1814 #else
    1815       for( Int j = 0; j <= pcVPS->getMaxLayersMinus1(); j++ ) 
    1816       {
    1817         if( pcVPS->getLayerIdIncludedFlag( h ,j ) )
    1818         {
    1819           READ_FLAG( uiCode, "layer_in_bsp_flag" ); vpsVuiBspHrdP->setLayerInBspFlag( h, i, j, uiCode == 1 );
    1820         }
    1821         else
    1822         {
    1823           vpsVuiBspHrdP->setLayerInBspFlag( h, i, j, false ); // This inference seems to be missing in spec
    1824         }
    1825 #endif
    18261683      }
    18271684    }
     
    18311688    { 
    18321689      READ_UVLC( uiCode, "num_bsp_sched_combinations_minus1" ); vpsVuiBspHrdP->setNumBspSchedCombinationsMinus1( h, uiCode );
    1833 #if H_MV_HLS_8_HRD_Q0182_05
    18341690      for( Int i = 0; i <= vpsVuiBspHrdP->getNumBspSchedCombinationsMinus1( h ); i++ )
    1835 #else
    1836       for( Int i = 0; i < vpsVuiBspHrdP->getNumBspSchedCombinationsMinus1( h ); i++ )
    1837 #endif
    18381691      {
    18391692        for( Int j = 0; j < vpsVuiBspHrdP->getNumBitstreamPartitions( h ); j++ )
    18401693        { 
    1841 #if H_MV_HLS_8_HRD_Q0101_04
    18421694          READ_CODE( vpsVuiBspHrdP->getBspCombHrdIdxLen(), uiCode, "bsp_comb_hrd_idx" ); vpsVuiBspHrdP->setBspCombHrdIdx( h, i, j, uiCode );
    1843 #else
    1844           READ_UVLC( uiCode, "bsp_comb_hrd_idx" ); vpsVuiBspHrdP->setBspCombHrdIdx( h, i, j, uiCode );
    1845 #endif
    18461695          READ_UVLC( uiCode, "bsp_comb_sched_idx" ); vpsVuiBspHrdP->setBspCombSchedIdx( h, i, j, uiCode );
    1847 #if H_MV_HLS_8_HRD_Q0101_04
    18481696          vpsVuiBspHrdP->checkBspCombHrdAndShedIdx( pcVPS, h, i, j );
    1849 #endif
    18501697        } 
    18511698      }
     
    18721719  for( Int i = 1; i < vps->getNumOutputLayerSets(); i++ )
    18731720  { 
    1874 #if H_MV_HLS_8_MIS_Q0102_30
    18751721    Int currLsIdx = vps->olsIdxToLsIdx( i );
    1876 #endif
    18771722    READ_FLAG( uiCode, "sub_layer_flag_info_present_flag" ); dpbSize->setSubLayerFlagInfoPresentFlag( i, uiCode == 1 );
    1878 #if H_MV_HLS_8_MIS_Q0102_30
    18791723    for( Int j = 0; j  <=  vps->getMaxSubLayersInLayerSetMinus1( currLsIdx ); j++ )
    1880 #else
    1881     for( Int j = 0; j  <=  vps->getMaxSubLayersInLayerSetMinus1( i ); j++ )
    1882 #endif
    18831724    { 
    18841725      if( j > 0  &&  dpbSize->getSubLayerDpbInfoPresentFlag( i, j )  ) 
     
    18881729      if( dpbSize->getSubLayerDpbInfoPresentFlag( i, j ) )
    18891730      { 
    1890 #if H_MV_HLS_8_MIS_Q0102_30
    18911731        for( Int k = 0; k < vps->getNumLayersInIdList( currLsIdx ); k++ )   
    1892 #else
    1893         for( Int k = 0; k < vps->getNumSubDpbs( vps->olsIdxToLsIdx( i )); k++ )   
    1894 #endif
    18951732        {
    18961733          READ_UVLC( uiCode, "max_vps_dec_pic_buffering_minus1" ); dpbSize->setMaxVpsDecPicBufferingMinus1( i, k, j, uiCode );
     
    19031740        if ( j > 0 )
    19041741        {
    1905 #if H_MV_HLS_8_DBP_NODOC_42
    19061742          for( Int k = 0; k < vps->getNumLayersInIdList( vps->olsIdxToLsIdx( i ) ); k++ )   
    1907 #else
    1908           for( Int k = 0; k < vps->getNumSubDpbs( vps->olsIdxToLsIdx( i ) ); k++ )   
    1909 #endif
    19101743          {
    19111744            dpbSize->setMaxVpsDecPicBufferingMinus1( i, k, j, dpbSize->getMaxVpsDecPicBufferingMinus1( i,k, j - 1 ) );
     
    19181751  } 
    19191752}
    1920 #endif
    19211753
    19221754#if H_3D
     
    19391771#if H_3D_IV_MERGE
    19401772        READ_FLAG( uiCode, "iv_mv_pred_flag[i]");          pcVPS->setIvMvPredFlag         ( i, uiCode == 1 ? true : false );
    1941 #if QC_IV_PRED_CONSTRAINT_H0137
    19421773        if( !pcVPS->getNumDirectRefLayers(i) )
    19431774        {
    19441775          assert( !uiCode );         
    19451776        }
    1946 #endif
    19471777#if H_3D_SPIVMP
    19481778        READ_UVLC (uiCode, "log2_sub_PU_size_minus3[i]");     pcVPS->setSubPULog2Size(i, uiCode+3);
     
    19511781#if H_3D_ARP
    19521782        READ_FLAG( uiCode, "iv_res_pred_flag[i]"  );       pcVPS->setUseAdvRP  ( i, uiCode ); pcVPS->setARPStepNum( i, uiCode ? H_3D_ARP_WFNR : 1 );
    1953 #if QC_IV_PRED_CONSTRAINT_H0137
    19541783        if( !pcVPS->getNumDirectRefLayers(i) )
    19551784        {
    19561785          assert( !uiCode );         
    19571786        }
    1958 #endif
    19591787#endif
    19601788#if H_3D_NBDV_REF
     
    19631791#if H_3D_VSP
    19641792        READ_FLAG( uiCode, "view_synthesis_pred_flag[i]"); pcVPS->setViewSynthesisPredFlag( i, uiCode == 1 ? true : false );
    1965 #if QC_IV_PRED_CONSTRAINT_H0137
    19661793        if( !pcVPS->getNumDirectRefLayers(i) )
    19671794        {
    19681795          assert( !uiCode );         
    19691796        }
    1970 #endif
    19711797#endif
    19721798#if H_3D_DBBP
     
    19801806        {
    19811807          READ_FLAG( uiCode, "iv_mv_pred_flag[i]");          pcVPS->setIvMvPredFlag         ( i, uiCode == 1 ? true : false );
    1982 #if QC_IV_PRED_CONSTRAINT_H0137
    19831808          if( !pcVPS->getNumDirectRefLayers(i) )
    19841809          {
    19851810            assert( !uiCode );         
    19861811          }
    1987 #endif
    19881812        }
    19891813#endif
     
    20371861}
    20381862#endif
    2039 
    2040 #if H_MV_HLS_8_HRD_Q0102_08
     1863#endif
     1864#if H_MV
    20411865Void TDecCavlc::parseSliceHeader (TComSlice*& rpcSlice, ParameterSetManagerDecoder *parameterSetManager, Int targetOlsIdx)
    20421866#else
     
    20811905  sps->inferRepFormat  ( vps , rpcSlice->getLayerId() );
    20821906  sps->inferScalingList( parameterSetManager->getActiveSPS( sps->getSpsScalingListRefLayerId() ) );   
    2083 #if H_MV_HLS_8_HRD_Q0102_08
    20841907  sps->inferSpsMaxDecPicBufferingMinus1( vps, targetOlsIdx, rpcSlice->getLayerId(), false );
    2085 #endif
    2086 #if H_MV_HLS_8_RPS_Q0100_36
    20871908  vps->inferDbpSizeLayerSetZero( sps, false );
    2088 #endif
    20891909
    20901910  if ( sps->getVuiParametersPresentFlag() )
     
    21411961  }
    21421962 
    2143 #if H0044_POC_LSB_NOT_PRESENT
     1963#if H_MV
    21441964    UInt slicePicOrderCntLsb = 0;
    21451965#endif
     
    21952015
    21962016#if H_MV
    2197 #if !H0044_POC_LSB_NOT_PRESENT
    2198     UInt slicePicOrderCntLsb = 0;
    2199 #endif
    22002017    Int iPOClsb = slicePicOrderCntLsb;  // Needed later
    22012018    if ( (rpcSlice->getLayerId() > 0 && !vps->getPocLsbNotPresentFlag( rpcSlice->getLayerIdInVps())) || !rpcSlice->getIdrPicFlag() )
     
    22032020      READ_CODE(sps->getBitsForPOC(), slicePicOrderCntLsb, "slice_pic_order_cnt_lsb");       
    22042021    }   
    2205 #if H_MV_HLS_8_POC_Q0142_32
    22062022    rpcSlice->setSlicePicOrderCntLsb( slicePicOrderCntLsb );
    2207 #endif
    22082023
    22092024    Bool picOrderCntMSBZeroFlag = false;     
     
    23012116      {       
    23022117        parseShortTermRefPicSet(sps,rps, sps->getRPSList()->getNumberOfReferencePictureSets());
    2303 #if H_MV_HLS_8_RPS_Q0100_36
     2118#if H_MV
    23042119        if ( !rps->getInterRPSPrediction( ) )
    23052120        { // check sum of num_positive_pics and num_negative_pics
     
    24142229        rps->setNumberOfPictures(offset);       
    24152230      } 
    2416 #if H_MV_HLS_8_RPS_Q0100_36
     2231#if H_MV
    24172232      if ( !rps->getInterRPSPrediction( ) )
    24182233      { // check sum of NumPositivePics, NumNegativePics, num_long_term_sps and num_long_term_pics
     
    28042619      rpcSlice->setPocResetIdc( 0 );
    28052620    }
    2806 #if H_MV_HLS_8_POC_Q0142_32
    28072621    rpcSlice->checkPocResetIdc();
    2808 #endif
    2809 
    2810 #if H0044_POC_LSB_NOT_PRESENT
     2622
    28112623    if ( rpcSlice->getVPS()->getPocLsbNotPresentFlag(rpcSlice->getLayerId()) && slicePicOrderCntLsb > 0 )
    28122624    {
    28132625      assert( rpcSlice->getPocResetIdc() != 2 );
    28142626    }
    2815 #endif
     2627
    28162628    if( rpcSlice->getPocResetIdc() !=  0 )
    28172629    {
     
    28282640      READ_FLAG( uiCode, "full_poc_reset_flag" ); rpcSlice->setFullPocResetFlag( uiCode == 1 );
    28292641      READ_CODE( rpcSlice->getPocLsbValLen() , uiCode, "poc_lsb_val" ); rpcSlice->setPocLsbVal( uiCode );
    2830 #if !H_MV_HLS_8_POC_Q0142_32
    2831 #if H0044_POC_LSB_NOT_PRESENT
    2832       if ( rpcSlice->getVPS()->getPocLsbNotPresentFlag(rpcSlice->getLayerId()) && rpcSlice->getFullPocResetFlag() )
    2833       {
    2834         assert( rpcSlice->getPocLsbVal() == 0 );
    2835       }
    2836 #endif
    2837 #endif
    28382642    }         
    2839 #if H_MV_HLS_8_POC_Q0142_32
    28402643    rpcSlice->checkPocLsbVal();
    2841 #endif
    28422644
    28432645    // Derive the value of PocMs8bValRequiredFlag
     
    28522654    else
    28532655    {
    2854 #if H_MV_HLS_8_POC_Q0146_15
    28552656      rpcSlice->setPocMsbValPresentFlag( rpcSlice->inferPocMsbValPresentFlag( ) );
    2856 #else
    2857       if( rpcSlice->getPocMsbValRequiredFlag() )
    2858       {
    2859         rpcSlice->setPocMsbValPresentFlag( true );
    2860       }
    2861       else
    2862       {
    2863         rpcSlice->setPocMsbValPresentFlag( false );
    2864       }
    2865 #endif
    28662657    }
    28672658
  • trunk/source/Lib/TLibDecoder/TDecCAVLC.h

    r964 r976  
    109109  Void  parseProfileTier    (ProfileTierLevel *ptl);
    110110  Void  parseHrdParameters  (TComHRD *hrd, Bool cprms_present_flag, UInt tempLevelHigh);
    111 #if H_MV_HLS_8_HRD_Q0102_08
     111#if H_MV
    112112  Void  parseSliceHeader    ( TComSlice*& rpcSlice, ParameterSetManagerDecoder *parameterSetManager, Int targetOlsIdx);
    113113#else
  • trunk/source/Lib/TLibDecoder/TDecCu.cpp

    r964 r976  
    432432    m_ppcCU[uiDepth]->getInterMergeCandidates( 0, 0, cMvFieldNeighbours, uhInterDirNeighbours, numValidMergeCand, uiMergeIndex );
    433433    m_ppcCU[uiDepth]->xGetInterMergeCandidates( 0, 0, cMvFieldNeighbours, uhInterDirNeighbours
    434 #if !ETRIKHU_CLEANUP_H0083
    435       ,vspFlag
    436 #endif
    437434      , inheritedVSPDisInfo
    438435#if H_3D_SPIVMP
    439 #if !ETRIKHU_CLEANUP_H0083_MISSING
    440       , bSPIVMPFlag
    441 #endif
    442436      , pcMvFieldSP, puhInterDirSP
    443437#endif
    444438      , numValidMergeCand, uiMergeIndex );
    445439
    446 #if ETRIKHU_CLEANUP_H0083
    447440    m_ppcCU[uiDepth]->buildMCL( cMvFieldNeighbours, uhInterDirNeighbours, vspFlag
    448441#if H_3D_SPIVMP
     
    450443#endif
    451444      , numValidMergeCand );
    452 #endif
    453445    pcCU->setVSPFlagSubParts( vspFlag[uiMergeIndex], uiAbsPartIdx, 0, uiDepth );
    454446#else
     
    797789    }
    798790   
    799 #if RWTH_DBBP_NO_SPU_H0057
    800791    AOF( pcCU->getARPW(uiPartAddr) == 0 );
    801792    AOF( pcCU->getICFlag(uiPartAddr) == false );
    802793    AOF( pcCU->getSPIVMPFlag(uiPartAddr) == false );
    803794    AOF( pcCU->getVSPFlag(uiPartAddr) == 0 );
    804 #else
    805     pDBBPTmpData->ahVSPFlag[uiSegment] = pcCU->getVSPFlag( uiPartAddr );
    806     pDBBPTmpData->acDvInfo[uiSegment] = pcCU->getDvInfo( uiPartAddr );
    807 #endif
    808795  }
    809796 
     
    814801  {
    815802    pcCU->setInterDirSubParts( pDBBPTmpData->auhInterDir[uiSegment], 0, 0, uiDepth );
    816    
    817 #if !RWTH_DBBP_NO_SPU_H0057
    818     pcCU->setVSPFlagSubParts( pDBBPTmpData->ahVSPFlag[uiSegment], 0, 0, uiDepth );
    819     pcCU->setDvInfoSubParts( pDBBPTmpData->acDvInfo[uiSegment], 0, 0, uiDepth );
    820 #endif
    821    
     803 
    822804    for ( UInt uiRefListIdx = 0; uiRefListIdx < 2; uiRefListIdx++ )
    823805    {
     
    839821   
    840822    pcCU->setDBBPFlagSubParts(true, uiPartAddr, uiSegment, uiDepth);
    841    
    842 #if !RWTH_DBBP_NO_SPU_H0057
    843     pcCU->setVSPFlagSubParts( pDBBPTmpData->ahVSPFlag[uiSegment], uiPartAddr, uiSegment, uiDepth );
    844     pcCU->setDvInfoSubParts( pDBBPTmpData->acDvInfo[uiSegment], uiPartAddr, uiSegment, uiDepth );
    845 #endif
    846    
    847823    pcCU->setInterDirSubParts(pDBBPTmpData->auhInterDir[uiSegment], uiPartAddr, uiSegment, uiDepth); // interprets depth relative to LCU level
    848824   
     
    946922    for( UInt uiX = 0; uiX < uiWidth; uiX++ )
    947923    {
    948 #if H_3D && !SEC_NO_RESI_DLT_H0105
    949       if ( useDltFlag )
    950       {
    951         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 ] ) );
    952       }
    953       else
    954       {
    955         pReco    [ uiX ] = ClipY( pPred[ uiX ] + pResi[ uiX ] );
    956       }
    957 #else
    958924      pReco    [ uiX ] = ClipY( pPred[ uiX ] + pResi[ uiX ] );
    959 #endif
    960925      pRecIPred[ uiX ] = pReco[ uiX ];
    961926    }
     
    12571222  // get DC prediction for each segment
    12581223  Pel apDCPredValues[2];
    1259 #if HS_DMM_SDC_PREDICTOR_UNIFY_H0108
    12601224  if ( getDimType( uiLumaPredMode ) == DMM1_IDX || getDimType( uiLumaPredMode ) == DMM4_IDX )
    12611225  {
     
    12641228  }
    12651229  else
    1266 #endif
    1267   m_pcPrediction->analyzeSegmentsSDC(piPred, uiStride, uiWidth, apDCPredValues, uiNumSegments, pbMask, uiMaskStride, uiLumaPredMode);
     1230  {
     1231    m_pcPrediction->analyzeSegmentsSDC(piPred, uiStride, uiWidth, apDCPredValues, uiNumSegments, pbMask, uiMaskStride, uiLumaPredMode);
     1232  }
    12681233 
    12691234  // reconstruct residual based on mask + DC residuals
  • trunk/source/Lib/TLibDecoder/TDecEntropy.cpp

    r950 r976  
    140140#if H_3D_DBBP
    141141
    142 #if MTK_DBBP_SIGNALING_H0094
    143142  if( pcCU->getSlice()->getVPS()->getUseDBBP(pcCU->getSlice()->getLayerIdInVps()) )
    144 #else
    145   if( pcCU->getSlice()->getVPS()->getUseDBBP(pcCU->getSlice()->getLayerIdInVps()) && pcCU->getPartitionSize(uiAbsPartIdx) == RWTH_DBBP_PACK_MODE )
    146 #endif
    147143  {
    148144    decodeDBBPFlag(pcCU, uiAbsPartIdx, uiDepth);
     
    150146    if( pcCU->getDBBPFlag(uiAbsPartIdx) )
    151147    {
    152 #if !MTK_DBBP_SIGNALING_H0094
    153       AOF( pcCU->getPartitionSize(uiAbsPartIdx) == RWTH_DBBP_PACK_MODE );
    154 #endif
    155148     
    156149      // get collocated depth block
     
    169162      pcCU->setPartSizeSubParts(eVirtualPartSize, uiAbsPartIdx, uiDepth);
    170163     
    171 #if RWTH_DBBP_NO_SPU_H0057
    172164      // make sure that DBBP flag is set for both segments
    173165      UInt uiPUOffset = ( g_auiPUOffset[UInt( eVirtualPartSize )] << ( ( pcCU->getSlice()->getSPS()->getMaxCUDepth() - uiDepth ) << 1 ) ) >> 4;
    174166      pcCU->setDBBPFlagSubParts(true, uiAbsPartIdx, 0, uiDepth);
    175167      pcCU->setDBBPFlagSubParts(true, uiAbsPartIdx+uiPUOffset, 1, uiDepth);
    176 #endif
    177168    }
    178169  }
     
    210201    return;
    211202  }
    212 #if !MTK_SDC_FLAG_FIX_H0095
    213 #if H_3D_DIM_SDC
    214   if( pcCU->getSDCFlag(uiAbsPartIdx) )
    215   {
    216     return;
    217   }
    218 #endif
    219 #endif
    220203 
    221204  m_pcEntropyDecoderIf->parseIPCMInfo( pcCU, uiAbsPartIdx, uiDepth );
     
    309292          pcSubCU->getInterMergeCandidates( 0, 0, cMvFieldNeighbours, uhInterDirNeighbours, numValidMergeCand);
    310293          pcSubCU->xGetInterMergeCandidates( 0, 0, cMvFieldNeighbours, uhInterDirNeighbours
    311 #if !ETRIKHU_CLEANUP_H0083
    312             ,vspFlag
    313 #endif
    314294            , inheritedVSPDisInfo
    315295#if H_3D_SPIVMP
    316 #if !ETRIKHU_CLEANUP_H0083_MISSING
    317             , bSPIVMPFlag
    318 #endif
    319296            , pcMvFieldSP, puhInterDirSP
    320297#endif
    321298            , numValidMergeCand );
    322 
    323 #if ETRIKHU_CLEANUP_H0083
    324299          pcSubCU->buildMCL( cMvFieldNeighbours, uhInterDirNeighbours, vspFlag
    325300#if H_3D_SPIVMP
     
    327302#endif
    328303            , numValidMergeCand );
    329 #endif
    330304          pcCU->setVSPFlagSubParts( vspFlag[uiMergeIndex], uiSubPartIdx, uiPartIdx, uiDepth );
    331305
     
    361335        pcSubCU->getInterMergeCandidates( uiSubPartIdx-uiAbsPartIdx, uiPartIdx, cMvFieldNeighbours, uhInterDirNeighbours, numValidMergeCand, uiMergeIndex );
    362336        pcSubCU->xGetInterMergeCandidates( uiSubPartIdx-uiAbsPartIdx, uiPartIdx, cMvFieldNeighbours, uhInterDirNeighbours
    363 #if !ETRIKHU_CLEANUP_H0083
    364           , vspFlag
    365 #endif
    366337          , inheritedVSPDisInfo
    367338#if H_3D_SPIVMP
    368 #if !ETRIKHU_CLEANUP_H0083_MISSING
    369             , bSPIVMPFlag
    370 #endif
    371339          , pcMvFieldSP, puhInterDirSP
    372340#endif
    373341          ,numValidMergeCand, uiMergeIndex );
    374 
    375 #if ETRIKHU_CLEANUP_H0083
    376342        pcSubCU->buildMCL( cMvFieldNeighbours, uhInterDirNeighbours, vspFlag
    377343#if H_3D_SPIVMP
     
    379345#endif
    380346          ,numValidMergeCand );
    381 #endif
    382347        pcCU->setVSPFlagSubParts( vspFlag[uiMergeIndex], uiSubPartIdx, uiPartIdx, uiDepth );
    383348        if(vspFlag[uiMergeIndex])
  • trunk/source/Lib/TLibDecoder/TDecEntropy.h

    r964 r976  
    7777#endif
    7878
    79 #if H_MV_HLS_8_HRD_Q0102_08
     79#if H_MV
    8080  virtual Void parseSliceHeader          ( TComSlice*& rpcSlice, ParameterSetManagerDecoder *parameterSetManager, Int targetOlsIdx )       = 0;
    8181#else
     
    164164  Void    decodePPS                   ( TComPPS* pcPPS )    { m_pcEntropyDecoderIf->parsePPS(pcPPS);                    }
    165165#endif
    166 #if H_MV_HLS_8_HRD_Q0102_08
     166#if H_MV
    167167  Void    decodeSliceHeader           ( TComSlice*& rpcSlice, ParameterSetManagerDecoder *parameterSetManager, Int targetOlsIdx)  { m_pcEntropyDecoderIf->parseSliceHeader(rpcSlice, parameterSetManager, targetOlsIdx );         }
    168168#else
  • trunk/source/Lib/TLibDecoder/TDecGop.cpp

    r964 r976  
    248248    calcAndPrintHashStatus(*rpcPic->getPicYuvRec(), hash);
    249249  }
    250 
    251 #if !H_MV_HLS_7_VPS_P0300_27
    252 #if SETTING_PIC_OUTPUT_MARK
    253   rpcPic->setOutputMark(rpcPic->getSlice(0)->getPicOutputFlag() ? true : false);
    254 #else
    255   rpcPic->setOutputMark(true);
    256 #endif
    257   rpcPic->setReconMark(true);
    258 #endif
    259250}
    260251
  • trunk/source/Lib/TLibDecoder/TDecSbac.cpp

    r964 r976  
    8787, m_cDdcDataSCModel           ( 1,             1,               NUM_DDC_DATA_CTX              , m_contextModels + m_numContextModels, m_numContextModels)
    8888, m_cAngleFlagSCModel         ( 1,             1,               NUM_ANGLE_FLAG_CTX            , m_contextModels + m_numContextModels, m_numContextModels)
    89 #if H_3D_DIM_DMM && !MTK_DMM_SIMP_CODE_H0092
    90 , m_cDmm1DataSCModel          ( 1,             1,               NUM_DMM1_DATA_CTX             , m_contextModels + m_numContextModels, m_numContextModels)
    91 #endif
    9289#if H_3D_DIM_SDC
    9390, m_cSDCResidualFlagSCModel     ( 1,             1,             SDC_NUM_RESIDUAL_FLAG_CTX     , m_contextModels + m_numContextModels, m_numContextModels)
     
    171168  m_cDdcDataSCModel.initBuffer           ( sliceType, qp, (UChar*)INIT_DDC_DATA );
    172169  m_cAngleFlagSCModel.initBuffer         ( sliceType, qp, (UChar*)INIT_ANGLE_FLAG );
    173 #if H_3D_DIM_DMM && !MTK_DMM_SIMP_CODE_H0092
    174   m_cDmm1DataSCModel.initBuffer          ( sliceType, qp, (UChar*)INIT_DMM1_DATA );
    175 #endif
    176170#if H_3D_DIM_SDC
    177171  m_cSDCResidualFlagSCModel.initBuffer    ( sliceType, qp, (UChar*)INIT_SDC_RESIDUAL_FLAG );
     
    241235  m_cDdcDataSCModel.initBuffer           ( eSliceType, iQp, (UChar*)INIT_DDC_DATA );
    242236  m_cAngleFlagSCModel.initBuffer         ( eSliceType, iQp, (UChar*)INIT_ANGLE_FLAG );
    243 #if H_3D_DIM_DMM && !MTK_DMM_SIMP_CODE_H0092
    244   m_cDmm1DataSCModel.initBuffer          ( eSliceType, iQp, (UChar*)INIT_DMM1_DATA );
    245 #endif
    246237#if H_3D_DIM_SDC
    247238  m_cSDCResidualFlagSCModel.initBuffer    ( eSliceType, iQp, (UChar*)INIT_SDC_RESIDUAL_FLAG );
     
    386377    uiCount++;
    387378  }
    388 #if QC_SIMP_DELTADC_CODING_H0131
    389379  while( uiSymbol && ( uiCount != 3 ) );
    390 #else
    391   while( uiSymbol && ( uiCount != 13 ) );
    392 #endif
    393380  ruiSymbol = uiCount - 1;
    394381
     
    426413  for( Int i = 0; i < iNumBit; i++ )
    427414  {
    428 #if MTK_DMM_SIMP_CODE_H0092
    429       m_pcTDecBinIf->decodeBinEP( uiSymbol );
    430 #else
    431     m_pcTDecBinIf->decodeBin( uiSymbol, m_cDmm1DataSCModel.get(0, 0, 0) );
    432 #endif
     415    m_pcTDecBinIf->decodeBinEP( uiSymbol );
    433416    uiIdx += uiSymbol << i;
    434417  }
     
    11371120  if( ( pcCU->getSlice()->getSPS()->getMaxCUWidth() >> pcCU->getDepth( absPartIdx ) ) < 64 ) //DMM and HEVC intra modes are both allowed
    11381121  {
    1139 #if LGE_SIMP_DIM_NOT_PRESENT_FLAG_CODING_H0119_H0135
    11401122    m_pcTDecBinIf->decodeBin( uiSymbol, m_cAngleFlagSCModel.get( 0, 0, 0 ) );
    1141 #else
    1142     m_pcTDecBinIf->decodeBin( uiSymbol, m_cAngleFlagSCModel.get( 0, 0, pcCU->getCtxAngleFlag( absPartIdx ) ) );
    1143 #endif
    11441123  }
    11451124  else
     
    20812060    UInt dir     = pcCU->getLumaIntraDir( absPartIdx );
    20822061    uiNumSegments = isDimMode( dir ) ? 2 : 1;
    2083 #if MTK_DELTA_DC_FLAG_ONE_CONTEXT_H0084_H0100_H0113
    20842062    m_pcTDecBinIf->decodeBin( symbol, m_cDdcFlagSCModel.get( 0, 0, 0 ) );
    2085 #else
    2086     m_pcTDecBinIf->decodeBin( symbol, m_cDdcFlagSCModel.get( 0, 0, uiNumSegments-1 ) );
    2087 #endif
    20882063    if( pcCU->getSDCFlag( absPartIdx ) )
    20892064    {
     
    21562131Void TDecSbac::parseDBBPFlag( TComDataCU* pcCU, UInt uiAbsPartIdx, UInt uiDepth )
    21572132{
    2158 #if !MTK_DBBP_SIGNALING_H0094
    2159   PartSize ePartSize = pcCU->getPartitionSize( uiAbsPartIdx );
    2160 #endif
    21612133  AOF( pcCU->getSlice()->getVPS()->getUseDBBP(pcCU->getSlice()->getLayerIdInVps()) );
    21622134  AOF( !pcCU->getSlice()->getIsDepth() );
    2163 #if !MTK_DBBP_SIGNALING_H0094
    2164   AOF( ePartSize == RWTH_DBBP_PACK_MODE );
    2165 #endif
    21662135 
    21672136  UInt uiSymbol = 0;
     
    21722141  {
    21732142    pcCU->setDBBPFlagSubParts(true, uiAbsPartIdx, 0, uiDepth);
    2174 #if MTK_DIS_SPBIP8X4_H0205
    21752143    UInt uiCurrPartNumQ = (pcCU->getPic()->getNumPartInCU() >> (2 * uiDepth)) >> 2;
    21762144    pcCU->setDBBPFlagSubParts(true, uiAbsPartIdx + 2*uiCurrPartNumQ, 1, uiDepth);
    2177 #endif
    21782145  }
    21792146}
  • trunk/source/Lib/TLibDecoder/TDecSbac.h

    r964 r976  
    8787#endif
    8888
    89 #if H_MV_HLS_8_HRD_Q0102_08
     89#if H_MV
    9090  Void  parseSliceHeader          ( TComSlice*& /*rpcSlice*/, ParameterSetManagerDecoder* /*parameterSetManager*/, Int targetOlsIdx ) {}
    9191#else
    92   Void  parseSliceHeader          ( TComSlice*& /*rpcSlice*/, ParameterSetManagerDecoder* /*parameterSetManager*/) {}
     92  Void  parseSliceHeader          ( TComSlice*& /*rpcSlice*/, ParameterSetManagerDecoder* /*parameterSetManager*/ ) {}
    9393#endif
    9494  Void  parseTerminatingBit       ( UInt& ruiBit );
     
    218218  ContextModel3DBuffer m_cDdcDataSCModel;
    219219  ContextModel3DBuffer m_cAngleFlagSCModel;
    220 #if H_3D_DIM_DMM && !MTK_DMM_SIMP_CODE_H0092
    221   ContextModel3DBuffer m_cDmm1DataSCModel;
    222 #endif
    223220#if H_3D_DIM_SDC 
    224221  ContextModel3DBuffer m_cSDCResidualFlagSCModel;
  • trunk/source/Lib/TLibDecoder/TDecSlice.cpp

    r950 r976  
    221221    }
    222222  }
    223 #if  MTK_DLT_CODING_FIX_H0091
     223#if  H_3D
    224224  if( pcSlice->getPPS()->getDLT() != NULL )
    225225  {
  • trunk/source/Lib/TLibDecoder/TDecTop.cpp

    r964 r976  
    371371  m_isNoOutputPriorPics = false;
    372372#endif
    373 #if H0056_EOS_CHECKS
     373#if H_MV
    374374  m_isLastNALWasEos = false;
    375 #endif
    376 #if H_MV
    377375  m_layerId = 0;
    378376  m_viewId = 0;
     
    382380  m_pcCamParsCollector = 0;
    383381#endif
    384 #if H_MV_HLS_8_HRD_Q0102_08
     382#if H_MV
    385383  m_targetOptLayerSetIdx = -1;
    386384#endif
     
    511509    {
    512510      rpcPic->setOutputMark(false);
    513 #if H_MV_HLS_7_VPS_P0300_27
     511#if H_MV
    514512      rpcPic->setPicOutputFlag(false);
    515513#endif
     
    521519    {
    522520      rpcPic->setOutputMark(false);
    523 #if H_MV_HLS_7_VPS_P0300_27
     521#if H_MV
    524522      rpcPic->setPicOutputFlag(false);
    525523#endif
     
    568566  TComSlice::markIvRefPicsAsShortTerm( m_refPicSetInterLayer0, m_refPicSetInterLayer1 ); 
    569567  TComSlice::markCurrPic( pcPic );
    570 #if !H_MV_HLS_8_DBP_NODOC_42
    571   TComSlice::markIvRefPicsAsUnused   ( m_ivPicLists, targetDecLayerIdSet, m_parameterSetManagerDecoder.getActiveVPS(), m_layerId, poc );
    572 #endif
    573568#endif
    574569  m_bFirstSliceInPicture  = true;
     
    590585    {
    591586      pcPicTmp->setOutputMark(false);
    592 #if H_MV_HLS_7_VPS_P0300_27
     587#if H_MV
    593588      pcPicTmp->setPicOutputFlag(false);
    594589#endif
     
    670665  }
    671666
    672 #if H_MV_HLS_8_HRD_Q0102_08
     667#if H_MV
    673668  sps->inferSpsMaxDecPicBufferingMinus1( vps, m_targetOptLayerSetIdx, getLayerId(), false );
    674 #endif
    675 
    676 #if H_MV_HLS_8_RPS_Q0100_36
    677669  vps->inferDbpSizeLayerSetZero( sps, false );
    678 #endif
    679 
    680 #if H_MV_HLS_8_PMS_Q0195_21
    681670  // When the value of vps_num_rep_formats_minus1 in the active VPS is equal to 0
    682671  if ( vps->getVpsNumRepFormatsMinus1() == 0 )
     
    685674    assert( sps->getUpdateRepFormatFlag() == false );
    686675  }
    687 #endif
    688 
    689 #if H_MV_HLS_8_RPS_Q0100_36
    690676  sps->checkRpsMaxNumPics( vps, getLayerId() );
    691 #endif
    692 
    693 #if H_MV_HLS_8_MIS_Q0177_22
    694677  if( m_layerId > 0 )
    695678  {
     
    787770  m_apcSlicePilot->setRefPicSetInterLayer( & m_refPicSetInterLayer0, &m_refPicSetInterLayer1 );
    788771  m_apcSlicePilot->setLayerId( nalu.m_layerId );
    789 #endif
    790 
    791 #if H_MV_HLS_8_HRD_Q0102_08
    792772  m_cEntropyDecoder.decodeSliceHeader (m_apcSlicePilot, &m_parameterSetManagerDecoder, m_targetOptLayerSetIdx );
    793 #else
    794   m_cEntropyDecoder.decodeSliceHeader (m_apcSlicePilot, &m_parameterSetManagerDecoder);
    795773#endif
    796774  // set POC for dependent slices in skipped pictures
     
    13401318    case NAL_UNIT_VPS:
    13411319      xDecodeVPS();
    1342 #if H0056_EOS_CHECKS
     1320#if H_MV
    13431321      m_isLastNALWasEos = false;
    13441322#endif
     
    13551333    case NAL_UNIT_PREFIX_SEI:
    13561334    case NAL_UNIT_SUFFIX_SEI:
    1357 #if H0056_EOS_CHECKS
     1335#if H_MV
    13581336      if ( nalu.m_nalUnitType == NAL_UNIT_SUFFIX_SEI )
    13591337      {
     
    13801358    case NAL_UNIT_CODED_SLICE_RASL_N:
    13811359    case NAL_UNIT_CODED_SLICE_RASL_R:
    1382 #if H0056_EOS_CHECKS
     1360#if H_MV
    13831361      if (nalu.m_nalUnitType == NAL_UNIT_CODED_SLICE_TRAIL_R || nalu.m_nalUnitType == NAL_UNIT_CODED_SLICE_TRAIL_N ||
    13841362          nalu.m_nalUnitType == NAL_UNIT_CODED_SLICE_TSA_R || nalu.m_nalUnitType == NAL_UNIT_CODED_SLICE_TSA_N ||
     
    13931371        m_isLastNALWasEos = false;
    13941372      }
    1395 #endif
    1396 #if H_MV
     1373
    13971374      return xDecodeSlice(nalu, iSkipFrame, iPOCLastDisplay, newLayerFlag, sliceSkippedFlag );
    13981375#else
     
    14011378      break;
    14021379    case NAL_UNIT_EOS:
    1403 #if H0056_EOS_CHECKS
     1380#if H_MV
    14041381      assert( m_isLastNALWasEos == false );
    14051382      //Check layer id of the nalu. if it is not 0, give a warning message and just return without doing anything.
  • trunk/source/Lib/TLibDecoder/TDecTop.h

    r964 r976  
    195195  Bool*                    m_layerInitilizedFlag; // initialization Layers
    196196  static ParameterSetManagerDecoder m_parameterSetManagerDecoder;  // storage for parameter sets
    197 #if  H_MV_HLS_8_HRD_Q0102_08
    198197  Int                      m_targetOptLayerSetIdx;
    199 #endif
    200198#else
    201199  ParameterSetManagerDecoder m_parameterSetManagerDecoder;  // storage for parameter sets
     
    234232  Bool                    m_craNoRaslOutputFlag;    //value of variable NoRaslOutputFlag of the last CRA pic
    235233#endif
    236 #if H0056_EOS_CHECKS
     234#if H_MV
    237235  Bool                    m_isLastNALWasEos;
    238236#endif
     
    271269  Void  deletePicBuffer();
    272270#if H_MV
    273 #if H_MV_HLS_7_VPS_P0300_27
    274271  TComVPS* getActiveVPS() { return m_parameterSetManagerDecoder.getActiveVPS( ); }
    275 #endif
    276272  TComSPS* getActiveSPS() { return m_parameterSetManagerDecoder.getActiveSPS( m_layerId ); }
    277273#else
     
    296292  Void                    setIvPicLists         ( TComPicLists* picLists) { m_ivPicLists = picLists; }
    297293  Void                    setLayerInitilizedFlags( Bool* val )    { m_layerInitilizedFlag = val; }
    298 #if  H_MV_HLS_8_HRD_Q0102_08
    299294  Void                    setTargetOptLayerSetIdx( Int targetOptLayerSetIdx ) { m_targetOptLayerSetIdx = targetOptLayerSetIdx; }   
    300 #endif
    301295  TComVPS*                getPrefetchedVPS      ()               { return m_parameterSetManagerDecoder.getPrefetchedVPS( 0 ); }; //Assuming that currently only one VPS is present.
    302296  Int                     getCurrPoc            ()               { return m_apcSlicePilot->getPOC(); }
Note: See TracChangeset for help on using the changeset viewer.