diff --git a/source/Lib/CommonLib/Quant.cpp b/source/Lib/CommonLib/Quant.cpp index f57a415a6dbe90bf888ad9e787449c318b7cda42..f2081f62e7dac20d15a9a2e41cc123212760f9de 100644 --- a/source/Lib/CommonLib/Quant.cpp +++ b/source/Lib/CommonLib/Quant.cpp @@ -545,17 +545,21 @@ void Quant::setScalingList(ScalingList *scalingList, const int maxLog2TrDynamicR if ((size == SCALING_LIST_2x2 && list < 4) || (size == SCALING_LIST_64x64 && list % (SCALING_LIST_NUM / SCALING_LIST_PRED_MODES) != 0)) // skip 2x2 luma continue; #if JVET_Q0505_CHROAM_QM_SIGNALING_400 - if (!(scalingList->getChromaScalingListPresentFlag() || list % (SCALING_LIST_NUM / SCALING_LIST_PRED_MODES) == 0 || (size ==SCALING_LIST_64x64)))// skip chroma QM for 400 + if (scalingList->getChromaScalingListPresentFlag() || scalingListId % 3 == 2 || scalingListId == 27) { - scalingList->processDefaultMatrix(scalingListId); - scalingListId++; continue; - } #endif - for(int qp = minimumQp; qp < maximumQp; qp++) + for(int qp = minimumQp; qp < maximumQp; qp++) + { + xSetScalingListEnc(scalingList, list, size, qp, scalingListId); + xSetScalingListDec(*scalingList, list, size, qp, scalingListId); + } +#if JVET_Q0505_CHROAM_QM_SIGNALING_400 + } + else // chroma QMs in 400 { - xSetScalingListEnc(scalingList, list, size, qp, scalingListId); - xSetScalingListDec(*scalingList, list, size, qp, scalingListId); + scalingList->processDefaultMatrix(scalingListId); } +#endif scalingListId++; } } diff --git a/source/Lib/EncoderLib/EncLib.cpp b/source/Lib/EncoderLib/EncLib.cpp index 8212adc027fb65fcfdbdd367c5cc5e37bf9ac08c..d455c05efd541d5d81032b8392afc02144cfcd5d 100644 --- a/source/Lib/EncoderLib/EncLib.cpp +++ b/source/Lib/EncoderLib/EncLib.cpp @@ -597,7 +597,8 @@ void EncLib::xInitScalingLists( SPS &sps, APS &aps ) for (uint32_t scalingListId = 0; scalingListId < 28; scalingListId++) { #if JVET_Q0505_CHROAM_QM_SIGNALING_400 - if (aps.getScalingList().getChromaScalingListPresentFlag()|| scalingListId % 3 == 2 || scalingListId == 27){ + if (aps.getScalingList().getChromaScalingListPresentFlag()|| scalingListId % 3 == 2 || scalingListId == 27) + { #endif aps.getScalingList().checkPredMode(scalingListId); #if JVET_Q0505_CHROAM_QM_SIGNALING_400