Skip to content
Snippets Groups Projects
Commit 4b37dd48 authored by Chen-Yen Lai's avatar Chen-Yen Lai
Browse files

integrate JVET-P0158

parent 65277b11
No related branches found
No related tags found
No related merge requests found
......@@ -447,7 +447,11 @@ void AdaptiveLoopFilter::ALFProcess(CodingStructure& cs)
m_filter7x7Blk(m_classifier, recYuv, buf, blkDst, blkSrc, COMPONENT_Y, coeff, clip, m_clpRngs.comp[COMPONENT_Y], cs
, m_alfVBLumaCTUHeight
#if JVET_O0625_ALF_PADDING
#if JVET_P0158_ALIGN_ALF_VB
, m_alfVBLumaPos, alfBryList
#else
, ( ( yPos + pcv.maxCUHeight >= pcv.lumaHeight ) ? pcv.lumaHeight : m_alfVBLumaPos ), alfBryList
#endif
#else
, ((yPos + pcv.maxCUHeight >= pcv.lumaHeight) ? pcv.lumaHeight : m_alfVBLumaPos)
#endif
......@@ -468,7 +472,11 @@ void AdaptiveLoopFilter::ALFProcess(CodingStructure& cs)
m_filter5x5Blk(m_classifier, recYuv, buf, blkDst, blkSrc, compID, m_chromaCoeffFinal[alt_num], m_chromaClippFinal[alt_num], m_clpRngs.comp[compIdx], cs
, m_alfVBChmaCTUHeight
#if JVET_O0625_ALF_PADDING
#if JVET_P0158_ALIGN_ALF_VB
, m_alfVBChmaPos, alfBryList);
#else
, ( ( yPos + pcv.maxCUHeight >= pcv.lumaHeight ) ? pcv.lumaHeight : m_alfVBChmaPos ), alfBryList );
#endif
#else
, ((yPos + pcv.maxCUHeight >= pcv.lumaHeight) ? pcv.lumaHeight : m_alfVBChmaPos));
#endif
......@@ -508,7 +516,11 @@ void AdaptiveLoopFilter::ALFProcess(CodingStructure& cs)
m_filter7x7Blk(m_classifier, recYuv, tmpYuv, blk, blk, COMPONENT_Y, coeff, clip, m_clpRngs.comp[COMPONENT_Y], cs
, m_alfVBLumaCTUHeight
#if JVET_O0625_ALF_PADDING
#if JVET_P0158_ALIGN_ALF_VB
, m_alfVBLumaPos, alfBryList
#else
, ( ( yPos + pcv.maxCUHeight >= pcv.lumaHeight ) ? pcv.lumaHeight : m_alfVBLumaPos ), alfBryList
#endif
#else
, ((yPos + pcv.maxCUHeight >= pcv.lumaHeight) ? pcv.lumaHeight : m_alfVBLumaPos)
#endif
......@@ -528,7 +540,11 @@ void AdaptiveLoopFilter::ALFProcess(CodingStructure& cs)
m_filter5x5Blk(m_classifier, recYuv, tmpYuv, blk, blk, compID, m_chromaCoeffFinal[alt_num], m_chromaClippFinal[alt_num], m_clpRngs.comp[compIdx], cs
, m_alfVBChmaCTUHeight
#if JVET_O0625_ALF_PADDING
#if JVET_P0158_ALIGN_ALF_VB
, m_alfVBChmaPos, alfBryList);
#else
, ( ( yPos + pcv.maxCUHeight >= pcv.lumaHeight ) ? pcv.lumaHeight : m_alfVBChmaPos ), alfBryList );
#endif
#else
, ((yPos + pcv.maxCUHeight >= pcv.lumaHeight) ? pcv.lumaHeight : m_alfVBChmaPos));
#endif
......
......@@ -94,6 +94,8 @@
#define JVET_P0418_ALIGN_MLRP_CCLM 1 // JVET-P0418: Align MLRP with CCLM in terms of reference lines/columns
#define JVET_P0158_ALIGN_ALF_VB 1 // JVET-P0158: Apply ALF VB on the bottom CTU row
#define JVET_O0145_ENTRYPOINT_SIGNALLING 0 // JVET-O0145: Not signalling num_entry_point_offsets but derive it at decoder
#define JVET_O0625_ALF_PADDING 1 // JVET-O0625/O0654/O0662: Unified padding method in ALF
......
......@@ -2961,7 +2961,11 @@ void EncAdaptiveLoopFilter::alfReconstructor(CodingStructure& cs, const PelUnitB
m_filter7x7Blk(m_classifier, recBuf, buf, blkDst, blkSrc, COMPONENT_Y, coeff, clip, m_clpRngs.comp[COMPONENT_Y], cs
, m_alfVBLumaCTUHeight
#if JVET_O0625_ALF_PADDING
#if JVET_P0158_ALIGN_ALF_VB
, m_alfVBLumaPos, alfBryList
#else
, ( ( yPos + pcv.maxCUHeight >= pcv.lumaHeight ) ? pcv.lumaHeight : m_alfVBLumaPos ), alfBryList
#endif
#else
, ((yPos + pcv.maxCUHeight >= pcv.lumaHeight) ? pcv.lumaHeight : m_alfVBLumaPos)
#endif
......@@ -2981,7 +2985,11 @@ void EncAdaptiveLoopFilter::alfReconstructor(CodingStructure& cs, const PelUnitB
m_filter5x5Blk(m_classifier, recBuf, buf, blkDst, blkSrc, compID, m_chromaCoeffFinal[alt_num], m_chromaClippFinal[alt_num], m_clpRngs.comp[compIdx], cs
, m_alfVBChmaCTUHeight
#if JVET_O0625_ALF_PADDING
#if JVET_P0158_ALIGN_ALF_VB
, m_alfVBChmaPos, alfBryList
#else
, ( ( yPos + pcv.maxCUHeight >= pcv.lumaHeight ) ? pcv.lumaHeight : m_alfVBChmaPos ), alfBryList
#endif
#else
, ((yPos + pcv.maxCUHeight >= pcv.lumaHeight) ? pcv.lumaHeight : m_alfVBChmaPos)
#endif
......@@ -3018,7 +3026,11 @@ void EncAdaptiveLoopFilter::alfReconstructor(CodingStructure& cs, const PelUnitB
m_filter7x7Blk(m_classifier, recBuf, recExtBuf, blk, blk, COMPONENT_Y, coeff, clip, m_clpRngs.comp[COMPONENT_Y], cs
, m_alfVBLumaCTUHeight
#if JVET_O0625_ALF_PADDING
#if JVET_P0158_ALIGN_ALF_VB
, m_alfVBLumaPos, alfBryList
#else
, ( ( yPos + pcv.maxCUHeight >= pcv.lumaHeight ) ? pcv.lumaHeight : m_alfVBLumaPos ), alfBryList
#endif
#else
, ((yPos + pcv.maxCUHeight >= pcv.lumaHeight) ? pcv.lumaHeight : m_alfVBLumaPos)
#endif
......@@ -3037,7 +3049,11 @@ void EncAdaptiveLoopFilter::alfReconstructor(CodingStructure& cs, const PelUnitB
m_filter5x5Blk(m_classifier, recBuf, recExtBuf, blk, blk, compID, m_chromaCoeffFinal[alt_num], m_chromaClippFinal[alt_num], m_clpRngs.comp[compIdx], cs
, m_alfVBChmaCTUHeight
#if JVET_O0625_ALF_PADDING
#if JVET_P0158_ALIGN_ALF_VB
, m_alfVBChmaPos, alfBryList
#else
, ( ( yPos + pcv.maxCUHeight >= pcv.lumaHeight ) ? pcv.lumaHeight : m_alfVBChmaPos ), alfBryList
#endif
#else
, ((yPos + pcv.maxCUHeight >= pcv.lumaHeight) ? pcv.lumaHeight : m_alfVBChmaPos)
#endif
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment