Opened 4 years ago

Closed 4 years ago

#1175 closed defect (fixed)

Longterm Reference related uninitialized variables

Reported by: takamura Owned by:
Priority: minor Milestone: VTM-10.0
Component: VTM Version: VTM-5.2
Keywords: Cc: ksuehring, XiangLi, fbossen, jvet@…

Description

Encoder bug since VTM-5.2 up to current.
When long-term reference frame is used, delta_poc_msb_present_flag and delta_poc_msb_cycle_lt are not initialized, hence they are sometimes included, sometimes not included in the bitstream.
Need to add two lines in ReferencePictureList constructor.

ReferencePictureList::ReferencePictureList( const bool interLayerPicPresentFlag )

: m_numberOfShorttermPictures(0)
, m_numberOfLongtermPictures(0)
, m_numberOfActivePictures(MAX_INT)
, m_ltrp_in_slice_header_flag(0)
, m_interLayerPresentFlag( interLayerPicPresentFlag )
, m_numberOfInterLayerPictures( 0 )

{

::memset(m_isLongtermRefPic, 0, sizeof(m_isLongtermRefPic));
::memset(m_refPicIdentifier, 0, sizeof(m_refPicIdentifier));
::memset(m_POC, 0, sizeof(m_POC));
::memset( m_isInterLayerRefPic, 0, sizeof( m_isInterLayerRefPic ) );
::memset( m_interLayerRefPicIdx, 0, sizeof( m_interLayerRefPicIdx ) );

+ ::memset( m_deltaPOCMSBCycleLT, 0, sizeof(m_deltaPOCMSBCycleLT) );
+ ::memset( m_deltaPocMSBPresentFlag, 0, sizeof(m_deltaPocMSBPresentFlag) );
}

Change history (2)

comment:2 Changed 4 years ago by ksuehring

  • Milestone set to VTM-10.0
  • Resolution set to fixed
  • Status changed from new to closed

The MR was merged

Note: See TracTickets for help on using tickets.