Changeset 945 in SHVCSoftware for branches/SHM-upgrade/source/Lib/TLibDecoder


Ignore:
Timestamp:
31 Dec 2014, 07:37:45 (10 years ago)
Author:
seregin
Message:

temporal improvement for profile/level signalling

File:
1 edited

Legend:

Unmodified
Added
Removed
  • branches/SHM-upgrade/source/Lib/TLibDecoder/TDecCAVLC.cpp

    r938 r945  
    22342234  for (Int i = 0; i < maxNumSubLayersMinus1; i++)
    22352235  {
     2236#if MULTIPLE_PTL_SUPPORT
     2237    READ_FLAG( uiCode, "sub_layer_profile_present_flag[i]" ); rpcPTL->setSubLayerProfilePresentFlag(i, uiCode);
     2238#else
    22362239    if(profilePresentFlag)
    22372240    {
    22382241      READ_FLAG( uiCode, "sub_layer_profile_present_flag[i]" ); rpcPTL->setSubLayerProfilePresentFlag(i, uiCode);
    22392242    }
     2243#endif
    22402244    READ_FLAG( uiCode, "sub_layer_level_present_flag[i]"   ); rpcPTL->setSubLayerLevelPresentFlag  (i, uiCode);
    22412245  }
     
    22522256  for(Int i = 0; i < maxNumSubLayersMinus1; i++)
    22532257  {
     2258#if MULTIPLE_PTL_SUPPORT
     2259    if( rpcPTL->getSubLayerProfilePresentFlag(i) )
     2260#else
    22542261    if( profilePresentFlag && rpcPTL->getSubLayerProfilePresentFlag(i) )
     2262#endif
    22552263    {
    22562264      parseProfileTier(rpcPTL->getSubLayerPTL(i));
     
    27442752  {
    27452753    vps->setProfilePresentFlag(1, false);
     2754#if MULTIPLE_PTL_SUPPORT
     2755    parsePTL( vps->getPTL(1), vps->getProfilePresentFlag(1), vps->getMaxTLayers() - 1 );
     2756#else
    27462757    vps->getPTLForExtnPtr()->empty();
    27472758    vps->getPTLForExtnPtr()->resize(2);
    27482759    vps->getPTLForExtn(1)->copyProfileInfo( vps->getPTL() );
    27492760    parsePTL( vps->getPTLForExtn(1), vps->getProfilePresentFlag(1), vps->getMaxTLayers() - 1 );
     2761#endif
    27502762  }
    27512763#endif
     
    29742986  Int const numBitsForPtlIdx = vps->calculateLenOfSyntaxElement( vps->getNumProfileTierLevel() );
    29752987#endif
     2988#if !MULTIPLE_PTL_SUPPORT
    29762989  vps->getPTLForExtnPtr()->resize(vps->getNumProfileTierLevel());
     2990#endif
    29772991#if LIST_OF_PTL
    29782992  for(Int idx = vps->getBaseLayerInternalFlag() ? 2 : 1; idx <= vps->getNumProfileTierLevel() - 1; idx++)
     
    29863000#if P0048_REMOVE_PROFILE_REF
    29873001      // Copy profile information from previous one
     3002#if MULTIPLE_PTL_SUPPORT
     3003      vps->getPTL(idx)->copyProfileInfo( vps->getPTL( idx - 1 ) );
     3004#else
    29883005      vps->getPTLForExtn(idx)->copyProfileInfo( (idx==1) ? vps->getPTL() : vps->getPTLForExtn( idx - 1 ) );
     3006#endif
    29893007#else
    29903008      READ_CODE( 6, uiCode, "profile_ref_minus1[i]" ); vps->setProfileLayerSetRef(idx, uiCode + 1);
     
    29983016#endif
    29993017    }
     3018#if MULTIPLE_PTL_SUPPORT
     3019    parsePTL( vps->getPTL(idx), vps->getProfilePresentFlag(idx), vps->getMaxTLayers() - 1 );
     3020#else
    30003021    parsePTL( vps->getPTLForExtn(idx), vps->getProfilePresentFlag(idx), vps->getMaxTLayers() - 1 );
     3022#endif
    30013023  }
    30023024#endif
Note: See TracChangeset for help on using the changeset viewer.