Opened 5 years ago

Closed 5 years ago

#247 closed defect (fixed)

Fix of size constraint for triangle merge mode when MMVD is disabled in SPS

Reported by: ewchen Owned by:
Priority: major Milestone: VTM-5.0
Component: VTM Version: VTM-4.2
Keywords: Cc: ksuehring, XiangLi, fbossen, jvet@…

Description (last modified by ksuehring)

With the integration of JVET-N0127 and JVET-N0324, when MMVD is not enabled in the SPS, the triangle merge modes can now be signaled for blocks smaller than previously allowed (i.e. 4x8 triangle), which breaks current restrictions. Additional conditions should be inserted to fix this issue.
For example, the following code tries to solve this issue:

#if JVET_N0127_MMVD_SPS_FLAG_FIX
    if (!cu.cs->slice->getSPS()->getUseMMVD()&& cu.firstPU->lwidth() * cu.firstPU->lheight() == 32)
    {
      cu.firstPU->regularMergeFlag = true;
    }
    else
    {
#endif
      unsigned regularMergeFlag = (m_BinDecoder.decodeBin(Ctx::RegularMergeFlag(0)));
      DTRACE(g_trace_ctx, D_SYNTAX, "regular_merge_flag() ctx=%d regularMergeFlag=%d\n", 0, regularMergeFlag?1:0);
      cu.firstPU->regularMergeFlag = regularMergeFlag;
#if JVET_N0127_MMVD_SPS_FLAG_FIX
    }
#endif

Change history (2)

comment:1 Changed 5 years ago by ksuehring

  • Description modified (diff)

comment:2 Changed 5 years ago by XiangLi

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