[FFmpeg-devel] ffvorbis, inverted output

Siarhei Siamashka siarhei.siamashka
Sat Sep 27 20:59:21 CEST 2008

On Sunday 14 September 2008, Michael Niedermayer wrote:
> On Sun, Sep 14, 2008 at 04:50:59AM +0300, Siarhei Siamashka wrote:
> > Hi,
> >
> > I tried to do PSNR comparison of libvorbis/ffvorbis/tremor and noticed
> > that output from ffvorbis is actually inverted (ex. output 0xFFFF in
> > libvorbis corresponds to 0x0001 in ffvorbis and so on) when compared to
> > the output from the other decoders.
> >
> > Should this be fixed?
> yes, if all (/most) other vorbis decoders match and we differ from that

Can these two patches be used as a fix? The first one adds support for 
scaled imdct output. The second one inverts output of the decoder (to match
libvorbis and tremor) using negative scale factor.

As additional bonus, 'copy_normalize' function from vorbis decoder is
simplified. Though I get some inconsistent benchmark results (performance
difference is negligible with one or another variant getting ahead randomly)
and would like someone to confirm that there is no performance regression.

Getting scaled imdct output involves sqrt operation and scale factor uses
odd power of two, so there is some difference in PSNR compared to SVN
trunk (taking inversion into account): 

stddev:    0.02 PSNR:127.97 bytes: 22057216/ 22057216

Best regards,
Siarhei Siamashka
-------------- next part --------------
A non-text attachment was scrubbed...
Name: 01_mdct_scale.diff
Type: text/x-diff
Size: 2050 bytes
Desc: not available
URL: <http://lists.mplayerhq.hu/pipermail/ffmpeg-devel/attachments/20080927/21131d78/attachment.diff>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: 02_vorbis_inverted_output_fix.diff
Type: text/x-diff
Size: 2047 bytes
Desc: not available
URL: <http://lists.mplayerhq.hu/pipermail/ffmpeg-devel/attachments/20080927/21131d78/attachment-0001.diff>

More information about the ffmpeg-devel mailing list