Opened 7 years ago

Closed 6 years ago

#1376 closed defect (fixed)

SCM-3.0 search range of Nx2N IBC

Reported by: jlliao Owned by:
Priority: minor Milestone:
Component: HM SCC Version: SCC-3.0 (HM16.2)
Keywords: Cc: ksuehring, davidf, karlsharman, jct-vc@…

Description

Nx2N IBC performs full-frame search when full-frame search of IBC is disabled.

Existing code looks like this:

Void TEncSearch::xIntraPatternSearch(…)
{

Int lowY = (pcCU->getPartitionSize(uiPartAddr) == SCM_S0067_IBC_FULL_1D_SEARCH_FOR_PU) ? -cuPelY : max(iSrchRngVerTop, 0 - cuPelY);

const Int boundX = (pcCU->getPartitionSize(uiPartAddr) == SCM_S0067_IBC_FULL_1D_SEARCH_FOR_PU) ? -cuPelX : max(iSrchRngHorLeft, - cuPelX);

}

should be changed look like this:

Void TEncSearch::xIntraPatternSearch(…)
{

Int lowY = (pcCU->getPartitionSize(uiPartAddr) == SCM_S0067_IBC_FULL_1D_SEARCH_FOR_PU && m_pcEncCfg->getUseIntraBCFullFrameSearch()) ? -cuPelY : max(iSrchRngVerTop, 0 - cuPelY);

const Int boundX = (pcCU->getPartitionSize(uiPartAddr) == SCM_S0067_IBC_FULL_1D_SEARCH_FOR_PU && m_pcEncCfg->getUseIntraBCFullFrameSearch()) ? -cuPelX : max(iSrchRngHorLeft, - cuPelX);

}

Change History (7)

comment:1 Changed 7 years ago by DefaultCC Plugin

  • Cc ksuehring davidf karlsharman jct-vc@… added

comment:2 Changed 7 years ago by cgisquet

Actually, it's not a bug, but a feature.

What happens is that this partition is rather helpful, and feeds the cache used in having fast estimation. Please see section 2.3 of S0065, where we mention the positive tradeoff.

I would suggest to selectively deactivate it depending on the intent of the test.

comment:3 Changed 7 years ago by jlliao

I am sorry that I do not describe my problem clearly.
When the following two parameters in the cfg file are set equal to 3 (i.e. 4 CTUs), the search range of IBC is constrained.

IntraBlockCopySearchWidthInCTUs : 3 # Search range for IBC (-1: full frame search)
IntraBlockCopyNonHashSearchWidthInCTUs : 3 # Search range for IBC non-hash search method (i.e., fast/full search)

In that constrained case, 2Nx2N, 2NxN and NxN performs searching within 4 CTUs while Nx2N still performs full frame search.
If Nx2N to search within full frame is really intended when the two parameters are set equal to, say, 4 CTUs, it should be mentioned in the cfg file; otherwise, the current description of the two parameters is a bit confusing.

comment:4 Changed 7 years ago by cgisquet

OK, then you're right, and checking also whether FF search is selected, is probably the right thing to do.

comment:5 Changed 7 years ago by ksuehring

  • Component changed from HM to HM SCC

comment:6 Changed 7 years ago by cgisquet

Dear all, this should really be included in SCM4.0, as this affects SCC CTCs. (e.g. non-fullframe, 4x1, IBC search area).

comment:7 Changed 6 years ago by krishna

  • Resolution set to fixed
  • Status changed from new to closed

Fixed in rev 4365

Note: See TracTickets for help on using tickets.

This list contains all users that will be notified about changes made to this ticket.

These roles will be notified: Reporter, Owner, Subscriber, Participant

  • Christophe Gisquet(Participant)
  • David Flynn(Subscriber)
  • jct-vc@…(Subscriber)
  • jlliao(Reporter, Participant)
  • Karl Sharman(Subscriber)
  • karl.sharman@…(Always)
  • Karsten Suehring(Subscriber, Participant, Always)
  • krishna(Participant)