Changeset 397 in SHVCSoftware for branches


Ignore:
Timestamp:
17 Sep 2013, 18:53:51 (11 years ago)
Author:
seregin
Message:

set max_tid_il_ref_pics_plus1 and max_tid_ref_present_flag in the config file (configuration setting). Patch provided by Hahyun Lee <hanilee@…>

Location:
branches/SHM-3.1-dev
Files:
8 edited

Legend:

Unmodified
Added
Removed
  • branches/SHM-3.1-dev/cfg/layers.cfg

    r310 r397  
    44ScalabilityMask1              : 1           # Scalable
    55AdaptiveResolutionChange      : 0           # Resolution change frame (0: disable)
    6 
     6MaxTidIlRefPicsPlus1Present   : 1           # MaxTidIlRefPicsPlus1 present (0=not present, 1=present(default))
    77#============= LAYER 0 ==================
    88QP0                           : 22
    9 
     9MaxTidIlRefPicsPlus10         : 1           # max_tid_il_ref_pics_plus1 for layer0
    1010#============ Rate Control ==============
    1111RateControl0                  : 0           # Rate control: enable rate control for layer 0
  • branches/SHM-3.1-dev/source/App/TAppEncoder/TAppEncCfg.cpp

    r389 r397  
    7373, m_scalingListFile()
    7474, m_elRapSliceBEnabled(0)
     75#if N0120_MAX_TID_REF_CFG
     76, m_maxTidIlRefPicsPlus1PresentFlag(1)
     77#endif
    7578{
    7679  for(UInt layer=0; layer<MAX_LAYERS; layer++)
     
    397400  Bool*   cfg_RCForceIntraQP       [MAX_LAYERS];
    398401#endif
     402#if N0120_MAX_TID_REF_CFG
     403  Int*    cfg_maxTidIlRefPicsPlus1[MAX_LAYERS];
     404#endif
    399405  for(UInt layer = 0; layer < MAX_LAYERS; layer++)
    400406  {
     
    442448    cfg_RCForceIntraQP[layer]        = &m_acLayerCfg[layer].m_RCForceIntraQP;
    443449#endif
     450#if N0120_MAX_TID_REF_CFG
     451    cfg_maxTidIlRefPicsPlus1[layer] = &m_acLayerCfg[layer].m_maxTidIlRefPicsPlus1;
     452#endif
    444453  }
    445454#if AVC_BASE
     
    514523                                                                 " bottom-right luma sample of the EL picture, in units of two luma samples")
    515524#endif
     525#if N0120_MAX_TID_REF_CFG
     526  ("MaxTidIlRefPicsPlus1Present", m_maxTidIlRefPicsPlus1PresentFlag, true, "max_tid_il_ref_pics_plus1_present_flag (0: not present, 1: present(default)) " )
     527  ("MaxTidIlRefPicsPlus1%d", cfg_maxTidIlRefPicsPlus1, 1, MAX_LAYERS, "allowed maximum temporal_id for inter-layer prediction")
     528#endif
    516529#if AVC_BASE
    517530  ("AvcBase,-avc",            m_avcBaseLayerFlag,     0, "avc_base_layer_flag")
     
    20872100  }
    20882101#endif
     2102#if N0120_MAX_TID_REF_CFG
     2103  for (UInt layer=0; layer < MAX_LAYERS-1; layer++)
     2104  {
     2105    xConfirmPara(m_acLayerCfg[layer].m_maxTidIlRefPicsPlus1 < 0 || m_acLayerCfg[layer].m_maxTidIlRefPicsPlus1 > 7, "MaxTidIlRefPicsPlus1 must be in range 0 to 7");
     2106  }
     2107#endif
    20892108#undef xConfirmPara
    20902109  if (check_failed)
  • branches/SHM-3.1-dev/source/App/TAppEncoder/TAppEncCfg.h

    r389 r397  
    7676  Int       m_ilSampleOnlyPred[ MAX_LAYERS ];
    7777#endif
     78#if N0120_MAX_TID_REF_CFG
     79  Bool      m_maxTidIlRefPicsPlus1PresentFlag;
     80#endif
    7881#else
    7982  Char*     m_pchInputFile;                                   ///< source file name
  • branches/SHM-3.1-dev/source/App/TAppEncoder/TAppEncLayerCfg.h

    r389 r397  
    6666#endif
    6767
     68#if N0120_MAX_TID_REF_CFG
     69  Int       m_maxTidIlRefPicsPlus1;
     70#endif
    6871#if SVC_EXTENSION
    6972  Int       m_iWaveFrontSubstreams; //< If iWaveFrontSynchro, this is the number of substreams per frame (dependent tiles) or per tile (independent tiles).
     
    155158  Void    setSourceHeight(Int x)           {m_iSourceHeight = x;    }
    156159#endif
     160#if N0120_MAX_TID_REF_CFG
     161  Int     getMaxTidIlRefPicsPlus1()   { return m_maxTidIlRefPicsPlus1; }
     162#endif
    157163}; // END CLASS DEFINITION TAppEncLayerCfg
    158164
  • branches/SHM-3.1-dev/source/App/TAppEncoder/TAppEncTop.cpp

    r395 r397  
    195195    m_acTEncTop[layer].setMaxTempLayer                 ( m_maxTempLayer );
    196196    m_acTEncTop[layer].setUseAMP( m_enableAMP );
     197#if N0120_MAX_TID_REF_CFG
     198    if (layer<m_numLayers-1)
     199    {
     200       m_acTEncTop[layer].setMaxTidIlRefPicsPlus1 ( m_acLayerCfg[layer].getMaxTidIlRefPicsPlus1());
     201    }
     202#endif
    197203#if VPS_EXTN_DIRECT_REF_LAYERS
    198204    if(layer)
     
    925931#endif
    926932#if N0120_MAX_TID_REF_PRESENT_FLAG
     933#if N0120_MAX_TID_REF_CFG
     934  vps->setMaxTidIlRefPicsPlus1PresentFlag(m_maxTidIlRefPicsPlus1PresentFlag);
     935#else
    927936  vps->setMaxTidIlRefPicsPlus1PresentFlag(true);
     937#endif
    928938  if (vps->getMaxTidIlRefPicsPlus1PresentFlag())
    929939  {
    930940    for( i = 0; i < MAX_VPS_LAYER_ID_PLUS1 - 1; i++ )
    931941    {
     942#if N0120_MAX_TID_REF_CFG
     943      vps->setMaxSublayerForIlpPlus1(i, m_acTEncTop[i].getMaxTidIlRefPicsPlus1());
     944#else
    932945      vps->setMaxSublayerForIlpPlus1(i, vps->getMaxTLayers()+1);
     946#endif
    933947    }
    934948  }
  • branches/SHM-3.1-dev/source/Lib/TLibCommon/TypeDef.h

    r396 r397  
    126126#define EARLY_REF_PIC_MARKING            1      ///< Decoded picture marking of sub-layer non-reference pictures
    127127#define N0120_MAX_TID_REF_PRESENT_FLAG   1      ///< JCTVC-N0120 max_tid_ref_pics_plus1_present_flag
     128#define N0120_MAX_TID_REF_CFG            1      ///< set max_tid_il_ref_pics_plus1 and max_tid_ref_present_flag in the config. file (configuration setting)
    128129#endif
    129130#if REF_IDX_MFM
  • branches/SHM-3.1-dev/source/Lib/TLibDecoder/TDecCAVLC.cpp

    r394 r397  
    10041004    {
    10051005      READ_CODE( 3, uiCode, "max_sublayer_for_ilp_plus1[i]" ); vps->setMaxSublayerForIlpPlus1(i, uiCode);
     1006#if N0120_MAX_TID_REF_CFG
     1007      assert( uiCode <= vps->getMaxTLayers());
     1008#else
    10061009      assert( uiCode <= vps->getMaxTLayers()+ 1 );
     1010#endif
    10071011    }
    10081012  }
  • branches/SHM-3.1-dev/source/Lib/TLibEncoder/TEncCfg.h

    r389 r397  
    187187#endif
    188188#endif
     189#if N0120_MAX_TID_REF_CFG
     190  Int       m_maxTidIlRefPicsPlus1;
     191#endif
    189192  //======= Transform =============
    190193  UInt      m_uiQuadtreeTULog2MaxSize;
     
    468471#endif
    469472#endif
     473#if N0120_MAX_TID_REF_CFG
     474  Int       getMaxTidIlRefPicsPlus1         ()                              { return m_maxTidIlRefPicsPlus1; }
     475  Void      setMaxTidIlRefPicsPlus1         (Int num)                       { m_maxTidIlRefPicsPlus1 = num;  }
     476#endif
    470477  //======== Transform =============
    471478  Void      setQuadtreeTULog2MaxSize        ( UInt  u )      { m_uiQuadtreeTULog2MaxSize = u; }
Note: See TracChangeset for help on using the changeset viewer.