﻿id	summary	reporter	owner	description	type	status	priority	milestone	component	version	resolution	keywords	cc
417	Mismatch with spec on regular_merge_flag parsing	forayr		"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."	defect	closed	minor	VTM-6.0	VTM	VTM-5.2	fixed		ksuehring XiangLi fbossen jvet@…
