Opened 5 years ago
Closed 5 years ago
#417 closed defect (fixed)
Mismatch with spec on regular_merge_flag parsing
Reported by: | forayr | Owned by: | |
---|---|---|---|
Priority: | minor | Milestone: | VTM-6.0 |
Component: | VTM | Version: | VTM-5.2 |
Keywords: | Cc: | ksuehring, XiangLi, fbossen, jvet@… |
Description
In spec:
if( ( cbWidth * cbHeight ) >= 64 && ( (sps_ciip_enabled_flag && cu_skip_flag[ x0 ][ y0 ] = = 0 && cbWidth < 128 && cbHeight < 128) | | ( sps_triangle_enabled_flag && MaxNumTriangleMergeCand > 1 && slice_type = = B ) ) ) regular_merge_flag[ x0 ][ y0 ]
In vtm:
const bool triangleAvailable = pu.cu->cs->slice->getSPS()->getUseTriangle() && pu.cu->cs->slice->isInterB(); const bool ciipAvailable = pu.cs->sps->getUseMHIntra() && !pu.cu->skip && pu.cu->lwidth() < MAX_CU_SIZE && pu.cu->lheight() < MAX_CU_SIZE; if (pu.cu->lwidth() * pu.cu->lheight() >= 64 && (triangleAvailable || ciipAvailable)) { cu.firstPU->regularMergeFlag = m_BinDecoder.decodeBin(Ctx::RegularMergeFlag(cu.skip ? 0 : 1)); }
The condition on MaxNumTriangleMergeCand is missing in the derivation of triangleAvailable.
Change history (1)
comment:1 Changed 5 years ago by XiangLi
- Milestone set to VTM-6.0
- Resolution set to fixed
- Status changed from new to closed
Note: See TracTickets for help on using tickets.
Fixed in https://vcgit.hhi.fraunhofer.de/jvet/VVCSoftware_VTM/merge_requests/794.