The decoder used WelsMedian while the encoder used WELS_MEDIAN. The former has two different implementations, WELS_MEDIAN was identical to the disabled version of WelsMedian. Settle on using the same implementation for both decoder and encoder - whichever version of the implementations is faster should be used for both.
Showing the changes to codec/encoder/core/src/md.cpp (1 of 3 files). Show all
Unified · Split
| @@ -873,7 +873,7 @@ void PredictSad (int8_t* pRefIndexCache, int32_t* pSadCostCache, int32_t uiRef, · 872 unmodified lines | |||
| 873 | *pSadPred = iSadC; | 873 | *pSadPred = iSadC; |
| 874 | break; | 874 | break; |
| 875 | default: | 875 | default: |
| 876 | *pSadPred = WELS_MEDIAN (kiSadA, kiSadB, iSadC); | 876 | *pSadPred = WelsMedian (kiSadA, kiSadB, iSadC); |
| 877 | break; | 877 | break; |
| 878 | } | 878 | } |
| 879 | } | 879 | } |
| @@ -920,7 +920,7 @@ void PredictSadSkip (int8_t* pRefIndexCache, bool_t* pMbSkipCache, int32_t* pSad · 40 unmodified lines | |||
| 920 | *iSadPredSkip = iSadC; | 920 | *iSadPredSkip = iSadC; |
| 921 | break; | 921 | break; |
| 922 | default: | 922 | default: |
| 923 | *iSadPredSkip = WELS_MEDIAN (kiSadA, kiSadB, iSadC); | 923 | *iSadPredSkip = WelsMedian (kiSadA, kiSadB, iSadC); |
| 924 | break; | 924 | break; |
| 925 | } | 925 | } |
| 926 | } | 926 | } |