Opened 5 years ago

Closed 5 years ago

Last modified 5 years ago

#19 closed defect (fixed)

Define JVET_C0024_QTBT off cause crash

Reported by: Chernyak Owned by: XiangLi
Priority: minor Milestone: HM-16.6-JEM-3.1
Component: JEM Version: HM-16.6-JEM-3.0
Keywords: QTBT, INTRA_MPM Cc: vseregin@…, ksuehring, XiangLi, jvet@…

Description

JVET_C0024_QTBT switched off with corresponded configurations cause encoder's crash. It works normally if JVET_C0055_INTRA_MPM is also switched off.

Attachments (1)

MPM_QTBT_OFF_FIX.patch (1.1 KB) - added by XiangLi 5 years ago.

Download all attachments as: .zip

Change history (5)

comment:1 Changed 5 years ago by h.huang

The implementation of JVET_C0055_INTRA_MPM is not correct when JVET_C0024_QTBT is off.
For example, the derivation of width and height of a PU in getIntraPredictor() is:

UInt width = getWidth(uiAbsPartIdx);
UInt height = getHeight(uiAbsPartIdx);

it should be:
#if JVET_C0024_QTBT

UInt width = getWidth(uiAbsPartIdx) ;
UInt height = getHeight(uiAbsPartIdx) ;

#else

UInt width = ( getWidth(uiAbsPartIdx) >> ( getPartitionSize(uiAbsPartIdx)==SIZE_NxN ? 1 : 0 ) );
UInt height = ( getHeight(uiAbsPartIdx) >> ( getPartitionSize(uiAbsPartIdx)==SIZE_NxN ? 1 : 0 ) );

#endif

Changed 5 years ago by XiangLi

comment:2 Changed 5 years ago by XiangLi

  • Owner set to XiangLi
  • Priority changed from major to minor
  • Status changed from new to assigned

Hi Han,

Thanks for your comment. Vadim has kindly provided a patch (attached) to fix the problem. It works fine in my local test. It would be great if you could double check it.

Thanks, Xiang

comment:3 Changed 5 years ago by XiangLi

  • Resolution set to fixed
  • Status changed from assigned to closed

Fixed in r256 (/branches/HM-16.6-JEM-3.0-dev).

comment:4 Changed 5 years ago by XiangLi

  • Version set to HM-16.6-JEM-3.0
Note: See TracTickets for help on using tickets.