id summary reporter owner description type status priority milestone component version resolution keywords cc 1347 Chroma-QP-adjustment encoder granularity karlsharman "The parameters for chroma-QP-adjustment (not to be confused with chroma-QP-offsets) are not searched for, but instead a checkerboard pattern is used when this feature is enabled. The granularity of this checkerboard pattern is down to the size of a CU. However, chroma-qp-adjustment can be restricted to be signalled at a higher depth. Currently, the encoder ignores this limit when calculating the 'm_ChromaQpAdjIdc', leading to an encoder-decoder mismatch. eg ./bin/TAppEncoderStatic -c cfg/encoder_intra_main_rext.cfg -c BasketballPass.cfg --SEIDecodedPictureHash=1 -f 1 --MaxCUChromaQpAdjustmentDepth=1 will produce a stream that the decoder will mismatch. A possible fix is to adjust the checkerboard to match the granularity of the signalling. In TEncCu::xCompressCU, Int lgMinCuSize = pcSlice->getSPS()->getLog2MinCodingBlockSize(); Change to Int lgMinCuSize = pcSlice->getSPS()->getLog2MinCodingBlockSize() + std::max(0, pcSlice->getSPS()->getLog2DiffMaxMinCodingBlockSize() - pcSlice->getPPS()->getMaxCuChromaQpAdjDepth()); " defect closed minor HM-16.3 HM HM-16.2 fixed ksuehring davidf karlsharman jct-vc@…