Opened 11 years ago

Closed 11 years ago

#115 closed enhancement (fixed)

Disable L1 search for RA

Reported by: nsprljan Owned by:
Priority: minor Milestone:
Component: HM Version:
Keywords: Cc: fbossen, ksuehring, davidf, jct-vc@…

Description

I have used 0.9-hm branch r389, but it should apply to the most recent release as well. All changes are in TEncSearch::predInterSearch only.

1.Instead of:

#if GPB_SIMPLE_UNI
if ( pcCU->getSlice()->getSPS()->getUseLDC() )
{
...
}
else
{

xMotionEstimation ( pcCU, pcOrgYuv, iPartIdx, eRefPicList, &cMvPred[iRefList][iRefIdxTemp], iRefIdxTemp, cMvTemp[iRefList [iRefIdxTemp], uiBitsTemp, uiCostTemp );

}
#else
...

, to bypass the L1 search we need this:

#if GPB_SIMPLE_UNI
if ( pcCU->getSlice()->getSPS()->getUseLDC() )
{
...
}
else
{

if ( iRefList && pcCU->getSlice()->getNoBackPredFlag() )
{

uiCostTemp = MAX_UINT; maybe not necessary
cMvTemp[1][iRefIdxTemp] = cMvTemp[0][iRefIdxTemp];

} else
xMotionEstimation ( pcCU, pcOrgYuv, iPartIdx, eRefPicList, &cMvPred[iRefList][iRefIdxTemp], iRefIdxTemp, cMvTemp[iRefList [iRefIdxTemp], uiBitsTemp, uiCostTemp );

}
#else
...

  1. I also removed the check for LD when setting the first reference list for the bidirectional search. So at two places (within #if MS_NO_BACK_PRED_IN_B0) instead of:

if (pcCU->getSlice()->getSPS()->getUseLDC() && m_pcEncCfg->getUseFastEnc() && pcCU->getSlice()->getNoBackPredFlag() )

, I have:

if (m_pcEncCfg->getUseFastEnc() && pcCU->getSlice()->getNoBackPredFlag() )

My understanding is that the results are slightly different now because the L1 MV is searched for in the bidirectional part of the ME, and not during the unidirectional one as before. Without fix we have:

L0 search -> L0 MV
L1 search -> L1 MV
Init BI MV with L0 MV and L1 MV
Refine L0 MV for BI

An now we have:

L0 search -> L0 MV
Init L1 MV with L0 MV
Init BI MV with L0 MV and L1 MV
Refine L1 MV for BI

Attachments (1)

TEncSearch.cpp (179.0 KB) - added by nsprljan 11 years ago.

Download all attachments as: .zip

Change History (5)

Changed 11 years ago by nsprljan

comment:1 Changed 11 years ago by fbossen

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

Fixed in r421 and r425

comment:2 Changed 10 years ago by davidf

  • Component set to HM

Updating component after adding WD (Text) tickets

comment:3 Changed 9 years ago by davidf

  • Cc fbossen ksuehring davidf added

comment:4 Changed 9 years ago by davidf

  • Cc jct-vc@… added
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

  • David Flynn(Subscriber, Participant)
  • Frank Bossen(Subscriber, Participant)
  • jct-vc@…(Subscriber)
  • karl.sharman@…(Always)
  • Karsten Suehring(Subscriber, Always)
  • Nikola Sprljan(Reporter)