Opened 10 years ago

Closed 10 years ago

#1353 closed defect (invalid)

HM vs WD mismatch

Reported by: kolya Owned by:
Priority: minor Milestone:
Component: HM Version: HM-16.2
Keywords: Cc: ksuehring, davidf, karlsharman, jct-vc@…

Description

line 1347 of TDecCAVLC.cpp contains something that seems not to be in specification:

if ( pps->getChromaQpAdjTableSize() > 0 )
{

READ_FLAG( uiCode, "slice_chroma_qp_adjustment_enabled_flag" );
pcSlice->setUseChromaQpAdj( uiCode != 0 );

}
else
{

pcSlice->setUseChromaQpAdj( false );

}

Change History (10)

comment:1 Changed 10 years ago by DefaultCC Plugin

  • Cc ksuehring davidf karlsharman jct-vc@… added

comment:2 Changed 10 years ago by kolya

JCTVC-Q1003_v1 says:

slice_qp_delta
if( pps_slice_chroma_qp_offsets_present_flag ) {

slice_cb_qp_offset
slice_cr_qp_offset

}

<HERE HM contains additional decoding>

if( deblocking_filter_override_enabled_flag )

deblocking_filter_override_flag

Last edited 10 years ago by kolya (previous) (diff)

comment:3 Changed 10 years ago by tung.nguyen

There is no mismatch,
line 1347 you mentioned refers to version 2 (RExt), doc. P1005.

comment:4 Changed 10 years ago by kolya

In this case, may be it is worth marking extension related syntax in a more explicit way? It is of couple of clicks more to find it is covered by RExt related flag.

comment:5 follow-up: Changed 10 years ago by tung.nguyen

It's marked, e.g., in TDecCAVLC @ 322 and follow, beginning with

READ_FLAG( uiCode, "pps_extension_present_flag");
if (uiCode)
{ ...

comment:6 in reply to: ↑ 5 Changed 10 years ago by kolya

Replying to tung.nguyen:

It's marked, e.g., in TDecCAVLC @ 322 and follow, beginning with

READ_FLAG( uiCode, "pps_extension_present_flag");
if (uiCode)
{ ...

What I mean is in this code started at TDecCAVLC @ 1326 (HM trunk)

''    if (pcSlice->getPPS()->getSliceChromaQpFlag())
    {
      if (numValidComp>COMPONENT_Cb)
      {
        READ_SVLC( iCode, "slice_qp_delta_cb" );
        pcSlice->setSliceChromaQpDelta(COMPONENT_Cb, iCode );
        assert( pcSlice->getSliceChromaQpDelta(COMPONENT_Cb) >= -12 );
        assert( pcSlice->getSliceChromaQpDelta(COMPONENT_Cb) <=  12 );
        assert( (pcSlice->getPPS()->getQpOffset(COMPONENT_Cb) + pcSlice->getSliceChromaQpDelta(COMPONENT_Cb)) >= -12 );
        assert( (pcSlice->getPPS()->getQpOffset(COMPONENT_Cb) + pcSlice->getSliceChromaQpDelta(COMPONENT_Cb)) <=  12 );
      }

      if (numValidComp>COMPONENT_Cr)
      {
        READ_SVLC( iCode, "slice_qp_delta_cr" );
        pcSlice->setSliceChromaQpDelta(COMPONENT_Cr, iCode );
        assert( pcSlice->getSliceChromaQpDelta(COMPONENT_Cr) >= -12 );
        assert( pcSlice->getSliceChromaQpDelta(COMPONENT_Cr) <=  12 );
        assert( (pcSlice->getPPS()->getQpOffset(COMPONENT_Cr) + pcSlice->getSliceChromaQpDelta(COMPONENT_Cr)) >= -12 );
        assert( (pcSlice->getPPS()->getQpOffset(COMPONENT_Cr) + pcSlice->getSliceChromaQpDelta(COMPONENT_Cr)) <=  12 );
      }
    }

    if (pcSlice->getPPS()->getChromaQpAdjTableSize() > 0)
    {
      READ_FLAG(uiCode, "slice_chroma_qp_adjustment_enabled_flag"); pcSlice->setUseChromaQpAdj(uiCode != 0);
    }
    else pcSlice->setUseChromaQpAdj(false);

    if (pcSlice->getPPS()->getDeblockingFilterControlPresentFlag())
    {''

one have to guess he has to seek for pcSlice->getPPS()->getChromaQpAdjTableSize() in extension part.

comment:7 Changed 10 years ago by karlsharman

  • Priority changed from major to minor

comment:8 follow-up: Changed 10 years ago by ksuehring

I guess, in the end there is no change required here?

Last edited 10 years ago by ksuehring (previous) (diff)

comment:9 in reply to: ↑ 8 Changed 10 years ago by kolya

Replying to ksuehring:

I guess, in the end there is no change required here?

Yes, I think there is no need to change anything.

comment:10 Changed 10 years ago by ksuehring

  • Resolution set to invalid
  • Status changed from new to closed

Closing as "invalid"

Note: See TracTickets for help on using tickets.

This list contains all users that will be notified about changes made to this ticket.

These roles will be notified: Reporter, Owner, Subscriber, Participant

  • David Flynn(Subscriber)
  • jct-vc@…(Subscriber)
  • Karl Sharman(Subscriber, Participant)
  • karl.sharman@…(Always)
  • Karsten Suehring(Subscriber, Participant, Always)
  • Nikolay Shlyakhov(Reporter, Participant)
  • Tung Nguyen(Participant)