Changeset 467 in SHVCSoftware for branches/SHM-4.0-dev/source/Lib/TLibCommon


Ignore:
Timestamp:
14 Nov 2013, 00:54:41 (12 years ago)
Author:
seregin
Message:

undelete the code from the previous revision

Location:
branches/SHM-4.0-dev/source/Lib/TLibCommon
Files:
7 edited

Legend:

Unmodified
Added
Removed
  • branches/SHM-4.0-dev/source/Lib/TLibCommon/TComDataCU.cpp

    r466 r467  
    40044004  uiPelY = (UInt)Clip3<UInt>(0, m_pcPic->getPicYuvRec()->getHeight() - 1, uiPelY);
    40054005
     4006#if !LAYER_CTB
    40064007  UInt uiMinUnitSize = m_pcPic->getMinCUWidth();
    4007 
    4008 #if SCALED_REF_LAYER_OFFSETS
     4008#endif
     4009
    40094010  Int leftStartL = this->getSlice()->getSPS()->getScaledRefLayerWindow(refLayerIdc).getWindowLeftOffset();
    40104011  Int topStartL  = this->getSlice()->getSPS()->getScaledRefLayerWindow(refLayerIdc).getWindowTopOffset();
    40114012  Int iBX = ((uiPelX - leftStartL)*g_posScalingFactor[refLayerIdc][0] + (1<<15)) >> 16;
    40124013  Int iBY = ((uiPelY - topStartL )*g_posScalingFactor[refLayerIdc][1] + (1<<15)) >> 16;
    4013 #else
    4014   Int iBX = (uiPelX*g_posScalingFactor[refLayerIdc][0] + (1<<15)) >> 16;
    4015   Int iBY = (uiPelY*g_posScalingFactor[refLayerIdc][1] + (1<<15)) >> 16;
    4016 #endif
    40174014
    40184015#if N0139_POSITION_ROUNDING_OFFSET
     
    40244021#endif
    40254022
    4026 #if SCALED_REF_LAYER_OFFSETS
    40274023  if ( iBX >= cBaseColPic->getPicYuvRec()->getWidth() || iBY >= cBaseColPic->getPicYuvRec()->getHeight() ||
    40284024       iBX < 0                                        || iBY < 0                                           )
     4025  {
     4026    return NULL;
     4027  }
     4028
     4029#if LAYER_CTB
     4030  UInt baseMaxCUHeight = cBaseColPic->getPicSym()->getMaxCUHeight();
     4031  UInt baseMaxCUWidth  = cBaseColPic->getPicSym()->getMaxCUWidth();
     4032  UInt baseMinUnitSize = cBaseColPic->getMinCUWidth();
     4033 
     4034  uiCUAddrBase = ( iBY / cBaseColPic->getPicSym()->getMaxCUHeight() ) * cBaseColPic->getFrameWidthInCU() + ( iBX / cBaseColPic->getPicSym()->getMaxCUWidth() );
    40294035#else
    4030   if ( iBX >= cBaseColPic->getPicYuvRec()->getWidth() || iBY >= cBaseColPic->getPicYuvRec()->getHeight())
     4036  uiCUAddrBase = (iBY/g_uiMaxCUHeight)*cBaseColPic->getFrameWidthInCU() + (iBX/g_uiMaxCUWidth);
    40314037#endif
    4032   {
    4033     return NULL;
    4034   }
    4035 
    4036   uiCUAddrBase = (iBY/g_uiMaxCUHeight)*cBaseColPic->getFrameWidthInCU() + (iBX/g_uiMaxCUWidth);
    40374038
    40384039  assert(uiCUAddrBase < cBaseColPic->getNumCUsInFrame());
    40394040
     4041#if LAYER_CTB
     4042  UInt uiRasterAddrBase = ( iBY - (iBY/baseMaxCUHeight)*baseMaxCUHeight ) / baseMinUnitSize * cBaseColPic->getNumPartInWidth() + ( iBX - (iBX/baseMaxCUWidth)*baseMaxCUWidth ) / baseMinUnitSize;
     4043 
     4044  uiAbsPartIdxBase = g_auiLayerRasterToZscan[cBaseColPic->getLayerId()][uiRasterAddrBase];
     4045#else
    40404046  UInt uiRasterAddrBase = (iBY - (iBY/g_uiMaxCUHeight)*g_uiMaxCUHeight)/uiMinUnitSize*cBaseColPic->getNumPartInWidth()
    40414047    + (iBX - (iBX/g_uiMaxCUWidth)*g_uiMaxCUWidth)/uiMinUnitSize;
    40424048
    40434049  uiAbsPartIdxBase = g_auiRasterToZscan[uiRasterAddrBase];
     4050#endif
    40444051
    40454052  return cBaseColPic->getCU(uiCUAddrBase);
  • branches/SHM-4.0-dev/source/Lib/TLibCommon/TComPicSym.h

    r466 r467  
    126126  TComDataCU*&  getCU( UInt uiCUAddr )  { return m_apcTComDataCU[uiCUAddr];     }
    127127 
     128#if LAYER_CTB
     129  UInt        getMaxCUWidth()           { return m_uiMaxCUWidth;                }
     130  UInt        getMaxCUHeight()          { return m_uiMaxCUHeight;               }
     131#endif
     132
    128133#if AVC_SYNTAX
    129134  UInt        getMaxCUWidth()           { return m_uiMaxCUWidth;                }
  • branches/SHM-4.0-dev/source/Lib/TLibCommon/TComPicYuv.cpp

    r466 r467  
    9090  Int numCuInHeight = m_iPicHeight / m_iCuHeight + (m_iPicHeight % m_iCuHeight != 0);
    9191 
     92#if LAYER_CTB
     93  m_iLumaMarginX    = uiMaxCUWidth  + 16; // for 16-byte alignment
     94  m_iLumaMarginY    = uiMaxCUHeight + 16;  // margin for 8-tap filter and infinite padding
     95#else
    9296  m_iLumaMarginX    = g_uiMaxCUWidth  + 16; // for 16-byte alignment
    9397  m_iLumaMarginY    = g_uiMaxCUHeight + 16;  // margin for 8-tap filter and infinite padding
     98#endif
    9499 
    95100  m_iChromaMarginX  = m_iLumaMarginX>>1;
  • branches/SHM-4.0-dev/source/Lib/TLibCommon/TComRom.cpp

    r466 r467  
    8686// Data structure related table & variable
    8787// ====================================================================================================================
    88 
     88#if LAYER_CTB
     89UInt g_auiLayerMaxCUWidth[MAX_LAYERS];
     90UInt g_auiLayerMaxCUHeight[MAX_LAYERS];
     91UInt g_auiLayerMaxCUDepth[MAX_LAYERS];
     92UInt g_auiLayerAddCUDepth[MAX_LAYERS];
     93UInt g_auiLayerZscanToRaster[MAX_LAYERS][ MAX_NUM_SPU_W*MAX_NUM_SPU_W ];
     94UInt g_auiLayerRasterToZscan[MAX_LAYERS][ MAX_NUM_SPU_W*MAX_NUM_SPU_W ];
     95UInt g_auiLayerRasterToPelX[MAX_LAYERS][ MAX_NUM_SPU_W*MAX_NUM_SPU_W ];
     96UInt g_auiLayerRasterToPelY[MAX_LAYERS][ MAX_NUM_SPU_W*MAX_NUM_SPU_W ];
     97#endif
    8998UInt g_uiMaxCUWidth  = MAX_CU_SIZE;
    9099UInt g_uiMaxCUHeight = MAX_CU_SIZE;
  • branches/SHM-4.0-dev/source/Lib/TLibCommon/TComRom.h

    r466 r467  
    8181
    8282// global variable (LCU width/height, max. CU depth)
     83#if LAYER_CTB
     84extern       UInt g_auiLayerMaxCUWidth[MAX_LAYERS];
     85extern       UInt g_auiLayerMaxCUHeight[MAX_LAYERS];
     86extern       UInt g_auiLayerMaxCUDepth[MAX_LAYERS];
     87extern       UInt g_auiLayerAddCUDepth[MAX_LAYERS];
     88extern       UInt g_auiLayerZscanToRaster[MAX_LAYERS][ MAX_NUM_SPU_W*MAX_NUM_SPU_W ];
     89extern       UInt g_auiLayerRasterToZscan[MAX_LAYERS][ MAX_NUM_SPU_W*MAX_NUM_SPU_W ];
     90extern       UInt g_auiLayerRasterToPelX[MAX_LAYERS][ MAX_NUM_SPU_W*MAX_NUM_SPU_W ];
     91extern       UInt g_auiLayerRasterToPelY[MAX_LAYERS][ MAX_NUM_SPU_W*MAX_NUM_SPU_W ];
     92#endif
    8393extern       UInt g_uiMaxCUWidth;
    8494extern       UInt g_uiMaxCUHeight;
  • branches/SHM-4.0-dev/source/Lib/TLibCommon/TComUpsampleFilter.cpp

    r466 r467  
    109109
    110110  //========== Y component upsampling ===========
    111 #if SCALED_REF_LAYER_OFFSETS
    112111  const Window &scalEL = window;
    113112
     
    119118  Int heightEL  = pcUsPic->getHeight() - scalEL.getWindowTopOffset()  - scalEL.getWindowBottomOffset();
    120119  Int strideEL  = pcUsPic->getStride();
    121 #else
    122   const Window &confBL = pcBasePic->getConformanceWindow();
    123   const Window &confEL = pcUsPic->getConformanceWindow();
    124 
    125   Int widthBL   = pcBasePic->getWidth () - confBL.getWindowLeftOffset() - confBL.getWindowRightOffset();
    126   Int heightBL  = pcBasePic->getHeight() - confBL.getWindowTopOffset() - confBL.getWindowBottomOffset();
    127   Int strideBL  = pcBasePic->getStride();
    128 
    129   Int widthEL   = pcUsPic->getWidth () - confEL.getWindowLeftOffset() - confEL.getWindowRightOffset();
    130   Int heightEL  = pcUsPic->getHeight() - confEL.getWindowTopOffset() - confEL.getWindowBottomOffset();
    131   Int strideEL  = pcUsPic->getStride();
    132 #endif
     120
    133121  Pel* piTempBufY = pcTempPic->getLumaAddr();
    134122  Pel* piSrcBufY  = pcBasePic->getLumaAddr();
     
    243231    widthBL   = pcBasePic->getWidth ();
    244232    heightBL  = min<Int>( pcBasePic->getHeight(), heightEL );
    245 #if SCALED_REF_LAYER_OFFSETS
     233
    246234    Int leftStartL = scalEL.getWindowLeftOffset();
    247235    Int rightEndL  = pcUsPic->getWidth() - scalEL.getWindowRightOffset();
    248236    Int topStartL  = scalEL.getWindowTopOffset();
    249237    Int bottomEndL = pcUsPic->getHeight() - scalEL.getWindowBottomOffset();
    250 #if BUGFIX_RESAMPLE
    251238    Int leftOffset = leftStartL > 0 ? leftStartL : 0;
    252 #endif
    253 #endif
    254239
    255240#if  N0214_INTERMEDIATE_BUFFER_16BITS
     
    265250    for( i = 0; i < widthEL; i++ )
    266251    {
    267 #if SCALED_REF_LAYER_OFFSETS
    268252      Int x = Clip3( leftStartL, rightEndL - 1, i );
    269253      refPos16 = (((x - leftStartL)*scaleX + addX) >> shiftXM4) - deltaX;
    270 #else
    271       refPos16 = ((i*scaleX + addX) >> shiftXM4) - deltaX;
    272 #endif
    273254      phase    = refPos16 & 15;
    274255      refPos   = refPos16 >> 4;
     
    307288    Int iOffset = 1 << (nShift - 1);
    308289
    309 #if SCALED_REF_LAYER_OFFSETS
    310290    for( j = 0; j < pcTempPic->getHeight(); j++ )
    311 #else
    312     for( j = 0; j < heightEL; j++ )
    313 #endif
    314     {
    315 #if SCALED_REF_LAYER_OFFSETS
     291    {
    316292      Int y = Clip3(topStartL, bottomEndL - 1, j);
    317293      refPos16 = ((( y - topStartL )*scaleY + addY) >> shiftYM4) - deltaY;
    318 #else
    319       refPos16 = ((j*scaleY + addY) >> shiftYM4) - deltaY;
    320 #endif
    321294      phase    = refPos16 & 15;
    322295      refPos   = refPos16 >> 4;
     
    324297
    325298      piSrcY = piTempBufY + (refPos -((NTAPS_US_LUMA>>1) - 1))*strideEL;
    326 #if SCALED_REF_LAYER_OFFSETS
    327 #if BUGFIX_RESAMPLE
    328299      Pel* piDstY0 = piDstBufY + j * strideEL;
    329300      piDstY = piDstY0 + leftOffset;
     
    349320        piDstY++;
    350321      }
    351 #else
    352 #if 1 // it should provide identical result
    353       Pel* piDstY0 = piDstBufY + j * strideEL;
    354       piDstY = piDstY0 + ( leftStartL > 0 ? leftStartL : 0 );
    355 
    356       for( i = min<Int>(rightEndL, pcTempPic->getWidth()) - max<Int>(0, leftStartL); i > 0; i-- )
    357       {
    358         *piDstY = ClipY( (sumLumaVer(piSrcY, coeff, strideEL) + iOffset) >> (nShift));
    359         piSrcY++;
    360         piDstY++;
    361       }
    362 
    363       for( i = rightEndL; i < pcTempPic->getWidth(); i++ )
    364       {
    365         *piDstY = piDstY0[rightEndL-1];
    366         piDstY++;
    367       }
    368 
    369       piDstY = piDstY0;
    370       for( i = 0; i < leftStartL; i++ )
    371       {
    372         *piDstY = piDstY0[leftStartL];
    373         piDstY++;
    374       }
    375 #else
    376       piDstY = piDstBufY + j * strideEL;
    377 
    378       for( i = 0; i < pcTempPic->getWidth(); i++ )
    379       {
    380         *piDstY = ClipY( (sumLumaVer(piSrcY, coeff, strideEL) + iOffset) >> (nShift));
    381 
    382         // Only increase the x position of reference upsample picture when within the window
    383         // "-2" to ensure that pointer doesn't go beyond the boundary rightEndL-1
    384         if( (i >= leftStartL) && (i <= rightEndL-2) )
    385         {
    386           piSrcY++;
    387         }
    388         piDstY++;
    389       }
    390 #endif
    391 #endif
    392 #else
    393       piDstY = piDstBufY + j * strideEL;
    394 
    395       for( i = 0; i < widthEL; i++ )
    396       {
    397         *piDstY = ClipY( (sumLumaVer(piSrcY, coeff, strideEL) + iOffset) >> (nShift));
    398         piSrcY++;
    399         piDstY++;
    400       }
    401 #endif
    402     }
    403 
    404 #if SCALED_REF_LAYER_OFFSETS
     322
     323    }
     324
    405325    widthBL   = pcBasePic->getWidth ();
    406326    heightBL  = pcBasePic->getHeight();
     
    408328    widthEL   = pcUsPic->getWidth () - scalEL.getWindowLeftOffset() - scalEL.getWindowRightOffset();
    409329    heightEL  = pcUsPic->getHeight() - scalEL.getWindowTopOffset()  - scalEL.getWindowBottomOffset();
    410 #else
    411     widthBL   = pcBasePic->getWidth () - confBL.getWindowLeftOffset() - confBL.getWindowRightOffset();
    412     heightBL  = pcBasePic->getHeight() - confBL.getWindowTopOffset() - confBL.getWindowBottomOffset();
    413 
    414     widthEL   = pcUsPic->getWidth () - confEL.getWindowLeftOffset() - confEL.getWindowRightOffset();
    415     heightEL  = pcUsPic->getHeight() - confEL.getWindowTopOffset() - confEL.getWindowBottomOffset();
    416 #endif
    417330
    418331    //========== UV component upsampling ===========
     
    426339    strideBL  = pcBasePic->getCStride();
    427340    strideEL  = pcUsPic->getCStride();
    428 #if SCALED_REF_LAYER_OFFSETS
     341
    429342    Int leftStartC = scalEL.getWindowLeftOffset() >> 1;
    430343    Int rightEndC  = (pcUsPic->getWidth() >> 1) - (scalEL.getWindowRightOffset() >> 1);
    431344    Int topStartC  = scalEL.getWindowTopOffset() >> 1;
    432345    Int bottomEndC = (pcUsPic->getHeight() >> 1) - (scalEL.getWindowBottomOffset() >> 1);
    433 #if BUGFIX_RESAMPLE
    434346    leftOffset = leftStartC > 0 ? leftStartC : 0;
    435 #endif
    436 #endif
    437347
    438348    shiftX = 16;
     
    490400    for( i = 0; i < widthEL; i++ )
    491401    {
    492 #if SCALED_REF_LAYER_OFFSETS
    493402      Int x = Clip3(leftStartC, rightEndC - 1, i);
    494403      refPos16 = (((x - leftStartC)*scaleX + addX) >> shiftXM4) - deltaX;
    495 #else
    496       refPos16 = ((i*scaleX + addX) >> shiftXM4) - deltaX;
    497 #endif
    498404      phase    = refPos16 & 15;
    499405      refPos   = refPos16 >> 4;
     
    537443#endif
    538444
    539 #if SCALED_REF_LAYER_OFFSETS
    540445    for( j = 0; j < pcTempPic->getHeight() >> 1; j++ )
    541 #else
    542     for( j = 0; j < heightEL; j++ )
    543 #endif
    544     {
    545 #if SCALED_REF_LAYER_OFFSETS
     446    {
    546447      Int y = Clip3(topStartC, bottomEndC - 1, j);
    547448      refPos16 = (((y - topStartC)*scaleY + addY) >> shiftYM4) - deltaY;
    548 #else
    549       refPos16 = ((j*scaleY + addY) >> shiftYM4) - deltaY;
    550 #endif
    551449      phase    = refPos16 & 15;
    552450      refPos   = refPos16 >> 4;
     
    555453      piSrcU = piTempBufU  + (refPos -((NTAPS_US_CHROMA>>1) - 1))*strideEL;
    556454      piSrcV = piTempBufV  + (refPos -((NTAPS_US_CHROMA>>1) - 1))*strideEL;
    557 #if SCALED_REF_LAYER_OFFSETS
    558 #if BUGFIX_RESAMPLE
     455
    559456      Pel* piDstU0 = piDstBufU + j*strideEL;
    560457      Pel* piDstV0 = piDstBufV + j*strideEL;
     
    568465        *piDstU = ClipC( (sumChromaVer(piSrcU, coeff, strideEL) + iOffset) >> (nShift));
    569466        *piDstV = ClipC( (sumChromaVer(piSrcV, coeff, strideEL) + iOffset) >> (nShift));
    570 
    571467        piSrcU++;
    572468        piSrcV++;
     
    592488        piDstV++;
    593489      }
    594 #else
    595 #if 1 // it should provide identical result
    596       Pel* piDstU0 = piDstBufU + j*strideEL;
    597       Pel* piDstV0 = piDstBufV + j*strideEL;
    598       piDstU = piDstU0 + ( leftStartC > 0 ? leftStartC : 0 );
    599       piDstV = piDstV0 + ( leftStartC > 0 ? leftStartC : 0 );
    600 
    601       for( i = min<Int>(rightEndC, pcTempPic->getWidth() >> 1) - max<Int>(0, leftStartC); i > 0; i-- )
    602       {
    603         *piDstU = ClipC( (sumChromaVer(piSrcU, coeff, strideEL) + iOffset) >> (nShift));
    604         *piDstV = ClipC( (sumChromaVer(piSrcV, coeff, strideEL) + iOffset) >> (nShift));
    605         piSrcU++;
    606         piSrcV++;
    607         piDstU++;
    608         piDstV++;
    609       }
    610 
    611       for( i = rightEndC; i < pcTempPic->getWidth() >> 1; i++ )
    612       {
    613         *piDstU = piDstU0[rightEndC-1];
    614         *piDstV = piDstV0[rightEndC-1];
    615         piDstU++;
    616         piDstV++;
    617       }
    618 
    619       piDstU = piDstU0;
    620       piDstV = piDstV0;
    621       for( i = 0; i < leftStartC; i++ )
    622       {
    623         *piDstU = piDstU0[leftStartC];
    624         *piDstV = piDstV0[leftStartC];
    625         piDstU++;
    626         piDstV++;
    627       }
    628 #else
    629       piDstU = piDstBufU + j*strideEL;
    630       piDstV = piDstBufV + j*strideEL;
    631 
    632       for( i = 0; i < pcTempPic->getWidth() >> 1; i++ )
    633       {
    634         *piDstU = ClipC( (sumChromaVer(piSrcU, coeff, strideEL) + iOffset) >> (nShift));
    635         *piDstV = ClipC( (sumChromaVer(piSrcV, coeff, strideEL) + iOffset) >> (nShift));
    636 
    637         // Only increase the x position of reference upsample picture when within the window
    638         // "-2" to ensure that pointer doesn't go beyond the boundary rightEndC-1
    639         if( (i >= leftStartC) && (i <= rightEndC-2) )
    640         {
    641           piSrcU++;
    642           piSrcV++;
    643         }
    644 
    645         piDstU++;
    646         piDstV++;
    647       }
    648 #endif
    649 #endif
    650 #else
    651       piDstU = piDstBufU + j*strideEL;
    652       piDstV = piDstBufV + j*strideEL;
    653 
    654       for( i = 0; i < widthEL; i++ )
    655       {
    656         *piDstU = ClipC( (sumChromaVer(piSrcU, coeff, strideEL) + iOffset) >> (nShift));
    657         *piDstV = ClipC( (sumChromaVer(piSrcV, coeff, strideEL) + iOffset) >> (nShift));
    658         piSrcU++;
    659         piSrcV++;
    660         piDstU++;
    661         piDstV++;
    662       }
    663 #endif
     490
    664491    }
    665492  }
  • branches/SHM-4.0-dev/source/Lib/TLibCommon/TypeDef.h

    r466 r467  
    6565#endif
    6666#define IL_SL_SIGNALLING_N0371           0      ///< JCTVC-N0371: inter-layer scaling list
    67 #define M0464_TILE_BOUNDARY_ALIGNED_FLAG 0      ///< JCTVC-M0464: VUI flag to indicate tile boundary alignment
    6867#define M0463_VUI_EXT_ILP_REF            0      ///< JCTVC-M0463: VUI extension inter-layer dependency offset signalling
    6968#define SPS_EXTENSION                    1      ///< Define sps_extension() syntax structure
    70 #define SCALED_REF_LAYER_OFFSETS         1      ///< JCTVC-M0309: Signal scaled reference layer offsets in SPS
    7169#define VERT_MV_CONSTRAINT               1      ///< Vertical MV component constraint flag
    7270#define SCALABILITY_MASK_E0104           1      ///< JCT3V-E0104: scalability mask for depth
     71#define LAYER_CTB                        0      ///< enable layer-specific CTB structure
    7372
    7473#define ILP_SSH_SIG                      1      ///< JCTVC-N0195 proposal 2, JCTVC-N0118: add presence flag in VPS ext to condition inter-layer prediction signaling in slice segment header
     
    8685#define VPS_EXTN_PROFILE_INFO            1      ///< Include profile information for layer sets in VPS extension
    8786#define VPS_EXTN_DIRECT_REF_LAYERS       1      ///< Include indication of direct dependency of layers in VPS extension
    88 #define VPS_OUTPUT_LAYER_SET_IDX         1      ///< JCTVC-M0268: Signal output_layer_set_idx[i] as output_layer_set_idx_minus1[i]
    89 #define VPS_MOVE_DIR_DEPENDENCY_FLAG     1      ///< JCTVC-M0268: Move the syntax element direct_dependency_flag to follow the syntax element dimension_id
    90 #define VPS_PROFILE_OUTPUT_LAYERS        1      ///< JCTVC-M0268: Signal profile information and output layer information as in Sec. 3 of M0268v2
    91 #define SPS_SUB_LAYER_INFO               1      ///< JCTVC-M0268: Do not signal sps_max_sub_layers_minus1 and sps_temporal_id_nesting_flag for nuh_layer_id greater than 0
    92 #define VPS_SPLIT_FLAG                   1      ///< JCTVC-M0163: Do not signal dimension_id and the last dimension_id_len_minus1, when splitting_flag is equal to 1.
    9387#define M0457_PREDICTION_INDICATIONS     1
    9488#define M0040_ADAPTIVE_RESOLUTION_CHANGE 1
     
    9993#define N0160_VUI_EXT_ILP_REF            1      ///< VUI extension inter-layer dependency offset signalling
    10094#define VPS_VUI_BITRATE_PICRATE          1      ///< JCTVC-N0085: Signal bit rate and picture in VPS VUI
    101 #else
    102 #define M0464_TILE_BOUNDARY_ALIGNED_FLAG 0      ///< VUI flag to indicate tile boundary alignment
    10395#endif //VPS_VUI
    10496
     
    108100#define VPS_EXTN_OFFSET_CALC             1      ///< Calculation of VPS extension offset
    109101#define SPS_PTL_FIX                      1      ///< remove profile_tier_level from enhancement layer SPS
    110 #define SH_DISCARDABLE_FLAG              1      ///< JCTVC-M0152: Use one reserved flag in the slice header for discardable flag
    111102
    112103#define DERIVE_LAYER_ID_LIST_VARIABLES   1      ///< Derived variables based on the variables in VPS - for use in syntax table parsing
     
    116107#define N0214_INTERMEDIATE_BUFFER_16BITS 1      ///< JCTVC-N0214: support base layer input more than 8 bits
    117108#define ARBITRARY_SPATIAL_RATIO          1      ///< JCTVC-N0219, JCTVC-N0273: Support arbitrary spatial ratio
    118 #define BUGFIX_RESAMPLE                  1      ///< JCTVC-N0055: resampling bug fix for positive left scalled offset
    119109
    120110#define JCTVC_M0259_LAMBDAREFINEMENT     1      ///< JCTVC-M0259: lambda refinement (encoder only optimization)
     
    137127#define JCTVC_M0203_INTERLAYER_PRED_IDC  1      ///< JCTVC-M0203: implementation of Inter-layer Prediction Indication
    138128#if JCTVC_M0203_INTERLAYER_PRED_IDC
    139 #define ILR_RESTR                        1      ///< JCTVC-M0209: Inter-layer RPS and RPL
    140 #define ILR_RESTR_FIX                    1      ///< Fix encoder crash when temporal layers are used with scalable coding
    141129#define EARLY_REF_PIC_MARKING            1      ///< Decoded picture marking of sub-layer non-reference pictures
    142130#define N0120_MAX_TID_REF_PRESENT_FLAG   1      ///< JCTVC-N0120: max_tid_ref_pics_plus1_present_flag
Note: See TracChangeset for help on using the changeset viewer.