Opened 21 months ago
Closed 8 months ago
#1594 closed defect (fixed)
Mismatch between VVC spec and VTM for sample generation in CCLM process
Reported by: | ankur | Owned by: | |
---|---|---|---|
Priority: | major | Milestone: | |
Component: | spec | Version: | H.266/VVC v2 |
Keywords: | Cc: | ksuehring, bbross, XiangLi, fbossen, jvet@… |
Description
The ticket is about the text in the VVC spec in section 8.4.5.2.14 on pages 226 and 227, just after the equation 359. The text after eqn 359 in the spec should be updated to make it clear that luma samples prior to the in-loop filtering process are being used; and not luma samples prior to the deblocking filter.
Specifically, in the text from the spec, the "prior to the deblocking filter" should be changed to "prior to the in-loop filter process" at three places in the spec. On checking the software code, the samples prior to the in-loop filter process are being used. But the spec mentions prior to the deblocking filter. Suggestion is to update this.
As an aside, the text preceding eqn. 316 lists: The refW + refH + 1 + ( 2 * refIdx ) neighbouring samples refUnfilt[ x ][ y ] that are constructed samples prior to the inloop filter process, ... which seems the correct way to describe the text following eqn 359 (note: text near eqn. 316 seems correct, no issues in that).
Text following eqn. 359:
- The collocated luma samples pY[ x ][ y ] with x = 0..nTbW * SubWidthC − 1, y= 0..nTbH * SubHeightC − 1
are set equal to the reconstructed luma samples prior to the deblocking filter process at the locations
( xTbY + x, yTbY + y ).
- The neighbouring luma samples pY[ x ][ y ] are derived as follows:
– When availL is equal to TRUE, the neighbouring luma samples pY[ x ][ y ] with
x = −3..−1, y = ( availT ? −1 : 0 )..SubHeightC * Max( nTbH, numSampL ) − 1, are set equal to the
reconstructed luma samples prior to the deblocking filter process at the locations ( xTbY + x, yTbY +y ).
– When availT is equal to FALSE, the neighbouring luma samples pY[ x ][ y ] with
x = −2..SubWidthC * nTbW − 1, y = −2..−1, are set equal to the luma samples pY[ x ][ 0 ]
– When availT is equal to TRUE, the neighbouring luma samples pY[ x ][ y ] with
x = ( availL ? −1 : 0 )..SubWidthC * Max( nTbW, numSampT ) − 1, y = −3..−1, are set equal to the
reconstructed luma samples prior to the deblocking filter process at the locations ( xTbY+ x, yTbY + y ).
– When availL is equal to FALSE, the neighbouring luma samples pY[ x ][ y ] with
x = −1, y = −2..SubHeightC * nTbH − 1, are set equal to the reconstructed luma samples pY[ 0 ][ y ].
Change history (5)
comment:1 Changed 17 months ago by bbross
comment:2 Changed 17 months ago by bbross
Adding from JVET reflector email thread (26. April 2023):
Thanks for the comments, Gary. Yes, my understanding is also that the inverse mapping process is an in-loop filter process.
Thanks,
Ankur
comment:3 Changed 17 months ago by bbross
To be fixed in v3 of VVC by always using "in-loop filter process" when referring to section 8.8 and changing the first sentence as suggested by Gary:
“The in-loop filter process is applied as specified by the following ordered steps:”
comment:4 Changed 17 months ago by bbross
- Version changed from VTM-19.0 to H.266/VVC v2
comment:5 Changed 8 months ago by bbross
- Resolution set to fixed
- Status changed from new to closed
Fixed in v3
Adding from JVET reflector email thread (23. April 2023):
Ankur et al,
There is a closely related issue with the beginning of subclause 8.8.1.
It currently says this:
8.8 In-loop filter process
8.8.1 General
The picture inverse mapping process with luma samples and the three in-loop filters, namely deblocking filter, sample adaptive offset and adaptive loop filter, are applied as specified by the following ordered steps:
…
The highlighted phrase implies that “the picture inverse mapping process with luma samples” is not an in-loop filter process, but it is specified in 8.8, which is the in-loop filter process section. So is that an in-loop filter process or not?
If it is an in-loop filter process, then that sentence should be changed to simply:
“The in-loop filter process is applied as specified by the following ordered steps:”
(Or the title of subclause 8.8 should be changed to “In-loop filter processes”, and the sentence should be changed to “The in-loop filter processes are applied as specified by the following ordered steps:”)
If it is not an in-loop filter process, then I think the title of 8.8 should be changed to “Picture inverse mapping process and in-loop filter process[es]”.
I think it is an in-loop filter process.
Best regards,
Gary Sullivan