This was off-by-one bug which affects floor0 encoded files. Tracked down
by valgrind (was reported as the use of uninitialized memory).
With this patch applied, tiny_psnr now reports the following when ffvorbis
is compared to libvorbis-1.0beta4 output for 'lsp-test.ogg' sample:
stddev: 0.76 PSNR: 98.69 bytes: 3498380/ 3498452
Output from libvorbis-1.2 is substantially different:
stddev: 132.57 PSNR: 53.87 bytes: 3498424/ 3498496
Originally committed as revision 18821 to svn://svn.ffmpeg.org/ffmpeg/trunk
float two_cos_w=2.0f*cos(wstep*iter_cond); // needed all times
/* similar part for the q and p products */
- for(j=0;j<order;j+=2) {
+ for(j=0;j+1<order;j+=2) {
q *= lsp[j] -two_cos_w;
p *= lsp[j+1]-two_cos_w;
}