Clemens Ladisch wrote:
>
> Abramo Bagnara wrote:
> > Clemens Ladisch wrote:
> > > Abramo Bagnara wrote:
> > > > Use of 32/64 bits for 24/32 bit is wanted. Take in account that this
> > > > function is called on mix results (where I need to avoid wrap before
> > > > normalization).
> > >
> > > Then it should use bigger types for 8/16 bits, too. Checking for a type
> > > to overflow its own valid range seems to be rather pointless to me.
> >
> > It *does* use bigger types.
>
> In rev. 1.14 of plugin_ops.h, the beginning of the _norms() function is:
>
> switch (src_wid) {
> case 8:
> s = *(int8_t*)src;
> if (s >= 0x7f)
> goto _max;
> else if (s <= -0x80)
> goto _min;
> break;
> case 16:
> s = *(int16_t*)src;
> if (s >= 0x7fff)
> goto _max;
> else if (s <= -0x8000)
> goto _min;
> break;
>
> The reads through the src pointer _are_ using 8 and 16 bits.
Now I see... thank you. I've fixed it now.
--
Abramo Bagnara mailto:[EMAIL PROTECTED]
Opera Unica Phone: +39.546.656023
Via Emilia Interna, 140
48014 Castel Bolognese (RA) - Italy
-------------------------------------------------------
This sf.net email is sponsored by:ThinkGeek
Stuff, things, and much much more.
http://thinkgeek.com/sf
_______________________________________________
Alsa-devel mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/alsa-devel