Changeset 929 in SHVCSoftware


Ignore:
Timestamp:
16 Dec 2014, 19:28:28 (10 years ago)
Author:
seregin
Message:

Port rev 925: layer specific conformance window setting, patch was provided by Jay Padia <jpadia@…>

Location:
branches/SHM-upgrade/source/App/TAppEncoder
Files:
2 edited

Legend:

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

    r922 r929  
    765765  Int*    cfg_FrameRate     [MAX_LAYERS];
    766766  Int*    cfg_IntraPeriod   [MAX_LAYERS];
     767  Int*    cfg_confWinLeft   [MAX_LAYERS];
     768  Int*    cfg_confWinRight  [MAX_LAYERS];
     769  Int*    cfg_confWinTop    [MAX_LAYERS];
     770  Int*    cfg_confWinBottom [MAX_LAYERS];
     771  Int*    cfg_aiPadX        [MAX_LAYERS];
     772  Int*    cfg_aiPadY        [MAX_LAYERS];
    767773  Int*    cfg_conformanceMode  [MAX_LAYERS];
    768774  Bool*   cfg_useExtendedPrecision [MAX_LAYERS];
     
    881887    cfg_repFormatIdx[layer] = &m_acLayerCfg[layer].m_repFormatIdx;
    882888#endif
    883     cfg_SourceWidth[layer]  = &m_acLayerCfg[layer].m_iSourceWidth;
    884     cfg_SourceHeight[layer] = &m_acLayerCfg[layer].m_iSourceHeight;
    885     cfg_FrameRate[layer]    = &m_acLayerCfg[layer].m_iFrameRate;
    886     cfg_IntraPeriod[layer]  = &m_acLayerCfg[layer].m_iIntraPeriod;
    887     cfg_conformanceMode[layer] = &m_acLayerCfg[layer].m_conformanceMode;
     889    cfg_SourceWidth[layer]          = &m_acLayerCfg[layer].m_iSourceWidth;
     890    cfg_SourceHeight[layer]         = &m_acLayerCfg[layer].m_iSourceHeight;
     891    cfg_FrameRate[layer]            = &m_acLayerCfg[layer].m_iFrameRate;
     892    cfg_IntraPeriod[layer]          = &m_acLayerCfg[layer].m_iIntraPeriod;
     893    cfg_conformanceMode[layer]      = &m_acLayerCfg[layer].m_conformanceMode;
     894    cfg_confWinLeft[layer]          = &m_acLayerCfg[layer].m_confWinLeft;
     895    cfg_confWinRight[layer]         = &m_acLayerCfg[layer].m_confWinRight;
     896    cfg_confWinTop[layer]           = &m_acLayerCfg[layer].m_confWinTop;
     897    cfg_confWinBottom[layer]        = &m_acLayerCfg[layer].m_confWinBottom;
     898    cfg_aiPadX[layer]               = &m_acLayerCfg[layer].m_aiPad[0];
     899    cfg_aiPadY[layer]               = &m_acLayerCfg[layer].m_aiPad[1];
    888900    cfg_useExtendedPrecision[layer] = &m_acLayerCfg[layer].m_useExtendedPrecision;
    889901#if LAYER_CTB
     
    11071119  ("ExtendedPrecision%d",                           cfg_useExtendedPrecision,                false, MAX_LAYERS, "Increased internal accuracies to support high bit depths (not valid in V1 profiles)")
    11081120  ("ConformanceMode%d",                             cfg_conformanceMode,                         0, MAX_LAYERS, "Window conformance mode (0: no cropping, 1:automatic padding, 2: padding, 3:cropping")
     1121  ("ConfLeft%d",                                    cfg_confWinLeft,                             0, MAX_LAYERS, "Deprecated alias of ConfWinLeft")
     1122  ("ConfRight%d",                                   cfg_confWinRight,                            0, MAX_LAYERS, "Deprecated alias of ConfWinRight")
     1123  ("ConfTop%d",                                     cfg_confWinTop,                              0, MAX_LAYERS, "Deprecated alias of ConfWinTop")
     1124  ("ConfBottom%d",                                  cfg_confWinBottom,                           0, MAX_LAYERS, "Deprecated alias of ConfWinBottom")
     1125  ("ConfWinLeft%d",                                 cfg_confWinLeft,                             0, MAX_LAYERS, "Left offset for window conformance mode 3")
     1126  ("ConfWinRight%d",                                cfg_confWinRight,                            0, MAX_LAYERS, "Right offset for window conformance mode 3")
     1127  ("ConfWinTop%d",                                  cfg_confWinTop,                              0, MAX_LAYERS, "Top offset for window conformance mode 3")
     1128  ("ConfWinBottom%d",                               cfg_confWinBottom,                           0, MAX_LAYERS, "Bottom offset for window conformance mode 3")
     1129  ("HorizontalPadding%d,-pdx%d",                    cfg_aiPadX,                                  0, MAX_LAYERS, "Horizontal source padding for conformance window mode 2")
     1130  ("VerticalPadding%d,-pdy%d",                      cfg_aiPadY,                                  0, MAX_LAYERS, "Vertical source padding for conformance window mode 2")
    11091131  ("ScalabilityMask1",                              m_scalabilityMask[VIEW_ORDER_INDEX],                     0, "scalability_mask[1] (multiview)")
    11101132  ("ScalabilityMask2",                              m_scalabilityMask[SCALABILITY_ID],                       1, "scalability_mask[2] (scalable)" )
  • branches/SHM-upgrade/source/App/TAppEncoder/TAppEncLayerCfg.cpp

    r921 r929  
    392392  case 1:
    393393    {
     394      // conformance
     395      if ((m_confWinLeft != 0) || (m_confWinRight != 0) || (m_confWinTop != 0) || (m_confWinBottom != 0))
     396      {
     397        fprintf(stderr, "Warning: Automatic padding enabled, but cropping parameters are set. Undesired size possible.\n");
     398      }
     399      if ((m_aiPad[1] != 0) || (m_aiPad[0] != 0))
     400      {
     401        fprintf(stderr, "Warning: Automatic padding enabled, but padding parameters are also set\n");
     402      }
     403
    394404      // automatic padding to minimum CU size
    395405#if LAYER_CTB
     
    423433  case 2:
    424434    {
     435      // conformance
     436      if ((m_confWinLeft != 0) || (m_confWinRight != 0) || (m_confWinTop != 0) || (m_confWinBottom != 0))
     437      {
     438        fprintf(stderr, "Warning: Automatic padding enabled, but cropping parameters are set. Undesired size possible.\n");
     439      }
     440
    425441      //padding
    426442      m_iSourceWidth  += m_aiPad[0];
Note: See TracChangeset for help on using the changeset viewer.