Changeset 658 in SHVCSoftware


Ignore:
Timestamp:
9 Apr 2014, 08:55:53 (11 years ago)
Author:
seregin
Message:

update for LAYER_CTB

Location:
branches/SHM-6-dev/source
Files:
3 edited

Legend:

Unmodified
Added
Removed
  • branches/SHM-6-dev/source/App/TAppEncoder/TAppEncTop.cpp

    r652 r658  
    14021402      Int iPicWidth         = pcCfgLayer->getSourceWidth();
    14031403      Int iPicHeight        = pcCfgLayer->getSourceHeight();
     1404#if LAYER_CTB
     1405      UInt uiWidthInCU       = ( iPicWidth  % m_acLayerCfg[layerId].m_uiMaxCUWidth  ) ? iPicWidth  / m_acLayerCfg[layerId].m_uiMaxCUWidth  + 1 : iPicWidth  / m_acLayerCfg[layerId].m_uiMaxCUWidth;
     1406      UInt uiHeightInCU      = ( iPicHeight % m_acLayerCfg[layerId].m_uiMaxCUHeight ) ? iPicHeight / m_acLayerCfg[layerId].m_uiMaxCUHeight + 1 : iPicHeight / m_acLayerCfg[layerId].m_uiMaxCUHeight;
     1407#else
    14041408      UInt uiWidthInCU       = ( iPicWidth %m_uiMaxCUWidth  ) ? iPicWidth /m_uiMaxCUWidth  + 1 : iPicWidth /m_uiMaxCUWidth;
    14051409      UInt uiHeightInCU      = ( iPicHeight%m_uiMaxCUHeight ) ? iPicHeight/m_uiMaxCUHeight + 1 : iPicHeight/m_uiMaxCUHeight;
     1410#endif
    14061411      UInt uiNumCUsInFrame   = uiWidthInCU * uiHeightInCU;
    14071412
     1413#if LAYER_CTB
     1414      UInt maxCU = pcCfgLayer->getSliceArgument() >> ( m_acLayerCfg[layerId].m_uiMaxCUDepth << 1);
     1415#else
    14081416      UInt maxCU = pcCfgLayer->getSliceArgument() >> ( m_uiMaxCUDepth << 1);
     1417#endif
    14091418      UInt numDU = ( pcCfgLayer->getSliceMode() == 1 ) ? ( uiNumCUsInFrame / maxCU ) : ( 0 );
    14101419      if( uiNumCUsInFrame % maxCU != 0 || numDU == 0 )
  • branches/SHM-6-dev/source/Lib/TLibCommon/TComPicYuv.cpp

    r595 r658  
    174174  Int numCuInHeight = m_iPicHeight / m_iCuHeight + (m_iPicHeight % m_iCuHeight != 0);
    175175 
     176#if LAYER_CTB
     177  m_iLumaMarginX    = uiMaxCUWidth  + 16; // for 16-byte alignment
     178  m_iLumaMarginY    = uiMaxCUHeight + 16;  // margin for 8-tap filter and infinite padding
     179#else
    176180  m_iLumaMarginX    = g_uiMaxCUWidth  + 16; // for 16-byte alignment
    177181  m_iLumaMarginY    = g_uiMaxCUHeight + 16;  // margin for 8-tap filter and infinite padding
     182#endif
    178183 
    179184  m_apiPicBufY      = (Pel*)xMalloc( Pel, ( m_iPicWidth       + (m_iLumaMarginX  <<1)) * ( m_iPicHeight       + (m_iLumaMarginY  <<1)));
  • branches/SHM-6-dev/source/Lib/TLibDecoder/TDecCu.cpp

    r652 r658  
    7373    m_ppcCU     [ui]->setLayerId(layerId);
    7474  }
     75 
     76#if LAYER_CTB
     77  memcpy(g_auiLayerZscanToRaster[m_layerId], g_auiZscanToRaster, sizeof( g_auiZscanToRaster ) );
     78  memcpy(g_auiLayerRasterToZscan[m_layerId], g_auiRasterToZscan, sizeof( g_auiRasterToZscan ) );
     79  memcpy(g_auiLayerRasterToPelX[m_layerId],  g_auiRasterToPelX,  sizeof( g_auiRasterToPelX ) );
     80  memcpy(g_auiLayerRasterToPelY[m_layerId],  g_auiRasterToPelY,  sizeof( g_auiRasterToPelY ) );
     81#endif
    7582}
    7683#else
Note: See TracChangeset for help on using the changeset viewer.