Changeset 450 in SHVCSoftware


Ignore:
Timestamp:
8 Nov 2013, 07:03:24 (11 years ago)
Author:
seregin
Message:

remove ILR_RESTR and ILR_RESTR_FIX macros

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

Legend:

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

    r448 r450  
    459459    //inter-layer reference picture
    460460
    461 #if ILR_RESTR
    462461    Int maxTidIlRefPicsPlus1 = ( m_layerId > 0 && m_activeNumILRRefIdx > 0)? m_pcVPS->getMaxTidIlRefPicsPlus1(ilpPic[refLayerIdc]->getSlice(0)->getLayerId()) : 0;
    463462    if( m_layerId > 0 && m_activeNumILRRefIdx > 0 && ( ( (Int)(ilpPic[refLayerIdc]->getSlice(0)->getTLayer())<=  maxTidIlRefPicsPlus1-1) || (maxTidIlRefPicsPlus1==0 && ilpPic[refLayerIdc]->getSlice(0)->getRapPicFlag()) )  )
    464 #else //#if ILR_RESTR
    465     if( m_layerId > 0 && m_activeNumILRRefIdx > 0 )
    466 #endif //#if ILR_RESTR
    467463    {
    468464#if REF_IDX_MFM
     
    488484  TComPic*  rpsCurrList1[MAX_NUM_REF+1];
    489485#if SVC_EXTENSION
    490 #if ILR_RESTR
    491486  Int numInterLayerRPSPics = 0;
    492487#if M0040_ADAPTIVE_RESOLUTION_CHANGE
     
    577572#endif
    578573  }
    579 #endif
    580574#if JCTVC_M0458_INTERLAYER_RPS_SIG
    581575  Int numPocTotalCurr = NumPocStCurr0 + NumPocStCurr1 + NumPocLtCurr + m_activeNumILRRefIdx;
     
    583577  Int numPocTotalCurr = NumPocStCurr0 + NumPocStCurr1 + NumPocLtCurr + m_numILRRefIdx;
    584578#endif
    585 #else
     579#else //SVC_EXTENSION
    586580  Int numPocTotalCurr = NumPocStCurr0 + NumPocStCurr1 + NumPocLtCurr;
    587 #endif
     581#endif //SVC_EXTENSION
    588582#if FIX1071
    589583  if (checkNumPocTotalCurr)
     
    642636      {
    643637        Int refLayerIdc = m_interLayerPredLayerIdc[i];
    644 #if ILR_RESTR
    645638        Int maxTidIlRefPicsPlus1 = getVPS()->getMaxTidIlRefPicsPlus1(ilpPic[refLayerIdc]->getSlice(0)->getLayerId());
    646639        if( ((Int)(ilpPic[refLayerIdc]->getSlice(0)->getTLayer())<=maxTidIlRefPicsPlus1-1) || (maxTidIlRefPicsPlus1==0 && ilpPic[refLayerIdc]->getSlice(0)->getRapPicFlag()) )
    647 #endif
     640        {
    648641          rpsCurrList0[cIdx] = ilpPic[refLayerIdc];
    649       }
    650     }
    651 #endif
    652 #endif
     642        }
     643      }
     644    }
     645#endif
     646#endif //SVC_EXTENSION
    653647    for ( i=0; i<NumPocStCurr1; i++, cIdx++)
    654648    {
     
    670664      {
    671665        Int refLayerIdc = m_interLayerPredLayerIdc[i];
    672 #if ILR_RESTR
    673          Int maxTidIlRefPicsPlus1 = getVPS()->getMaxTidIlRefPicsPlus1(ilpPic[refLayerIdc]->getSlice(0)->getLayerId());
     666        Int maxTidIlRefPicsPlus1 = getVPS()->getMaxTidIlRefPicsPlus1(ilpPic[refLayerIdc]->getSlice(0)->getLayerId());
    674667        if( ((Int)(ilpPic[refLayerIdc]->getSlice(0)->getTLayer())<=maxTidIlRefPicsPlus1-1) || (maxTidIlRefPicsPlus1==0 && ilpPic[refLayerIdc]->getSlice(0)->getRapPicFlag()) )
    675 #endif
    676         rpsCurrList0[cIdx] = ilpPic[refLayerIdc];
     668        {
     669          rpsCurrList0[cIdx] = ilpPic[refLayerIdc];
     670        }
    677671      }
    678672    }
     
    707701      {
    708702        Int refLayerIdc = m_interLayerPredLayerIdc[i];
    709 #if ILR_RESTR
    710703        Int maxTidIlRefPicsPlus1 = getVPS()->getMaxTidIlRefPicsPlus1(ilpPic[refLayerIdc]->getSlice(0)->getLayerId());
    711704        if( ((Int)(ilpPic[refLayerIdc]->getSlice(0)->getTLayer())<=maxTidIlRefPicsPlus1-1) || (maxTidIlRefPicsPlus1==0 && ilpPic[refLayerIdc]->getSlice(0)->getRapPicFlag()) )
    712 #endif
    713         rpsCurrList1[cIdx] = ilpPic[refLayerIdc];
    714       }
    715     }
    716 #endif
     705        {
     706          rpsCurrList1[cIdx] = ilpPic[refLayerIdc];
     707        }
     708      }
     709    }
     710#endif //SVC_EXTENSION
    717711
    718712    assert(cIdx == numPocTotalCurr);
  • branches/SHM-4.0-dev/source/Lib/TLibCommon/TypeDef.h

    r449 r450  
    122122#define JCTVC_M0203_INTERLAYER_PRED_IDC  1      ///< JCTVC-M0203: implementation of Inter-layer Prediction Indication
    123123#if JCTVC_M0203_INTERLAYER_PRED_IDC
    124 #define ILR_RESTR                        1      ///< JCTVC-M0209: Inter-layer RPS and RPL
    125 #define ILR_RESTR_FIX                    1      ///< Fix encoder crash when temporal layers are used with scalable coding
    126124#define EARLY_REF_PIC_MARKING            1      ///< Decoded picture marking of sub-layer non-reference pictures
    127125#define N0120_MAX_TID_REF_PRESENT_FLAG   1      ///< JCTVC-N0120: max_tid_ref_pics_plus1_present_flag
  • branches/SHM-4.0-dev/source/Lib/TLibEncoder/TEncGOP.cpp

    r448 r450  
    753753    pcSlice->setNalUnitType(getNalUnitType(pocCurr, m_iLastIDR));
    754754#if SVC_EXTENSION
    755 #if ILR_RESTR && ILR_RESTR_FIX
    756     Int interLayerPredLayerIdcTmp[MAX_VPS_LAYER_ID_PLUS1];
    757     Int activeNumILRRefIdxTmp = 0;
    758 #endif
    759755    if (m_layerId > 0)
    760756    {
     757      Int interLayerPredLayerIdcTmp[MAX_VPS_LAYER_ID_PLUS1];
     758      Int activeNumILRRefIdxTmp = 0;
     759
    761760      for( Int i = 0; i < pcSlice->getActiveNumILRRefIdx(); i++ )
    762761      {
     
    769768        pcSlice->setBaseColPic( *cListPic, refLayerIdc );
    770769
    771 #if ILR_RESTR && ILR_RESTR_FIX
    772770        // Apply temporal layer restriction to inter-layer prediction
    773771        Int maxTidIlRefPicsPlus1 = m_pcEncTop->getVPS()->getMaxTidIlRefPicsPlus1(pcSlice->getBaseColPic(refLayerIdc)->getSlice(0)->getLayerId());
     
    780778          continue; // ILP is not valid due to temporal layer restriction
    781779        }
    782 #endif
    783780
    784781        const Window &scalEL = m_pcEncTop->getScaledRefLayerWindow(refLayerIdc);
     
    809806      }
    810807
    811 #if ILR_RESTR && ILR_RESTR_FIX
    812808      // Update the list of active inter-layer pictures
    813809      for ( Int i = 0; i < activeNumILRRefIdxTmp; i++)
     
    821817        pcSlice->setInterLayerPredEnabledFlag(false);
    822818      }
    823 #endif
    824819     
    825820      if( pocCurr % m_pcCfg->getIntraPeriod() == 0 )
Note: See TracChangeset for help on using the changeset viewer.