Ignore:
Timestamp:
23 May 2013, 15:40:36 (12 years ago)
Author:
tech
Message:

Integrated 3D encoder control, camera parameters, renderer and MV fixes.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • branches/HTM-DEV-0.2-dev/source/App/TAppDecoder/TAppDecTop.cpp

    r401 r438  
    5454
    5555TAppDecTop::TAppDecTop()
     56
    5657#if !H_MV
    5758: m_iPOCLastDisplay(-MAX_INT)
     
    5960: m_numDecoders( 0 )
    6061#endif
     62
    6163{
    6264  ::memset (m_abDecFlag, 0, sizeof (m_abDecFlag));
     
    7779    m_pchBitstreamFile = NULL;
    7880  }
     81
    7982#if H_MV
    8083  for (Int decIdx = 0; decIdx < m_numDecoders; decIdx++)
     
    112115  poc = -1;
    113116#endif
     117
    114118  TComList<TComPic*>* pcListPic = NULL;
    115119
     
    143147  Bool firstSlice        = true;
    144148#endif
     149
    145150 
    146151  while (!!bitstreamFile)
     
    151156     * nal unit. */
    152157    streampos location = bitstreamFile.tellg();
    153 #if H_MV
    154 #if ENC_DEC_TRACE
    155     Int64 symCount = g_nSymbolCounter;
    156 #endif
    157 #endif
    158158    AnnexBStats stats = AnnexBStats();
    159159#if !H_MV
    160160    Bool bPreviousPictureDecoded = false;
    161161#endif
    162 
    163162    vector<uint8_t> nalUnit;
    164163    InputNALUnit nalu;
     
    251250          bitstreamFile.seekg(location-streamoff(3));
    252251          bytestream.reset();
    253 #if H_MV
    254 #if ENC_DEC_TRACE
    255           g_nSymbolCounter = symCount;
    256 #endif
    257 #endif
    258 
    259252        }
    260253#if !H_MV
     
    283276    }
    284277#endif
    285 
    286278    if( pcListPic )
    287279    {
     
    294286        if (!m_outputBitDepthY) { m_outputBitDepthY = g_bitDepthY; }
    295287        if (!m_outputBitDepthC) { m_outputBitDepthC = g_bitDepthC; }
    296 
    297288#if H_MV
    298289        m_tVideoIOYuvReconFile[decIdxLastPic]->open( m_pchReconFiles[decIdxLastPic], true, m_outputBitDepthY, m_outputBitDepthC, g_bitDepthY, g_bitDepthC ); // write mode
     
    306297      if ( bNewPicture &&
    307298#endif
    308            (   nalu.m_nalUnitType == NAL_UNIT_CODED_SLICE_IDR_W_RADL
     299           (   nalu.m_nalUnitType == NAL_UNIT_CODED_SLICE_IDR
    309300            || nalu.m_nalUnitType == NAL_UNIT_CODED_SLICE_IDR_N_LP
    310301            || nalu.m_nalUnitType == NAL_UNIT_CODED_SLICE_BLA_N_LP
    311             || nalu.m_nalUnitType == NAL_UNIT_CODED_SLICE_BLA_W_RADL
    312             || nalu.m_nalUnitType == NAL_UNIT_CODED_SLICE_BLA_W_LP ) )
     302            || nalu.m_nalUnitType == NAL_UNIT_CODED_SLICE_BLANT
     303            || nalu.m_nalUnitType == NAL_UNIT_CODED_SLICE_BLA ) )
    313304      {
    314305#if H_MV
     
    602593}
    603594
    604 #if H_MV
    605 Int TAppDecTop::xGetDecoderIdx( Int layerId, Bool createFlag /*= false */ )
    606 {
    607   Int decIdx = -1;
    608   if ( m_layerIdToDecIdx[ layerId ] != -1 )
    609   {     
    610     decIdx = m_layerIdToDecIdx[ layerId ];
    611   }
    612   else
    613   {     
    614     assert ( createFlag );
    615     assert( m_numDecoders < MAX_NUM_LAYERS );
    616 
    617     decIdx = m_numDecoders;
    618 
    619     // Init decoder
    620     m_tDecTop[ decIdx ] =  new TDecTop;
    621     m_tDecTop[ decIdx ]->create();
    622     m_tDecTop[ decIdx ]->init( );
    623     m_tDecTop[ decIdx ]->setLayerId( layerId );
    624     m_tDecTop[ decIdx ]->setDecodedPictureHashSEIEnabled(m_decodedPictureHashSEIEnabled);
    625     m_tDecTop[ decIdx ]->setIvPicLists( &m_ivPicLists );
    626 
    627     // append pic list of new decoder to PicLists
    628     assert( m_ivPicLists.size() == m_numDecoders );
    629     m_ivPicLists.push_back( m_tDecTop[ decIdx ]->getListPic() );
    630 
    631     // create recon file related stuff     
    632     Char* pchTempFilename = NULL;
    633     if ( m_pchReconFile )
    634     {     
    635       Char buffer[4];     
    636       sprintf(buffer,"_%i", layerId );
    637       assert ( m_pchReconFile );
    638       xAppendToFileNameEnd( m_pchReconFile , buffer, pchTempFilename );
    639       assert( m_pchReconFiles.size() == m_numDecoders );
    640     }
    641 
    642     m_pchReconFiles.push_back( pchTempFilename );   
    643 
    644     m_tVideoIOYuvReconFile[ decIdx ] = new TVideoIOYuv;
    645     m_reconOpen           [ decIdx ] = false;
    646 
    647     // set others
    648     m_pocLastDisplay      [ decIdx ] = -MAX_INT;
    649     m_layerIdToDecIdx     [ layerId ] = decIdx;
    650 
    651     m_numDecoders++;
    652   };
    653   return decIdx;
    654 }
    655 #endif
    656595//! \}
Note: See TracChangeset for help on using the changeset viewer.