Hi Dne Mon, 25 Jan 2010 19:25:26 +0200 Nanakos Chrysostomos <[email protected]> napsal(a):
> On 25/1/2010 16:10, Michal Čihař wrote:
> >
> > Your patch:
> >
> > ++ //tempsample = mad_f_mul(*left_ch++, options.volume);
> > ++ tempsample = (mad_fixed_t) ((*left_ch++ *
> > (double)options.volume)/MAD_F_ONE);
> >
> > Seems obviously wrong, because one of key features of mpg321 is that it
> > uses just fixed-point calculation, while you introduce floating point
> > arithmetic by this patch.
> >
> Can you please tell me where mpg321 introduces floating point
> arithmetic, especially with this patch??
Converting to double, doing calculation in double and converting back
to integer will do that.
> This patch sends mpg321 to the
> previous state. Please take a look at 0.2.10.3 , 0.2.10.6. It has
> nothing to do with the decoding of the mp3 file. For the audio dithering
> responsible are the functions from libmad which uses fixed-point
> calculation as you can see, audio dithering function does also. This
> patch will avoid compilation problems for MIPS and MIPSEL architectures
> [0],[1] introduced by the use of mad_f_mul function. Please take a look
> to /usr/include/mad.h. There is no difference by the introduced patch.
> Package upload again to mentors.d.n.
If the bug is in mad, then please fix it there. Or at least file a bug
report with appropriate severity.
--
Michal Čihař | http://cihar.com | http://blog.cihar.com
signature.asc
Description: PGP signature

