Changeset 1116 in SHVCSoftware for branches/SHM-dev/source/Lib
- Timestamp:
- 7 Jul 2015, 01:18:46 (10 years ago)
- Location:
- branches/SHM-dev/source/Lib
- Files:
-
- 7 edited
Legend:
- Unmodified
- Added
- Removed
-
branches/SHM-dev/source/Lib/TLibCommon/TComSlice.cpp
r1113 r1116 2022 2022 2023 2023 #if VPS_EXTN_MASK_AND_DIM_INFO 2024 #if VPS_AVC_BL_FLAG_REMOVAL2025 2024 m_nonHEVCBaseLayerFlag = false; 2026 #else2027 m_avcBaseLayerFlag = false;2028 #endif2029 2025 m_splittingFlag = false; 2030 2026 ::memset(m_scalabilityMask, 0, sizeof(m_scalabilityMask)); … … 3712 3708 if ( layerId == 0 || sps->getV1CompatibleSPSFlag() == 1 ) 3713 3709 { 3714 #if VPS_AVC_BL_FLAG_REMOVAL3715 3710 if( layerId == 0 && vps->getNonHEVCBaseLayerFlag() ) 3716 #else3717 if( layerId == 0 && vps->getAvcBaseLayerFlag() )3718 #endif3719 3711 #else 3720 3712 if ( layerId == 0 ) … … 3755 3747 if ( layerId == 0 || sps->getV1CompatibleSPSFlag() == 1 ) 3756 3748 { 3757 #if VPS_AVC_BL_FLAG_REMOVAL3758 3749 if( layerId == 0 && vps->getNonHEVCBaseLayerFlag() ) 3759 #else3760 if( layerId == 0 && vps->getAvcBaseLayerFlag() )3761 #endif3762 3750 #else 3763 3751 if ( layerId == 0 ) … … 3807 3795 if ( layerId == 0 || sps->getV1CompatibleSPSFlag() == 1 ) 3808 3796 { 3809 #if VPS_AVC_BL_FLAG_REMOVAL3810 3797 if( layerId == 0 && vps->getNonHEVCBaseLayerFlag() ) 3811 #else3812 if( layerId == 0 && vps->getAvcBaseLayerFlag() )3813 #endif3814 3798 #else 3815 3799 if ( layerId == 0 ) … … 3854 3838 { 3855 3839 #endif 3856 #if VPS_AVC_BL_FLAG_REMOVAL3857 3840 if( layerId == 0 && vps->getNonHEVCBaseLayerFlag() ) 3858 #else3859 if( layerId == 0 && vps->getAvcBaseLayerFlag() )3860 #endif3861 3841 { 3862 3842 retVal = vps->getVpsRepFormat(layerId)->getBitDepthVpsLuma(); … … 3896 3876 { 3897 3877 #endif 3898 #if VPS_AVC_BL_FLAG_REMOVAL3899 3878 if( layerId == 0 && vps->getNonHEVCBaseLayerFlag() ) 3900 #else3901 if( layerId == 0 && vps->getAvcBaseLayerFlag() )3902 #endif3903 3879 { 3904 3880 retVal = vps->getVpsRepFormat(layerId)->getBitDepthVpsChroma(); … … 3944 3920 if ( layerId == 0 || sps->getV1CompatibleSPSFlag() == 1 ) 3945 3921 { 3946 #if VPS_AVC_BL_FLAG_REMOVAL3947 3922 if( layerId == 0 && vps->getNonHEVCBaseLayerFlag() ) 3948 #else3949 if( layerId == 0 && vps->getAvcBaseLayerFlag() )3950 #endif3951 3923 #else 3952 3924 if ( layerId == 0 ) -
branches/SHM-dev/source/Lib/TLibCommon/TComSlice.h
r1114 r1116 631 631 // ------------------------------------------ 632 632 #if VPS_EXTN_MASK_AND_DIM_INFO 633 #if VPS_AVC_BL_FLAG_REMOVAL634 633 Bool m_nonHEVCBaseLayerFlag; 635 #else636 Bool m_avcBaseLayerFlag; // For now, always set to true.637 #endif638 634 Bool m_splittingFlag; 639 635 Bool m_scalabilityMask[MAX_VPS_NUM_SCALABILITY_TYPES]; … … 1010 1006 Void setNumLayerSets(UInt v) { m_numLayerSets = v; } 1011 1007 #if VPS_EXTN_MASK_AND_DIM_INFO 1012 #if VPS_AVC_BL_FLAG_REMOVAL1013 1008 Bool getNonHEVCBaseLayerFlag() { return m_nonHEVCBaseLayerFlag; } 1014 1009 Void setNonHEVCBaseLayerFlag(Bool x) { m_nonHEVCBaseLayerFlag = x; } 1015 #else1016 Bool getAvcBaseLayerFlag() { return m_avcBaseLayerFlag; }1017 Void setAvcBaseLayerFlag(Bool x) { m_avcBaseLayerFlag = x; }1018 #endif1019 1010 1020 1011 Bool getSplittingFlag() { return m_splittingFlag; } -
branches/SHM-dev/source/Lib/TLibCommon/TypeDef.h
r1115 r1116 48 48 #define INFERENCE_POC_MSB_VAL_PRESENT 1 ///< JCTVC-Q0146 -- poc_msb_val_present_flag shall be equal to 0 when slice_header_extension_length is (inferred to be ) equal to 0 49 49 #define NON_REF_NAL_TYPE_DISCARDABLE 1 ///< JCTVC-P0041 -- If discardable picture is a non-IRAP, it must be a non-referenced sub-layer picture 50 #define VPS_AVC_BL_FLAG_REMOVAL 1 ///< remove avc_base_layer_flag and direct the function its offer to vps_base_layer_internal_flag and vps_base_layer_available_flag51 50 #define VPS_RESERVED_FLAGS 1 ///< vps_base_layer_internal_flag and vps_base_layer_available_flag 52 51 #define VPS_VUI_VST_PARAMS 1 ///< JCTVC-R0227: Related to signalling of VST parameters of the base layer. -
branches/SHM-dev/source/Lib/TLibDecoder/TDecCAVLC.cpp
r1115 r1116 1003 1003 READ_FLAG( uiCode, "vps_base_layer_internal_flag"); pcVPS->setBaseLayerInternalFlag( uiCode ? true : false ); 1004 1004 READ_FLAG( uiCode, "vps_base_layer_available_flag"); pcVPS->setBaseLayerAvailableFlag( uiCode ? true : false ); 1005 #if VPS_AVC_BL_FLAG_REMOVAL1006 1005 pcVPS->setNonHEVCBaseLayerFlag( (pcVPS->getBaseLayerAvailableFlag() && !pcVPS->getBaseLayerInternalFlag()) ? true : false); 1007 #endif1008 1006 #else 1009 1007 READ_CODE( 2, uiCode, "vps_reserved_three_2bits" ); assert(uiCode == 3); … … 2722 2720 UInt numScalabilityTypes = 0, i = 0, j = 0; 2723 2721 2724 #if !VPS_AVC_BL_FLAG_REMOVAL2725 READ_FLAG( uiCode, "avc_base_layer_flag" ); vps->setAvcBaseLayerFlag(uiCode ? true : false);2726 #endif2727 2728 2722 READ_FLAG( uiCode, "splitting_flag" ); vps->setSplittingFlag(uiCode ? true : false); 2729 2723 -
branches/SHM-dev/source/Lib/TLibDecoder/TDecTop.cpp
r1111 r1116 498 498 499 499 // When avc_base_layer_flag is equal to 1, it is a requirement of bitstream conformance that the value of sps_scaling_list_ref_layer_id shall be greater than 0 500 #if VPS_AVC_BL_FLAG_REMOVAL501 500 if( activeVPS->getNonHEVCBaseLayerFlag() ) 502 #else503 if( activeVPS->getAvcBaseLayerFlag() )504 #endif505 501 { 506 502 assert( refLayerId > 0 ); … … 531 527 532 528 // When avc_base_layer_flag is equal to 1, it is a requirement of bitstream conformance that the value of sps_scaling_list_ref_layer_id shall be greater than 0 533 #if VPS_AVC_BL_FLAG_REMOVAL534 529 if( activeVPS->getNonHEVCBaseLayerFlag() ) 535 #else536 if( activeVPS->getAvcBaseLayerFlag() )537 #endif538 530 { 539 531 assert( refLayerId > 0 ); … … 561 553 562 554 #if AVC_BASE 563 #if VPS_AVC_BL_FLAG_REMOVAL564 555 if( activeVPS->getNonHEVCBaseLayerFlag() ) 565 #else566 if( activeVPS->getAvcBaseLayerFlag() )567 #endif568 556 { 569 557 TComPic* pBLPic = (*m_ppcTDecTop[0]->getListPic()->begin()); … … 1389 1377 { 1390 1378 #if AVC_BASE 1391 #if VPS_AVC_BL_FLAG_REMOVAL1392 1379 if( m_layerId > 0 && m_parameterSetManagerDecoder.getPrefetchedVPS(0)->getNonHEVCBaseLayerFlag() ) 1393 #else1394 if( m_layerId > 0 && m_parameterSetManagerDecoder.getPrefetchedVPS(0)->getAvcBaseLayerFlag() )1395 #endif1396 1380 { 1397 1381 TComPic* pBLPic = (*m_ppcTDecTop[0]->getListPic()->begin()); … … 1748 1732 UInt refLayerId = pcSlice->getVPS()->getRefLayerId(m_layerId, refLayerIdc); 1749 1733 #if AVC_BASE 1750 #if VPS_AVC_BL_FLAG_REMOVAL1751 1734 if( refLayerId == 0 && m_parameterSetManagerDecoder.getActiveVPS()->getNonHEVCBaseLayerFlag() ) 1752 #else1753 if( refLayerId == 0 && m_parameterSetManagerDecoder.getActiveVPS()->getAvcBaseLayerFlag() )1754 #endif1755 1735 { 1756 1736 TComPic* pic = *m_ppcTDecTop[0]->getListPic()->begin(); … … 1864 1844 UInt refLayerIdc = pcSlice->getInterLayerPredLayerIdc(i); 1865 1845 #if AVC_BASE 1866 #if VPS_AVC_BL_FLAG_REMOVAL1867 1846 if( pcSlice->getVPS()->getRefLayerId( m_layerId, refLayerIdc ) == 0 && m_parameterSetManagerDecoder.getActiveVPS()->getNonHEVCBaseLayerFlag() ) 1868 #else1869 if( pcSlice->getVPS()->getRefLayerId( m_layerId, refLayerIdc ) == 0 && m_parameterSetManagerDecoder.getActiveVPS()->getAvcBaseLayerFlag() )1870 #endif1871 1847 { 1872 1848 pcSlice->setBaseColPic ( refLayerIdc, *m_ppcTDecTop[0]->getListPic()->begin() ); … … 2233 2209 #endif 2234 2210 #if AVC_BASE 2235 #if VPS_AVC_BL_FLAG_REMOVAL2236 2211 if( m_parameterSetManagerDecoder.getPrefetchedVPS(0)->getNonHEVCBaseLayerFlag() ) 2237 #else2238 if( m_parameterSetManagerDecoder.getPrefetchedVPS(0)->getAvcBaseLayerFlag() )2239 #endif2240 2212 { 2241 2213 if( !m_ppcTDecTop[0]->getBLReconFile()->good() ) -
branches/SHM-dev/source/Lib/TLibEncoder/TEncCavlc.cpp
r1115 r1116 2005 2005 #if VPS_EXTN_MASK_AND_DIM_INFO 2006 2006 UInt i = 0, j = 0; 2007 #if !VPS_AVC_BL_FLAG_REMOVAL2008 WRITE_FLAG( vps->getAvcBaseLayerFlag(), "avc_base_layer_flag" );2009 #endif2010 2007 2011 2008 WRITE_FLAG( vps->getSplittingFlag(), "splitting_flag" ); -
branches/SHM-dev/source/Lib/TLibEncoder/TEncGOP.cpp
r1094 r1116 1290 1290 // inferring of the scaling list can be moved to the config file 1291 1291 UInt refLayerId = 0; 1292 #if VPS_AVC_BL_FLAG_REMOVAL1293 1292 if( m_layerId > 0 && !m_pcEncTop->getVPS()->getNonHEVCBaseLayerFlag() && m_pcEncTop->getVPS()->getRecursiveRefLayerFlag( m_layerId, refLayerId ) ) 1294 #else1295 if( m_layerId > 0 && !m_pcEncTop->getVPS()->getAvcBaseLayerFlag() && m_pcEncTop->getVPS()->getRecursiveRefLayerFlag( m_layerId, refLayerId ) )1296 #endif1297 1293 { 1298 1294 m_pcEncTop->getSPS()->setInferScalingListFlag( true ); … … 1324 1320 // inferring of the scaling list can be moved to the config file 1325 1321 UInt refLayerId = 0; 1326 #if VPS_AVC_BL_FLAG_REMOVAL1327 1322 if( m_layerId > 0 && !m_pcEncTop->getVPS()->getNonHEVCBaseLayerFlag() && m_pcEncTop->getVPS()->getRecursiveRefLayerFlag( m_layerId, refLayerId ) ) 1328 #else1329 if( m_layerId > 0 && !m_pcEncTop->getVPS()->getAvcBaseLayerFlag() && m_pcEncTop->getVPS()->getRecursiveRefLayerFlag( m_layerId, refLayerId ) )1330 #endif1331 1323 { 1332 1324 m_pcEncTop->getSPS()->setInferScalingListFlag( true ); … … 2292 2284 2293 2285 #if AVC_BASE 2294 #if VPS_AVC_BL_FLAG_REMOVAL2295 2286 if( m_layerId == 0 && m_pcEncTop->getVPS()->getNonHEVCBaseLayerFlag() ) 2296 #else2297 if( m_layerId == 0 && m_pcEncTop->getVPS()->getAvcBaseLayerFlag() )2298 #endif2299 2287 { 2300 2288 pcPic->getPicYuvOrg()->copyToPic( pcPic->getPicYuvRec() ); … … 2388 2376 OutputNALUnit nalu( NAL_UNIT_VPS, 0, 0 ); // The value of nuh_layer_id of VPS NAL unit shall be equal to 0. 2389 2377 #if AVC_BASE 2390 #if VPS_AVC_BL_FLAG_REMOVAL2391 2378 if( ( m_layerId > 0 && m_pcEncTop->getVPS()->getNonHEVCBaseLayerFlag() ) || ( m_layerId == 0 && !m_pcEncTop->getVPS()->getNonHEVCBaseLayerFlag() ) ) 2392 #else2393 if( ( m_layerId > 0 && m_pcEncTop->getVPS()->getAvcBaseLayerFlag() ) || ( m_layerId == 0 && !m_pcEncTop->getVPS()->getAvcBaseLayerFlag() ) )2394 #endif2395 2379 #else 2396 2380 if( m_layerId == 0 )
Note: See TracChangeset for help on using the changeset viewer.