Changeset 357 in SHVCSoftware for branches/SHM-3.0-dev/source/App


Ignore:
Timestamp:
21 Aug 2013, 04:59:22 (11 years ago)
Author:
sony
Message:

EXTERNAL_USEDBYCURR_N0082: Add functionality to set usedByCurrPic from configuration file. Accordingly, the pre-fixed setting for CTC RA is removed from the encoder code and is moved to the default configuration file for RA.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • branches/SHM-3.0-dev/source/App/TAppEncoder/TAppEncCfg.cpp

    r334 r357  
    217217    {
    218218      in>>entry.m_refIdc[i];
     219    }
     220  }
     221#endif
     222#if EXTERNAL_USEDBYCURR_N0082
     223  if(entry.m_numRefPics>0){
     224    in>>entry.m_UseExtusedByCurrPic;
     225    if(entry.m_UseExtusedByCurrPic)
     226    {
     227      for ( Int i = 0; i < entry.m_numRefPics; i++ )
     228      {
     229        in>>entry.m_ExtusedByCurrPic[i];
     230      }
    219231    }
    220232  }
     
    14671479#endif
    14681480 
    1469 #if !FINAL_RPL_CHANGE_N0082
     1481#if EXTERNAL_USEDBYCURR_N0082|| !FINAL_RPL_CHANGE_N0082
    14701482  Bool verifiedGOP=false;
    14711483#endif
    14721484  Bool errorGOP=false;
    1473 #if !FINAL_RPL_CHANGE_N0082
     1485#if  EXTERNAL_USEDBYCURR_N0082|| !FINAL_RPL_CHANGE_N0082
    14741486  Int checkGOP=1;
    14751487  Int numRefs = 1;
     
    14821494    isOK[i]=false;
    14831495  }
    1484 #if !FINAL_RPL_CHANGE_N0082
     1496#if  EXTERNAL_USEDBYCURR_N0082|| !FINAL_RPL_CHANGE_N0082
    14851497  Int numOK=0;
    14861498#endif
     
    15301542  for(UInt layer=0; layer<m_numLayers; layer++)
    15311543  {
    1532     if (m_acLayerCfg[layer].m_GOPListLayer[0].m_POC<0){
     1544    if (m_acLayerCfg[layer].m_GOPListLayer[0].m_POC<0)
     1545    {
    15331546      memcpy( m_acLayerCfg[layer].m_GOPListLayer, m_GOPList, sizeof(GOPEntry)*MAX_GOP );
    15341547    }
     
    15361549    xConfirmPara(errorGOP,"Invalid GOP structure given");
    15371550  }
    1538   //tentative for encoder
    1539   if( m_acLayerCfg[1].m_GOPListLayer[5].m_POC == 6  && m_acLayerCfg[1].m_GOPListLayer[7].m_POC == 7 ){
    1540     //RA, POC5
    1541     m_acLayerCfg[1].m_GOPListLayer[5].m_usedByCurrPic[2] = 0;
    1542     m_acLayerCfg[1].m_GOPListLayer[5].m_refIdc[2] = 0;
    1543     //RA, POC7
    1544     m_acLayerCfg[1].m_GOPListLayer[7].m_usedByCurrPic[2] = 0;
    1545     m_acLayerCfg[1].m_GOPListLayer[7].m_refIdc[2] = 0;
    1546   }
     1551#if !EXTERNAL_USEDBYCURR_N0082
    15471552#else
     1553#endif
    15481554  m_extraRPSs=0;
    15491555  //start looping through frames in coding order until we can verify that the GOP structure is correct.
     
    17411747  }
    17421748  xConfirmPara(errorGOP,"Invalid GOP structure given");
     1749#if !EXTERNAL_USEDBYCURR_N0082
     1750#endif
     1751#endif
     1752#if EXTERNAL_USEDBYCURR_N0082
     1753  for(UInt layer=0; layer<m_numLayers; layer++)
     1754  {
     1755    for (Int i=0; i< m_iGOPSize; i++){
     1756      if (m_acLayerCfg[layer].m_GOPListLayer[i].m_UseExtusedByCurrPic == 1 )
     1757      {
     1758        for(Int j=0; j<m_acLayerCfg[layer].m_GOPListLayer[i].m_numRefPics; j++ )
     1759        {
     1760          m_acLayerCfg[layer].m_GOPListLayer[i].m_usedByCurrPic[j] = m_acLayerCfg[layer].m_GOPListLayer[i].m_ExtusedByCurrPic[j];
     1761          m_acLayerCfg[layer].m_GOPListLayer[i].m_refIdc[j] = m_acLayerCfg[layer].m_GOPListLayer[i].m_ExtusedByCurrPic[j];
     1762        }
     1763      }
     1764    }
     1765  }
    17431766#endif
    17441767  m_maxTempLayer = 1;
Note: See TracChangeset for help on using the changeset viewer.