Opened 4 years ago

Closed 4 years ago

#1063 closed defect (fixed)

The latest VTM decoder crashes when multi-layer coding is tested

Reported by: ZhipinDeng Owned by:
Priority: minor Milestone: VTM-9.0
Component: VTM Version:
Keywords: Cc: ksuehring, XiangLi, fbossen, jvet@…

Description

The latest VTM decoder crashes when BL single subpic and EL multiple subpic in multi-layer coding.

The crash is triggered by the following check introduced by JVET_R0276_REORDERED_SUBPICS:

CHECK( currentSubPicIdx >= pcSlice->getRefPic( RefPicList( refPicList ), refIdx )->subPicIDs.size(), "Number of sub-pictures in a reference picture is less then the current slice sub-picture index" );

I noted that there is another check introduced by JVET_R0276_REORDERED_SUBPICS:

CHECK( pcSlice->getRefPic( RefPicList( refPicList ), refIdx )->subPicIDs[currentSubPicIdx] != pcSlice->getSliceSubPicId(), "A picture with different sub-picture ID of the collocated sub-picture cannot be used as an active reference picture" );

I understand the second check, but don't understand how the first check relates to the JVET-R0276 adoption.

Change history (5)

comment:1 Changed 4 years ago by Vadim

The first check is a software check, if currentSubPicIdx is outside of the subPicIDs list then subPicIDs[currentSubPicIdx] is out of bound, which should not be the case if everything is correctly defined. You may tread it as an assert.

comment:2 Changed 4 years ago by ZhipinDeng

Thanks Vadim for the confirmation. However, currently subPicIDs.size() returns 0 when there is only one subpicture in a picture. I guess it is not the intended behaviour.

comment:3 Changed 4 years ago by Vadim

Actually, the problem is not in this check itself, but in the specification as described in #1062, which is the ticket on the same problem.

Based on the discussion in #1062, I added the layerID check and created MR!1637.

https://vcgit.hhi.fraunhofer.de/jvet/VVCSoftware_VTM/-/merge_requests/1637

Can you please try it in your one BL sub-picture coding?

comment:4 Changed 4 years ago by ZhipinDeng

Thanks Vadim. It works by adding the same layer check as provided in MR!1637.

comment:5 Changed 4 years ago by XiangLi

  • Milestone set to VTM-9.0
  • Resolution set to fixed
  • Status changed from new to closed
Note: See TracTickets for help on using tickets.