Changeset 524 in SHVCSoftware for branches/SHM-4.1-dev/source/App


Ignore:
Timestamp:
19 Dec 2013, 17:46:32 (11 years ago)
Author:
ericsson
Message:

JCTVC-O0199: Skip picture at ARC switch (MACRO: HIGHER_LAYER_IRAP_SKIP_FLAG)

Support for coding higher layer picture as skip at ARC switching by setting SkipPictureAtArcSwitch to 1.

From: Jonatan Samuelsson <jonatan.samuelsson@…>

Location:
branches/SHM-4.1-dev/source/App/TAppEncoder
Files:
3 edited

Legend:

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

    r522 r524  
    968968#if M0040_ADAPTIVE_RESOLUTION_CHANGE
    969969  ("AdaptiveResolutionChange",     m_adaptiveResolutionChange, 0, "Adaptive resolution change frame number. Should coincide with EL RAP picture. (0: disable)")
     970#endif
     971#if HIGHER_LAYER_IRAP_SKIP_FLAG
     972  ("SkipPictureAtArcSwitch",     m_skipPictureAtArcSwitch, false, "Code the higher layer picture in ARC up-switching as a skip picture. (0: disable)")
    970973#endif
    971974#if N0383_IL_CONSTRAINED_TILE_SETS_SEI
     
    23242327  }
    23252328#endif
     2329#if HIGHER_LAYER_IRAP_SKIP_FLAG
     2330  if (m_adaptiveResolutionChange > 0)
     2331  {
     2332    xConfirmPara(m_crossLayerIrapAlignFlag != 0, "Cross layer IRAP alignment must be disabled when using adaptive resolution change.");
     2333  }
     2334  if (m_skipPictureAtArcSwitch)
     2335  {
     2336    xConfirmPara(m_adaptiveResolutionChange <= 0, "Skip picture at ARC switching only works when Adaptive Resolution Change is active (AdaptiveResolutionChange > 0)");
     2337  }
     2338#endif
    23262339#if N0120_MAX_TID_REF_CFG
    23272340  for (UInt layer=0; layer < MAX_LAYERS-1; layer++)
     
    24262439#if M0040_ADAPTIVE_RESOLUTION_CHANGE
    24272440  printf("Adaptive Resolution Change    : %d\n", m_adaptiveResolutionChange );
     2441#endif
     2442#if HIGHER_LAYER_IRAP_SKIP_FLAG
     2443  printf("Skip picture at ARC switch    : %d\n", m_skipPictureAtArcSwitch );
    24282444#endif
    24292445#if N0147_IRAP_ALIGN_FLAG
  • branches/SHM-4.1-dev/source/App/TAppEncoder/TAppEncCfg.h

    r522 r524  
    377377  Int       m_adaptiveResolutionChange;                       ///< Indicate adaptive resolution change frame
    378378#endif
     379#if HIGHER_LAYER_IRAP_SKIP_FLAG
     380  Bool      m_skipPictureAtArcSwitch;                         ///< Indicates that when ARC up-switching is performed the higher layer picture is a skip picture
     381#endif
    379382#if REPN_FORMAT_IN_VPS
    380383  RepFormatCfg m_repFormatCfg[16];                            ///< Rep_format structures
  • branches/SHM-4.1-dev/source/App/TAppEncoder/TAppEncTop.cpp

    r522 r524  
    170170    repFormat->setBitDepthVpsLuma           ( getInternalBitDepthY()                        );  // Need modification to change for each layer
    171171    repFormat->setBitDepthVpsChroma         ( getInternalBitDepthC()                        );  // Need modification to change for each layer
     172#endif
     173#if HIGHER_LAYER_IRAP_SKIP_FLAG
     174    m_acTEncTop[mapIdxToLayer[idx]].setSkipPictureAtArcSwitch( m_skipPictureAtArcSwitch );
    172175#endif
    173176  }
     
    13611364#if M0040_ADAPTIVE_RESOLUTION_CHANGE
    13621365  vps->setSingleLayerForNonIrapFlag(m_adaptiveResolutionChange > 0 ? true : false);
     1366#endif
     1367#if HIGHER_LAYER_IRAP_SKIP_FLAG
     1368  vps->setHigherLayerIrapSkipFlag(m_skipPictureAtArcSwitch);
    13631369#endif
    13641370#if !VPS_EXTN_OFFSET_CALC
Note: See TracChangeset for help on using the changeset viewer.