Opened 6 years ago

Last modified 6 years ago

#247 closed defect

Fix of size constraint for triangle merge mode when MMVD is disabled in SPS — at Version 1

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 (1)

comment:1 Changed 6 years ago by ksuehring

  • Description modified (diff)
Note: See TracTickets for help on using tickets.