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
Note: See TracTickets for help on using tickets.