diff --git a/source/Lib/CommonLib/Slice.cpp b/source/Lib/CommonLib/Slice.cpp index df9dc313d5d760c714d550a0c5fd180bc1c9cc1e..08ae79cbe793a9ead060b4b661a889d49da4a7a0 100644 --- a/source/Lib/CommonLib/Slice.cpp +++ b/source/Lib/CommonLib/Slice.cpp @@ -1984,9 +1984,9 @@ void ScalingList::setDefaultScalingList() } } /** check if use default quantization matrix - * \returns true if use default quantization matrix in all size + * \returns true if the scaling list is not equal to the default quantization matrix */ -bool ScalingList::checkDefaultScalingList() +bool ScalingList::isNotDefaultScalingList() { bool isAllDefault = true; for ( uint32_t sizeId = SCALING_LIST_2x2; sizeId <= SCALING_LIST_64x64; sizeId++) @@ -2005,6 +2005,7 @@ bool ScalingList::checkDefaultScalingList() break; } } + if (!isAllDefault) break; } return !isAllDefault; diff --git a/source/Lib/CommonLib/Slice.h b/source/Lib/CommonLib/Slice.h index 22ac7ed2d7745099d354ffeb455737b72edc6ff5..17223c862830fed9320c859aa138064ac4e265b0 100644 --- a/source/Lib/CommonLib/Slice.h +++ b/source/Lib/CommonLib/Slice.h @@ -170,7 +170,7 @@ public: void processRefMatrix(uint32_t sizeId, uint32_t listId , uint32_t refListId ); bool xParseScalingList(const std::string &fileName); void setDefaultScalingList(); - bool checkDefaultScalingList(); + bool isNotDefaultScalingList(); private: void outputScalingLists(std::ostream &os) const; diff --git a/source/Lib/EncoderLib/EncLib.cpp b/source/Lib/EncoderLib/EncLib.cpp index de684c90252349f3131407a18847b50cbcc47cb2..a76714a906200823b9f0eec0c98e2a07993096f3 100644 --- a/source/Lib/EncoderLib/EncLib.cpp +++ b/source/Lib/EncoderLib/EncLib.cpp @@ -565,7 +565,7 @@ void EncLib::xInitScalingLists(SPS &sps, PPS &pps) aps.getScalingList().setDefaultScalingList(); CHECK( aps.getScalingList().xParseScalingList( getScalingListFileName() ), "Error Parsing Scaling List Input File" ); aps.getScalingList().checkDcOfMatrix(); - if( aps.getScalingList().checkDefaultScalingList() == false ) + if( aps.getScalingList().isNotDefaultScalingList() == false ) { setUseScalingListId( SCALING_LIST_DEFAULT ); } @@ -577,7 +577,7 @@ void EncLib::xInitScalingLists(SPS &sps, PPS &pps) THROW( "parse scaling list"); } sps.getScalingList().checkDcOfMatrix(); - sps.setScalingListPresentFlag(sps.getScalingList().checkDefaultScalingList()); + sps.setScalingListPresentFlag(sps.getScalingList().isNotDefaultScalingList()); pps.setScalingListPresentFlag(false); quant->setScalingList(&(sps.getScalingList()), maxLog2TrDynamicRange, sps.getBitDepths());