[alsa-devel] Suspecting a bug in plugin_ops.h
Clemens Ladisch
clemens at ladisch.de
Thu May 26 16:53:00 CEST 2011
Soulard, MathieuX wrote:
> static inline u_int32_t sx24s(u_int32_t x)
> {
> if(x&0x00008000)
> return x|0x000000FF;
> return x&0xFFFFFF00;
> }
>
> I think that 0x00008000 should be replaced by 0x00000800.
This function is indented to sign-extended a 24-bit value to 32 bits,
operating in 'wrong' endianness.
Why do you think that the sign bit is in the highest bit of the second-
highest nibble?
Regards,
Clemens
More information about the Alsa-devel
mailing list