Ignore:
Timestamp:
4 Feb 2013, 02:58:35 (12 years ago)
Author:
mediatek-htm
Message:

Integration of JCT3V-C0137

The added texture merging candidate is controlled by the MACRO "MTK_DEPTH_MERGE_TEXTURE_CANDIDATE_C0137"

From MediaTek
yiwen.chen@…

Location:
branches/HTM-5.1-dev2-Mediatek/source/Lib/TLibDecoder
Files:
5 edited

Legend:

Unmodified
Added
Removed
  • branches/HTM-5.1-dev2-Mediatek/source/Lib/TLibDecoder/TDecCAVLC.cpp

    r210 r254  
    14681468#endif
    14691469#endif
    1470 #if HHI_MPI
     1470#if HHI_MPI || OL_QTLIMIT_PREDCODING_B0068
    14711471Void TDecCavlc::parseSPS(TComSPS* pcSPS, Bool bIsDepth)
    14721472#else
     
    18921892
    18931893#if LCU_SYNTAX_ALF
     1894#if MTK_DEPTH_MERGE_TEXTURE_CANDIDATE_C0137
     1895Void TDecCavlc::parseSliceHeader (TComSlice*& rpcSlice, ParameterSetManagerDecoder *parameterSetManager, AlfCUCtrlInfo &alfCUCtrl, AlfParamSet& alfParamSet, bool isDepth)
     1896#else
    18941897Void TDecCavlc::parseSliceHeader (TComSlice*& rpcSlice, ParameterSetManagerDecoder *parameterSetManager, AlfCUCtrlInfo &alfCUCtrl, AlfParamSet& alfParamSet)
     1898#endif
    18951899#else
    18961900Void TDecCavlc::parseSliceHeader (TComSlice*& rpcSlice, ParameterSetManagerDecoder *parameterSetManager, AlfCUCtrlInfo &alfCUCtrl)
     
    24952499  #elif HHI_MPI
    24962500  const int iExtraMergeCandidates = sps->getUseMVI() ? 1 : 0;
     2501  #elif MTK_DEPTH_MERGE_TEXTURE_CANDIDATE_C0137
     2502  const int iExtraMergeCandidates = (  (isDepth || sps->getMultiviewMvPredMode()) ) ? 1 : 0;   
    24972503  #else
    24982504  const int iExtraMergeCandidates = sps->getMultiviewMvPredMode() ? 1 : 0;
  • branches/HTM-5.1-dev2-Mediatek/source/Lib/TLibDecoder/TDecCAVLC.h

    r210 r254  
    118118  Void  parseVPS            ( TComVPS* pcVPS );
    119119#endif
    120 #if HHI_MPI
     120#if HHI_MPI || OL_QTLIMIT_PREDCODING_B0068
    121121  Void  parseSPS            ( TComSPS* pcSPS, Bool bIsDepth );
    122122#else
     
    131131  Void  parseAPS            ( TComAPS* pAPS );
    132132#if LCU_SYNTAX_ALF
     133#if MTK_DEPTH_MERGE_TEXTURE_CANDIDATE_C0137
     134  Void  parseSliceHeader    ( TComSlice*& rpcSlice, ParameterSetManagerDecoder *parameterSetManager, AlfCUCtrlInfo &alfCUCtrl, AlfParamSet& alfParamSet, bool isDepth);
     135#else
    133136  Void  parseSliceHeader    ( TComSlice*& rpcSlice, ParameterSetManagerDecoder *parameterSetManager, AlfCUCtrlInfo &alfCUCtrl, AlfParamSet& alfParamSet);
     137#endif
    134138#else
    135139  Void  parseSliceHeader    ( TComSlice*& rpcSlice, ParameterSetManagerDecoder *parameterSetManager, AlfCUCtrlInfo &alfCUCtrl );
  • branches/HTM-5.1-dev2-Mediatek/source/Lib/TLibDecoder/TDecEntropy.h

    r244 r254  
    7474  virtual Void  parseVPS                  ( TComVPS* pcVPS )                       = 0;
    7575#endif
    76 #if HHI_MPI
     76#if HHI_MPI || OL_QTLIMIT_PREDCODING_B0068
    7777  virtual Void  parseSPS                  ( TComSPS* pcSPS, Bool bIsDepth )                       = 0;
    7878#else
     
    8888
    8989#if LCU_SYNTAX_ALF
     90#if MTK_DEPTH_MERGE_TEXTURE_CANDIDATE_C0137
     91  virtual Void parseSliceHeader          ( TComSlice*& rpcSlice, ParameterSetManagerDecoder *parameterSetManager, AlfCUCtrlInfo &alfCUCtrl, AlfParamSet& alfParamSet, bool isDepth)       = 0;
     92#else
    9093  virtual Void parseSliceHeader          ( TComSlice*& rpcSlice, ParameterSetManagerDecoder *parameterSetManager, AlfCUCtrlInfo &alfCUCtrl, AlfParamSet& alfParamSet)       = 0;
     94#endif
    9195#else
    9296  virtual Void parseSliceHeader          ( TComSlice*& rpcSlice, ParameterSetManagerDecoder *parameterSetManager, AlfCUCtrlInfo &alfCUCtrl )                                = 0;
     
    179183#endif
    180184 
    181 #if HHI_MPI
     185#if HHI_MPI || OL_QTLIMIT_PREDCODING_B0068
    182186  Void    decodeSPS                   ( TComSPS* pcSPS, Bool bIsDepth ) { m_pcEntropyDecoderIf->parseSPS(pcSPS, bIsDepth); }
    183187#else
     
    193197
    194198#if LCU_SYNTAX_ALF
     199#if MTK_DEPTH_MERGE_TEXTURE_CANDIDATE_C0137
     200  Void    decodeSliceHeader           ( TComSlice*& rpcSlice, ParameterSetManagerDecoder *parameterSetManager, AlfCUCtrlInfo &alfCUCtrl, AlfParamSet& alfParamSet, bool isDepth)  { m_pcEntropyDecoderIf->parseSliceHeader(rpcSlice, parameterSetManager, alfCUCtrl, alfParamSet, isDepth);         }
     201#else
    195202  Void    decodeSliceHeader           ( TComSlice*& rpcSlice, ParameterSetManagerDecoder *parameterSetManager, AlfCUCtrlInfo &alfCUCtrl, AlfParamSet& alfParamSet)  { m_pcEntropyDecoderIf->parseSliceHeader(rpcSlice, parameterSetManager, alfCUCtrl, alfParamSet);         }
     203#endif
    196204#else
    197205  Void    decodeSliceHeader           ( TComSlice*& rpcSlice, ParameterSetManagerDecoder *parameterSetManager, AlfCUCtrlInfo &alfCUCtrl )  { m_pcEntropyDecoderIf->parseSliceHeader(rpcSlice, parameterSetManager, alfCUCtrl);         }
  • branches/HTM-5.1-dev2-Mediatek/source/Lib/TLibDecoder/TDecSbac.h

    r210 r254  
    9090  Void  parseVPS                  ( TComVPS* pcVPS )  {}
    9191#endif
    92 #if HHI_MPI
     92#if HHI_MPI || OL_QTLIMIT_PREDCODING_B0068
    9393  Void  parseSPS                  ( TComSPS* pcSPS, Bool bIsDepth ) {}
    9494#else
     
    104104
    105105#if LCU_SYNTAX_ALF
     106#if MTK_DEPTH_MERGE_TEXTURE_CANDIDATE_C0137
     107  Void  parseSliceHeader          ( TComSlice*& rpcSlice, ParameterSetManagerDecoder *parameterSetManager, AlfCUCtrlInfo &alfCUCtrl, AlfParamSet& alfParamSet, bool isDepth) {}
     108#else
    106109  Void  parseSliceHeader          ( TComSlice*& rpcSlice, ParameterSetManagerDecoder *parameterSetManager, AlfCUCtrlInfo &alfCUCtrl, AlfParamSet& alfParamSet) {}
     110#endif
    107111#else
    108112  Void  parseSliceHeader          ( TComSlice*& rpcSlice, ParameterSetManagerDecoder *parameterSetManager, AlfCUCtrlInfo &alfCUCtrl ) {}
  • branches/HTM-5.1-dev2-Mediatek/source/Lib/TLibDecoder/TDecTop.cpp

    r210 r254  
    700700  // ALF CU parameters should be part of the slice header -> needs to be fixed
    701701#if LCU_SYNTAX_ALF
     702#if MTK_DEPTH_MERGE_TEXTURE_CANDIDATE_C0137
     703  m_cEntropyDecoder.decodeSliceHeader (m_apcSlicePilot, &m_parameterSetManagerDecoder, m_cGopDecoder.getAlfCuCtrlParam(), m_cGopDecoder.getAlfParamSet(),m_apcSlicePilot->getVPS()->getDepthFlag(nalu.m_layerId));
     704#else
    702705  m_cEntropyDecoder.decodeSliceHeader (m_apcSlicePilot, &m_parameterSetManagerDecoder, m_cGopDecoder.getAlfCuCtrlParam(), m_cGopDecoder.getAlfParamSet());
     706#endif
    703707#else
    704708  m_cEntropyDecoder.decodeSliceHeader (m_apcSlicePilot, &m_parameterSetManagerDecoder, m_cGopDecoder.getAlfCuCtrlParam() );
     
    11531157  sps->setRPSList(rps);
    11541158#endif
    1155 #if HHI_MPI
     1159#if HHI_MPI || OL_QTLIMIT_PREDCODING_B0068
    11561160  m_cEntropyDecoder.decodeSPS( sps, m_isDepth );
    11571161#else
Note: See TracChangeset for help on using the changeset viewer.