Opened 9 years ago

Closed 9 years ago

#511 closed defect (fixed)

mismatch between the WD text and the HM software in slice header on entropy_slice_flag, ref_pic_list_combiation() and mvd_l1_zero_flag

Reported by: suzukiyos Owned by:
Priority: minor Milestone: HM-8.1
Component: HM Version: HM-6.1
Keywords: Cc: fbossen, ksuehring, davidf, jct-vc@…

Description

In the text, ref_pic_list_combination() and mvd_l1_zero_flag in slice header are conditioned on entroy_slice_flag. But they are coded/decoded regardless of entropy_slice_flag in the HM software.

The part of ref_pic_list_combiation() and mvd_l1_zero_flag in slice header should be moved into the "if(!bEntropySlice){}" bracket for parseSliceHeader() in TDecCAVAL.cpp and codeSliceHearder() in TEncCavlc.cpp.

Possible solution:
codeSliceHeader() in TEncCavlc.cpp
......

if(!bEntropySlice)
{

WRITE_UVLC( pcSlice->getPPS()->getPPSId(), "pic_parameter_set_id" );

......

<< move the part of ref_pic_list_combiation() and mvd_l1_zero_flag in slice header here!!! : start

if (pcSlice->isInterB())
{

WRITE_FLAG(pcSlice->getRefPicListCombinationFlag() ? 1 : 0, "ref_pic_list_combination_flag" );

.....
#if H0111_MVD_L1_ZERO

if (pcSlice->isInterB())
{

WRITE_FLAG( pcSlice->getMvdL1ZeroFlag() ? 1 : 0, "mvd_l1_zero_flag");

}

#endif
>> move the part of ref_pic_list_combiation() and mvd_l1_zero_flag in slice header here!!! : end

#if H0412_REF_PIC_LIST_RESTRICTION

}

#endif

parseSliceHeader() in TDecSbac.cpp
......

if (!bEntropySlice)
{

READ_UVLC ( uiCode, "pic_parameter_set_id" ); rpcSlice->setPPSId(uiCode);

......
>> move the part of ref_pic_list_combiation() and mvd_l1_zero_flag in slice header here!!! : start

if (rpcSlice->isInterB())
{

READ_FLAG( uiCode, "ref_pic_list_combination_flag" ); rpcSlice->setRefPicListCombinationFlag( uiCode ? 1 : 0 );

....
#if H0111_MVD_L1_ZERO

if (rpcSlice->isInterB())
{

READ_FLAG( uiCode, "mvd_l1_zero_flag" ); rpcSlice->setMvdL1ZeroFlag( (uiCode ? true : false) );

}

#endif
>> move the part of ref_pic_list_combiation() and mvd_l1_zero_flag in slice header here!!! : end

}
else
{

pps = rpcSlice->getPPS();
sps = rpcSlice->getSPS();

}

Attachments (1)

patch_for_ticket#511.patch (2.2 KB) - added by suzukiyos 9 years ago.
patch file to solve the issue

Download all attachments as: .zip

Change History (4)

comment:1 Changed 9 years ago by ksuehring

  • Milestone set to HM-7.1

This should be fixed with the HLS modifications coming out of the Geneva meeting. Setting the target to HM-7.1

Changed 9 years ago by suzukiyos

patch file to solve the issue

comment:2 Changed 9 years ago by suzukiyos

The patch file of HM8.0 to solve #511 is attached.

comment:3 Changed 9 years ago by ksuehring

  • Milestone changed from HM-7.1 to HM-8.1
  • Resolution set to fixed
  • Status changed from new to closed

I have submitted a fix for several slice header syntax issues in r2733. This contains also a fix for this report.

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)
  • Frank Bossen(Subscriber)
  • jct-vc@…(Subscriber)
  • karl.sharman@…(Always)
  • Karsten Suehring(Subscriber, Participant, Always)
  • Yoshinori Suzuki(Reporter, Participant)