JVET-R0116 AHG11/AHG14: On sign data hiding of transform skip block [M. G. Sarwer, Y. Ye, J. Luo (Alibaba)]
It is asserted that, in VTM-8.0, if slice_ts_residual_coding_disabled_flag == 1, the encoder RDOQ process does not select proper residual coding method for transform skip (TS) and BDPCM blocks. In this contribution, the encoder RDOQ process is modified so that it can select correct residual coding method during RDOQ process.
It is further reported that, in VTM-8.0 software, an encoder-decoder mismatch is also observed if both slice_ts_residual_coding_disabled_flag == 1 and pic_sign_data_hiding_enabled_flag == 1. This contribution also proposes two methods to resolve the encoder-decoder mismatch issue. In the first method, sign data hiding (SDH) is disabled for BDPCM blocks only, whereas in the second method, SDH is disabled for both TS and BDPCM blocks. The encoder RDOQ bug fix (mentioned above) are included in both of the methods.
During the discussion, it is questioned whether the encoder/decoder mismatch is not just an issue of VTM implementation. The spec is asserted to clearly define how SDH works from a decoder perspective, regardless if it is regular transform, TS or TS/BDPCM. The encoder may have a problem of determining the hidden sign value, though. A normative change may not be needed to resolve the encoder/decoder mismatch.
The normative changes that are suggested: disable SDH at block level when BDPCM is on (method 2.1), or when TS is on (regardless if with or without BDPCM (method 2.2)
The problem only occurs with TS/RRC
The proposal also includes a cleanup, removing the condition on DQ/SDH at block level, as both are mutually exclusive at high level.
Relative to this cleanup, another condition would be introduced at block level.
JVET-R0141 also proposes method 2.2, which is also equivalent to JVET-R0083 variant 3. Document JVET-R0154 also proposes both methods 2.1 and 2.2, and also a high level solution additionally. JVET-R0144 method 2 is identical to 2.2. JVET-R0325 aspect 2 also proposes method 2.2.
It was the general opinion that the combination of TS/BDPCM with SDH/DQ and RRC is not beneficial and difficult to handle by an encoder. A high level disabling of this combination would also resolve the problem.
A solution resolving the problems with SDH/DQ should be consistent.
Options:
- Fix the software bugs, and keep the text unchanged
- High level disabling of the combination TS/RRC with either DQ or SDH (which are mutually exclusive)
- Block-level inhibiting that said combinations.
Several experts expressed the opinion that the second option (high level disabling the combination) would be the safest solution for the problems raised, with least danger of introducing additional problems, making the software bug fixes most simple (the fix of DQ context derivation would still be necessary).
See further notes as per decision on JVET-R0271