Ticket #23: ref_format.diff

File ref_format.diff, 2.2 KB (added by danny, 10 years ago)
  • TLibDecoder/TDecCAVLC.cpp

     
    14551472  for(i = 0; i < vps->getVpsNumRepFormats(); i++)
    14561473  {
    14571474    // Read rep_format_structures
     1475#if 1 // danny@vidyo.com - fix for parsing of ref_format()
     1476    parseRepFormat( vps->getVpsRepFormat(i), i > 0 ? vps->getVpsRepFormat(i-1) : 0 );
     1477#else
    14581478    parseRepFormat( vps->getVpsRepFormat(i) );
     1479#endif
    14591480  }
    14601481
    14611482  // Default assignment for layer 0
    (this hunk was shorter than expected) 
    16191640    parseVPSVUI(vps);
    16201641#endif
    16211642  }
    16221643}
    16231644#endif
    16241645#if REPN_FORMAT_IN_VPS
     1646#if 1 // danny@vidyo.com - fix for parsing of ref_format()
     1647Void  TDecCavlc::parseRepFormat      ( RepFormat *repFormat, RepFormat *repFormatPrev )
     1648#else
    16251649Void  TDecCavlc::parseRepFormat      ( RepFormat *repFormat )
     1650#endif
    16261651{
    16271652  UInt uiCode;
    16281653#if REPN_FORMAT_CONTROL_FLAG
     
    16471678    READ_CODE( 4, uiCode, "bit_depth_luma_minus8" );           repFormat->setBitDepthVpsLuma  ( uiCode + 8 );
    16481679    READ_CODE( 4, uiCode, "bit_depth_chroma_minus8" );         repFormat->setBitDepthVpsChroma( uiCode + 8 );
    16491680  }
     1681#if 1 // danny@vidyo.com - fix for parsing of ref_format()
     1682  else if( repFormatPrev ) {
     1683    repFormat->setChromaFormatVpsIdc( repFormatPrev->getChromaFormatVpsIdc() );
     1684    repFormat->setBitDepthVpsLuma( repFormatPrev->getBitDepthVpsLuma() );
     1685    repFormat->setBitDepthVpsChroma( repFormatPrev->getBitDepthVpsChroma() );
     1686  }
     1687#endif
    16501688#else
    16511689#if AUXILIARY_PICTURES
    16521690  READ_CODE( 2, uiCode, "chroma_format_idc" );               repFormat->setChromaFormatVpsIdc( ChromaFormat(uiCode) );
  • TLibDecoder/TDecCAVLC.h

     
    8080  Void  parseVPSVUI   ( TComVPS* pcVPS );
    8181#endif
    8282#if REPN_FORMAT_IN_VPS
     83#if 1 // danny@vidyo.com - fix for parsing of ref_format()
     84  Void  parseRepFormat      ( RepFormat *repFormat, RepFormat *repFormatPrev );
     85#else
    8386  Void  parseRepFormat      ( RepFormat *repFormat );
    8487#endif
     88#endif
    8589#if VPS_DPB_SIZE_TABLE
    8690  Void  parseVpsDpbSizeTable( TComVPS *vps );
    8791#endif