From c87e6b40af43d163fc9a6e7e83c7aadef5abcdfb Mon Sep 17 00:00:00 2001 From: Karsten Suehring <karsten.suehring@hhi.fraunhofer.de> Date: Mon, 6 Jul 2020 15:14:52 +0200 Subject: [PATCH] remove macro JVET_R0208_ALF_VB_ROUNDING_FIX --- source/Lib/CommonLib/AdaptiveLoopFilter.cpp | 4 ---- source/Lib/CommonLib/TypeDef.h | 1 - source/Lib/CommonLib/x86/AdaptiveLoopFilterX86.h | 14 -------------- 3 files changed, 19 deletions(-) diff --git a/source/Lib/CommonLib/AdaptiveLoopFilter.cpp b/source/Lib/CommonLib/AdaptiveLoopFilter.cpp index eb5434a31..2c176bec1 100644 --- a/source/Lib/CommonLib/AdaptiveLoopFilter.cpp +++ b/source/Lib/CommonLib/AdaptiveLoopFilter.cpp @@ -1285,11 +1285,7 @@ void AdaptiveLoopFilter::filterBlk(AlfClassifier **classifier, const PelUnitBuf } else { -#if JVET_R0208_ALF_VB_ROUNDING_FIX sum = (sum + (1 << ((shift + 3) - 1))) >> (shift + 3); -#else - sum = (sum + offset) >> (shift + 3); -#endif } sum += curr; pRec1[jj] = ClipPel( sum, clpRng ); diff --git a/source/Lib/CommonLib/TypeDef.h b/source/Lib/CommonLib/TypeDef.h index d25d6fbcb..2aff87a9c 100644 --- a/source/Lib/CommonLib/TypeDef.h +++ b/source/Lib/CommonLib/TypeDef.h @@ -129,7 +129,6 @@ -#define JVET_R0208_ALF_VB_ROUNDING_FIX 1 // JVET-R0208: Rounding offset fix for ALF virtual boundary processing #define JVET_R0232_CCALF_APS_CONSTRAINT 1 // JVET-R0232 section 3.2: APS contraint for CCALF diff --git a/source/Lib/CommonLib/x86/AdaptiveLoopFilterX86.h b/source/Lib/CommonLib/x86/AdaptiveLoopFilterX86.h index 447d02b5c..8b8c68ea6 100644 --- a/source/Lib/CommonLib/x86/AdaptiveLoopFilterX86.h +++ b/source/Lib/CommonLib/x86/AdaptiveLoopFilterX86.h @@ -317,9 +317,7 @@ static void simdFilter5x5Blk(AlfClassifier **classifier, const PelUnitBuf &recDs constexpr int SHIFT = AdaptiveLoopFilter::m_NUM_BITS - 1; constexpr int ROUND = 1 << (SHIFT - 1); -#if JVET_R0208_ALF_VB_ROUNDING_FIX const __m128i mmOffset1 = _mm_set1_epi32((1 << ((SHIFT + 3) - 1)) - ROUND); -#endif const size_t width = blk.width; const size_t height = blk.height; @@ -432,13 +430,8 @@ static void simdFilter5x5Blk(AlfClassifier **classifier, const PelUnitBuf &recDs } else { -#if JVET_R0208_ALF_VB_ROUNDING_FIX accumA = _mm_srai_epi32(_mm_add_epi32(accumA, mmOffset1), SHIFT + 3); accumB = _mm_srai_epi32(_mm_add_epi32(accumB, mmOffset1), SHIFT + 3); -#else - accumA = _mm_srai_epi32(accumA, SHIFT + 3); - accumB = _mm_srai_epi32(accumB, SHIFT + 3); -#endif } accumA = _mm_packs_epi32(accumA, accumB); accumA = _mm_add_epi16(accumA, cur); @@ -523,9 +516,7 @@ static void simdFilter7x7Blk(AlfClassifier **classifier, const PelUnitBuf &recDs Pel * dst = dstBuffer.buf + blkDst.y * dstStride + blkDst.x; const __m128i mmOffset = _mm_set1_epi32(ROUND); -#if JVET_R0208_ALF_VB_ROUNDING_FIX const __m128i mmOffset1 = _mm_set1_epi32((1 << ((SHIFT + 3) - 1)) - ROUND); -#endif const __m128i mmMin = _mm_set1_epi16( clpRng.min ); const __m128i mmMax = _mm_set1_epi16( clpRng.max ); @@ -674,13 +665,8 @@ static void simdFilter7x7Blk(AlfClassifier **classifier, const PelUnitBuf &recDs } else { -#if JVET_R0208_ALF_VB_ROUNDING_FIX accumA = _mm_srai_epi32(_mm_add_epi32(accumA, mmOffset1), SHIFT + 3); accumB = _mm_srai_epi32(_mm_add_epi32(accumB, mmOffset1), SHIFT + 3); -#else - accumA = _mm_srai_epi32(accumA, SHIFT + 3); - accumB = _mm_srai_epi32(accumB, SHIFT + 3); -#endif } accumA = _mm_packs_epi32(accumA, accumB); accumA = _mm_add_epi16(accumA, cur); -- GitLab