﻿id	summary	reporter	owner	description	type	status	priority	milestone	component	version	resolution	keywords	cc
1271	Inference of slice_chroma_qp_adjustment_enabled_flag is not correctly implemented	jackh		"We are currently adding range extensions support to Argon Streams. The head of the HM-range-extensions branch contains the following section in TDecCAVLC.cpp:

{{{
#if RExt__O0044_CU_ADAPTIVE_CHROMA_QP_OFFSET
    if (rpcSlice->getPPS()->getChromaQpAdjTableSize() > 0)
    {
      READ_FLAG(uiCode, ""slice_chroma_qp_adjustment_enabled_flag""); rpcSlice->setUseChromaQpAdj(uiCode != 0);
    }
#endif
}}}

This doesn't implement the spec rule that slice_chroma_qp_adjustment_enabled_flag is inferred to be zero when it isn't present. This causes problems when a non-zero value has been copied from another slice. The correct code would be:

{{{
#if RExt__O0044_CU_ADAPTIVE_CHROMA_QP_OFFSET
    if (rpcSlice->getPPS()->getChromaQpAdjTableSize() > 0)
    {
      READ_FLAG(uiCode, ""slice_chroma_qp_adjustment_enabled_flag""); rpcSlice->setUseChromaQpAdj(uiCode != 0);
    }
    else rpcSlice->setUseChromaQpAdj(false);
#endif
}}}

I guess a similar correction may be needed for the encoder."	defect	closed	minor	HM+RExt-4.2	HM RExt	RExt-4.1 (HM-12.0)	fixed		davidf karlsharman jct-vc@…
