[FFmpeg-devel] [PATCH] avcodec/mpegvideo: Remove spec-incompliant inverse quantisation
Anton Khirnov
anton at khirnov.net
Wed Nov 8 13:40:30 EET 2023
Quoting Michael Niedermayer (2023-10-31 09:40:44)
> On Mon, Oct 30, 2023 at 02:11:27PM +0100, Andreas Rheinhardt wrote:
> > Section 7.4.4 of the MPEG-2 specifications requires that the
> > last bit of the last coefficient be toggled so that the sum
> > of all coefficients is odd; both our decoder and encoder
> > did this only if the bitexact flag has been set (although
> > stuff like this should be behind AV_CODEC_FLAG2_FAST).
> > This patch changes this by removing the spec-incompliant
> > functions.
>
> This commit message should include benchamarks documenting the speed loss
> (of the unquantize, the IDCT and overall)
> It is expected that the speed of some IDCTs will be impacted negativly
> as the non zero terms will prevent the skiping of some significant code
>
> as well as information about how much PSNR improves (to the encoder input)
>
> Also the change is a +-1 in one spot before the IDCT, the IDCT is not bitexactly
> specified in MPEG-2 so one could think of this as a
> correct implementation followed by a IDCT that was sometimes +-1 off
> instead of spec non compliance
>
> Only after the benchmarks and PSNR is presented should we decide if this
> is a change we want
I disagree that the burden of proof should be on Andreas here. It should
be up to whoever wants to keep this code to show that it is useful.
--
Anton Khirnov
More information about the ffmpeg-devel
mailing list