Changeset 1049 in 3DVCSoftware for branches/HTM-12.0-dev1/source/Lib/TLibCommon


Ignore:
Timestamp:
20 Aug 2014, 08:01:43 (11 years ago)
Author:
mediatek-htm
Message:

Fix of the Ticket #63. The MACRO is "MTK_LOW_LATENCY_IC_ENCODING_H0086_FIX".

By Yi-Wen Chen (yiwen.chen@…)

Location:
branches/HTM-12.0-dev1/source/Lib/TLibCommon
Files:
5 edited

Legend:

Unmodified
Added
Removed
  • branches/HTM-12.0-dev1/source/Lib/TLibCommon/TComRom.cpp

    r1039 r1049  
    369369
    370370Char  g_aucConvertToBit  [ MAX_CU_SIZE+1 ];
    371 
     371#if !MTK_LOW_LATENCY_IC_ENCODING_H0086_FIX
    372372#if H_3D_IC
    373373UInt g_aICEnableCANDIDATE[10] = { 0, };
    374374UInt g_aICEnableNUM[ 10 ] = { 0, };
    375375Int g_lastlayer=0;
     376#endif
    376377#endif
    377378#if ENC_DEC_TRACE
  • branches/HTM-12.0-dev1/source/Lib/TLibCommon/TComRom.h

    r1039 r1049  
    192192
    193193extern       Char   g_aucConvertToBit  [ MAX_CU_SIZE+1 ];   // from width to log2(width)-2
    194 
     194#if !MTK_LOW_LATENCY_IC_ENCODING_H0086_FIX
    195195#if H_3D_IC
    196196extern UInt g_aICEnableCANDIDATE[10];
    197197extern UInt g_aICEnableNUM[ 10 ]; //10 layers
    198198extern Int  g_lastlayer;
     199#endif
    199200#endif
    200201
  • branches/HTM-12.0-dev1/source/Lib/TLibCommon/TComSlice.cpp

    r1048 r1049  
    36023602      m_bApplyIC = true;
    36033603      Int refLayer = curLayer-1;
    3604       if( (refLayer>=0) && (g_aICEnableCANDIDATE[refLayer]>0) )
     3604#if MTK_LOW_LATENCY_IC_ENCODING_H0086_FIX
     3605      Int ICEnableCandidate = getICEnableCandidate(refLayer);
     3606      Int ICEnableNum = getICEnableNum(refLayer);
     3607      if( (refLayer>=0) && (ICEnableCandidate>0) )
    36053608      {   
    3606         Double ratio=Double(g_aICEnableNUM[refLayer])/Double(g_aICEnableCANDIDATE[refLayer]);
     3609        Double ratio=Double(ICEnableNum/Double(ICEnableCandidate));
    36073610
    36083611        if( ratio > IC_LOW_LATENCY_ENCODING_THRESHOLD)
    3609 {
     3612        {
    36103613          m_bApplyIC=true;
    36113614        }
     
    36153618        }
    36163619      }
     3620      setICEnableCandidate(curLayer, 0);
     3621      setICEnableNum(curLayer, 0);
     3622#else
     3623      if( (refLayer>=0) && (g_aICEnableCANDIDATE[refLayer]>0) )
     3624      {   
     3625        Double ratio=Double(g_aICEnableNUM[refLayer])/Double(g_aICEnableCANDIDATE[refLayer]);
     3626
     3627        if( ratio > IC_LOW_LATENCY_ENCODING_THRESHOLD)
     3628{
     3629          m_bApplyIC=true;
     3630        }
     3631        else
     3632        {
     3633          m_bApplyIC=false;
     3634        }
     3635      }
    36173636      g_aICEnableNUM[curLayer]=0;
    36183637      g_aICEnableCANDIDATE[curLayer]=0;
    36193638      g_lastlayer=getDepth();
     3639#endif
    36203640    }
    36213641  }
  • branches/HTM-12.0-dev1/source/Lib/TLibCommon/TComSlice.h

    r1039 r1049  
    22562256  Bool      m_bApplySingleDepthMode;
    22572257#endif
     2258#if MTK_LOW_LATENCY_IC_ENCODING_H0086_FIX
     2259  Int *m_aICEnableCandidate;
     2260  Int *m_aICEnableNum;
     2261#endif
    22582262public:
    22592263  TComSlice();
     
    25672571#endif
    25682572#endif
     2573#if MTK_LOW_LATENCY_IC_ENCODING_H0086_FIX
     2574  Void    setICEnableCandidate( Int* ICEnableCandidate)   { m_aICEnableCandidate = ICEnableCandidate; };
     2575  Void    setICEnableNum( Int* ICEnableNum)   { m_aICEnableNum = ICEnableNum; };
     2576  Void    setICEnableCandidate( UInt layer, Int value)   { m_aICEnableCandidate[ layer ] = value; };
     2577  Void    setICEnableNum( UInt layer, Int value)   { m_aICEnableNum[ layer ] = value; };
     2578
     2579  Int    getICEnableCandidate( Int layer){ return  m_aICEnableCandidate[ layer ]; };
     2580  Int    getICEnableNum( Int layer){ return m_aICEnableNum[ layer ]; };
     2581#endif
    25692582#if H_MV
    25702583// Additional slice header syntax elements
  • branches/HTM-12.0-dev1/source/Lib/TLibCommon/TypeDef.h

    r1048 r1049  
    123123                                              // SEC_IC_ARP_SIG_G0072, Disabling IC when ARP is enabled, option 1 in JCT3V-G0072, part 2 in JCT3V-G0121
    124124                                              // MTK_LOW_LATENCY_IC_ENCODING_H0086  Low-latency IC encoding in JCT3V-H0086
     125
     126#define MTK_LOW_LATENCY_IC_ENCODING_H0086_FIX  1  // Remove the global variables used in JCT3V-H0086
     127
    125128
    126129#define SEC_IC_NEIGHBOR_CLIP_I0080        1   // Clipping of neighboring sample position, JCT3V-I0080
Note: See TracChangeset for help on using the changeset viewer.