Commit 6b5e7370 authored by Xiang Ma's avatar Xiang Ma
Browse files

clean up useless array and its related code; resolve the merge conflict;...

clean up useless array and its related code; resolve the merge conflict; include MDLM modes in SATD checking.
parent 46a24140
...@@ -246,13 +246,9 @@ int g_aiLMDivTableHigh[] = { ...@@ -246,13 +246,9 @@ int g_aiLMDivTableHigh[] = {
129, 129, 129, 129, 128, 128, 128, 128, 129, 129, 129, 129, 128, 128, 128, 128,
}; };
#endif #endif
const int g_aiNonLMPosThrs[] = #if !JVET_L0338_MDLM
#if JVET_L0338_MDLM const int g_aiNonLMPosThrs[] = { 3, 1, 0 };
{ 0, 0, 0 }; // not use the useless threshold values.actually, these threshold values should be cleaned up
#else
{ 3, 1, 0 };
#endif #endif
#if JVET_L0646_GBI #if JVET_L0646_GBI
const int8_t g_GbiLog2WeightBase = 3; const int8_t g_GbiLog2WeightBase = 3;
const int8_t g_GbiWeightBase = (1 << g_GbiLog2WeightBase); const int8_t g_GbiWeightBase = (1 << g_GbiLog2WeightBase);
......
...@@ -54,6 +54,8 @@ ...@@ -54,6 +54,8 @@
#define JVET_L0191_LM_WO_LMS 1 // NO LMS regression. min/max are used instead #define JVET_L0191_LM_WO_LMS 1 // NO LMS regression. min/max are used instead
#define JVET_L0338_MDLM 1 // multi-directional LM. L0338 test5.4.1,L0340 test5.6.1
#define JVET_L0090_PAIR_AVG 1 // Add pairwise average candidates, replace HEVC combined candidates #define JVET_L0090_PAIR_AVG 1 // Add pairwise average candidates, replace HEVC combined candidates
#define JVET_L0392_ALF_INIT_STATE 1 #define JVET_L0392_ALF_INIT_STATE 1
...@@ -69,7 +71,6 @@ ...@@ -69,7 +71,6 @@
#define JVET_L0274 1 #define JVET_L0274 1
#define JVET_L0274_ENCODER_SPEED_UP ( 1 && JVET_L0274 ) // encoder speed-up by pre-calculating position dependent parameters #define JVET_L0274_ENCODER_SPEED_UP ( 1 && JVET_L0274 ) // encoder speed-up by pre-calculating position dependent parameters
#define JVET_L0338_MDLM 1 // multi-directional LM. L0338 test5.4.1,L0340 test5.6.1
......
...@@ -429,6 +429,7 @@ bool PU::isLMCModeEnabled(const PredictionUnit &pu, unsigned mode) ...@@ -429,6 +429,7 @@ bool PU::isLMCModeEnabled(const PredictionUnit &pu, unsigned mode)
int PU::getLMSymbolList(const PredictionUnit &pu, int *pModeList) int PU::getLMSymbolList(const PredictionUnit &pu, int *pModeList)
{ {
#if !JVET_L0338_MDLM
const int iNeighbors = 5; const int iNeighbors = 5;
const PredictionUnit* neighboringPUs[ iNeighbors ]; const PredictionUnit* neighboringPUs[ iNeighbors ];
...@@ -457,19 +458,24 @@ int PU::getLMSymbolList(const PredictionUnit &pu, int *pModeList) ...@@ -457,19 +458,24 @@ int PU::getLMSymbolList(const PredictionUnit &pu, int *pModeList)
} }
bool bNonLMInsert = false; bool bNonLMInsert = false;
#endif
int iIdx = 0; int iIdx = 0;
pModeList[ iIdx++ ] = LM_CHROMA_IDX; pModeList[ iIdx++ ] = LM_CHROMA_IDX;
#if !JVET_L0338_MDLM
if ( iCount >= g_aiNonLMPosThrs[0] && ! bNonLMInsert ) if ( iCount >= g_aiNonLMPosThrs[0] && ! bNonLMInsert )
{ {
#endif
pModeList[ iIdx++ ] = -1; pModeList[ iIdx++ ] = -1;
#if !JVET_L0338_MDLM
bNonLMInsert = true; bNonLMInsert = true;
} }
#endif
#if JVET_L0338_MDLM #if JVET_L0338_MDLM
pModeList[iIdx++] = MDLM_L_IDX; pModeList[iIdx++] = MDLM_L_IDX;
pModeList[iIdx++] = MDLM_T_IDX; pModeList[iIdx++] = MDLM_T_IDX;
#endif #endif
#if !JVET_L0338_MDLM
if ( iCount >= g_aiNonLMPosThrs[1] && ! bNonLMInsert ) if ( iCount >= g_aiNonLMPosThrs[1] && ! bNonLMInsert )
{ {
pModeList[ iIdx++ ] = -1; pModeList[ iIdx++ ] = -1;
...@@ -480,7 +486,7 @@ int PU::getLMSymbolList(const PredictionUnit &pu, int *pModeList) ...@@ -480,7 +486,7 @@ int PU::getLMSymbolList(const PredictionUnit &pu, int *pModeList)
pModeList[ iIdx++ ] = -1; pModeList[ iIdx++ ] = -1;
bNonLMInsert = true; bNonLMInsert = true;
} }
#endif
return iIdx; return iIdx;
} }
......
...@@ -745,7 +745,7 @@ void IntraSearch::estIntraPredChromaQT(CodingUnit &cu, Partitioner &partitioner) ...@@ -745,7 +745,7 @@ void IntraSearch::estIntraPredChromaQT(CodingUnit &cu, Partitioner &partitioner)
{ {
continue; continue;
} }
if (PU::isLMCMode(mode) || (mode == PLANAR_IDX) || (mode == DM_CHROMA_IDX)) // only pre-check regular mode, not including DM and Planar, and LM modes if ((mode == LM_CHROMA_IDX) || (mode == PLANAR_IDX) || (mode == DM_CHROMA_IDX)) // only pre-check regular modes and MDLM modes, not including DM ,Planar, and LM
{ {
continue; continue;
} }
......
Supports Markdown
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment