Opened 10 years ago

Closed 10 years ago

#163 closed defect (fixed)

bug related to GOP size setting

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

Description

When using random access configuration, setting GOPSize=16 and RateGOPSize=8, the decoder crashed.
That is caused by for frame 8, at the encoder side, the reference frame list is [L0 0 16 ] [L1 0 16 ] [LC 0 16 ], which is treated as low delay B frame; but at the decoder side, the reference frame list is constructed as [L0 0 16 ] [L1 16 0 ] [LC 0 16 ], which is traditional B frame.

In my opinion, the fix can be

store lambda
m_pcRdCost ->setLambda( dLambda );
m_pcTrQuant->setLambda( dLambda );
rpcSlice ->setLambda( dLambda );

#if BUG_FIX_GOP_SIZE

if ( rpcSlice->getPOC()%m_pcCfg->getGOPSize() == 0 )
{

eSliceType = P_SLICE;

}
else
{

eSliceType = B_SLICE;

}

eSliceType = (iPOCLast == 0
uiPOCCurr % m_pcCfg->getIntraPeriod() == 0 m_pcGOPEncoder->getGOPSize() == 0) ? I_SLICE : eSliceType;

rpcSlice->setSliceType ( eSliceType );

#endif

around line 353 in TEncSlice::initEncSlice().

Change History (4)

comment:1 Changed 10 years ago by fbossen

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

Fixed in r1012

comment:2 Changed 10 years ago by davidf

  • Component set to HM

Updating component after adding WD (Text) tickets

comment:3 Changed 10 years ago by davidf

  • Cc fbossen ksuehring davidf added

comment:4 Changed 10 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

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