Ignore:
Timestamp:
3 Jun 2012, 21:48:11 (12 years ago)
Author:
vidyo
Message:
 
File:
1 edited

Legend:

Unmodified
Added
Removed
  • branches/HTM-3.0-Vidyo/source/Lib/TLibDecoder/TDecTop.cpp

    r57 r70  
    571571  TComSPS *sps = m_parameterSetManagerDecoder.getSPS(pps->getSPSId());
    572572  assert (sps != 0);
    573 
     573#if VIDYO_VPS_INTEGRATION
     574  TComVPS *vps = m_parameterSetManagerDecoder.getVPS(sps->getVPSId());
     575  assert (vps != 0);
     576#endif
    574577  m_apcSlicePilot->setPPS(pps);
    575578  m_apcSlicePilot->setSPS(sps);
     579#if VIDYO_VPS_INTEGRATION
     580  m_apcSlicePilot->setVPS(vps);
     581#endif
    576582  pps->setSPS(sps);
    577583
     
    613619  m_apcSlicePilot->setPPS(m_parameterSetManagerDecoder.getPrefetchedPPS(0));
    614620  m_apcSlicePilot->setSPS(m_parameterSetManagerDecoder.getPrefetchedSPS(0));
     621#if VIDYO_VPS_INTEGRATION
     622  m_apcSlicePilot->setVPS(m_parameterSetManagerDecoder.getPrefetchedVPS(0));
     623#endif
    615624  m_apcSlicePilot->initTiles();
    616625
     
    629638  if( m_bFirstSliceInPicture )
    630639  {
     640#if VIDYO_VPS_INTEGRATION
     641    if( m_apcSlicePilot->getVPS()->getViewId(nalu.m_layerId) == 0 ) { m_nalUnitTypeBaseView = nalu.m_nalUnitType; }
     642    else { m_nalUnitTypeBaseView = m_tAppDecTop->getTDecTop( 0, m_apcSlicePilot->getVPS()->getDepthFlag(nalu.m_layerId) )->getNalUnitTypeBaseView(); }
     643#else
    631644    if( nalu.m_viewId == 0 ) { m_nalUnitTypeBaseView = nalu.m_nalUnitType; }
    632645    else                     { m_nalUnitTypeBaseView = m_tAppDecTop->getTDecTop( 0, nalu.m_isDepth )->getNalUnitTypeBaseView(); }
     646#endif
     647   
    633648    m_apcSlicePilot->setNalUnitTypeBaseViewMvc( m_nalUnitTypeBaseView );
    634649  }
     
    929944
    930945    // Set reference list
     946#if VIDYO_VPS_INTEGRATION
     947    pcSlice->setViewId( pcSlice->getVPS()->getViewId(nalu.m_layerId) );
     948    pcSlice->setIsDepth( pcSlice->getVPS()->getDepthFlag(nalu.m_layerId) );
     949#else
    931950    pcSlice->setViewId(m_viewId);
    932951    pcSlice->setIsDepth(m_isDepth);
    933 
     952#endif
     953   
    934954#if SONY_COLPIC_AVAILABILITY
     955#if VIDYO_VPS_INTEGRATION
     956    pcSlice->setViewOrderIdx( pcSlice->getVPS()->getViewOrderIdx(nalu.m_layerId) );
     957#else
    935958    pcSlice->setViewOrderIdx( pcPic->getViewOrderIdx() );
     959#endif
    936960#endif
    937961
     
    10511075}
    10521076
     1077#if VIDYO_VPS_INTEGRATION
     1078Void TDecTop::xDecodeVPS()
     1079{
     1080  TComVPS* vps = new TComVPS();
     1081 
     1082  m_cEntropyDecoder.decodeVPS( vps );
     1083  m_parameterSetManagerDecoder.storePrefetchedVPS(vps); 
     1084
     1085}
     1086#endif
    10531087
    10541088Void TDecTop::xDecodeSPS()
     
    11141148  switch (nalu.m_nalUnitType)
    11151149  {
     1150#if VIDYO_VPS_INTEGRATION
     1151    case NAL_UNIT_VPS:
     1152      xDecodeVPS();
     1153      return false;
     1154#endif
    11161155    case NAL_UNIT_SPS:
    11171156      xDecodeSPS();
Note: See TracChangeset for help on using the changeset viewer.