Skip to content
Snippets Groups Projects
Commit 0fc71163 authored by Karsten Suehring's avatar Karsten Suehring
Browse files

Merge branch 'fix_APS_constraint_check' into 'master'

Fix APS constraints check for multi-layers streams

See merge request !1704
parents fb045a1c 67df77b9
No related branches found
No related tags found
1 merge request!1704Fix APS constraints check for multi-layers streams
Pipeline #5159 passed
...@@ -148,17 +148,18 @@ public: ...@@ -148,17 +148,18 @@ public:
APS* existedAPS = m_paramsetMap[apsId].parameterSet; APS* existedAPS = m_paramsetMap[apsId].parameterSet;
#if JVET_R0201_PREFIX_SUFFIX_APS_CLEANUP #if JVET_R0201_PREFIX_SUFFIX_APS_CLEANUP
bool sameNalUnitType = aps->getHasPrefixNalUnitType() == existedAPS->getHasPrefixNalUnitType(); bool sameNalUnitType = aps->getHasPrefixNalUnitType() == existedAPS->getHasPrefixNalUnitType();
bool samePU = aps->getLayerId() == existedAPS->getLayerId();
if( aps->getAPSType() == LMCS_APS ) if( aps->getAPSType() == LMCS_APS )
{ {
CHECK( sameNalUnitType && aps->getReshaperAPSInfo() != existedAPS->getReshaperAPSInfo(), "All APS NAL units with a particular value of nal_unit_type, a particular value of aps_adaptation_parameter_set_id, and a particular value of aps_params_type within a PU shall have the same content" ); CHECK( samePU && sameNalUnitType && aps->getReshaperAPSInfo() != existedAPS->getReshaperAPSInfo(), "All APS NAL units with a particular value of nal_unit_type, a particular value of aps_adaptation_parameter_set_id, and a particular value of aps_params_type within a PU shall have the same content" );
} }
else if( aps->getAPSType() == ALF_APS ) else if( aps->getAPSType() == ALF_APS )
{ {
CHECK( sameNalUnitType && aps->getAlfAPSParam() != existedAPS->getAlfAPSParam(), "All APS NAL units with a particular value of nal_unit_type, a particular value of aps_adaptation_parameter_set_id, and a particular value of aps_params_type within a PU shall have the same content" ); CHECK( samePU && sameNalUnitType && aps->getAlfAPSParam() != existedAPS->getAlfAPSParam(), "All APS NAL units with a particular value of nal_unit_type, a particular value of aps_adaptation_parameter_set_id, and a particular value of aps_params_type within a PU shall have the same content" );
} }
else if( aps->getAPSType() == SCALING_LIST_APS ) else if( aps->getAPSType() == SCALING_LIST_APS )
{ {
CHECK( sameNalUnitType && aps->getScalingList() != existedAPS->getScalingList(), "All APS NAL units with a particular value of nal_unit_type, a particular value of aps_adaptation_parameter_set_id, and a particular value of aps_params_type within a PU shall have the same content" ); CHECK( samePU && sameNalUnitType && aps->getScalingList() != existedAPS->getScalingList(), "All APS NAL units with a particular value of nal_unit_type, a particular value of aps_adaptation_parameter_set_id, and a particular value of aps_params_type within a PU shall have the same content" );
} }
#else #else
if( aps->getAPSType() == LMCS_APS ) if( aps->getAPSType() == LMCS_APS )
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment