Mercurial > audlegacy
comparison src/audacious/plugin.h @ 4240:29c8603a877a
added FMT_FIXED32, an equivalent of mad_fixed_t, already supported by libSAD; some endianness-related changes
| author | Eugene Zagidullin <e.asphyx@gmail.com> |
|---|---|
| date | Mon, 04 Feb 2008 01:30:53 +0300 |
| parents | 8f6956130372 |
| children | 8157686b8115 |
comparison
equal
deleted
inserted
replaced
| 4239:51291ce4eb54 | 4240:29c8603a877a |
|---|---|
| 84 FMT_S32_LE, | 84 FMT_S32_LE, |
| 85 FMT_S32_BE, | 85 FMT_S32_BE, |
| 86 FMT_S32_NE, | 86 FMT_S32_NE, |
| 87 | 87 |
| 88 FMT_FLOAT, | 88 FMT_FLOAT, |
| 89 FMT_FIXED32, /* equivalent of libmad's mad_fixed_t explained below */ | |
| 89 } AFormat; | 90 } AFormat; |
| 91 | |
| 92 /* From mad.h: | |
| 93 * | |
| 94 * Fixed-point format: 0xABBBBBBB | |
| 95 * A == whole part (sign + 3 bits) | |
| 96 * B == fractional part (28 bits) | |
| 97 * | |
| 98 * Values are signed two's complement, so the effective range is: | |
| 99 * 0x80000000 to 0x7fffffff | |
| 100 * -8.0 to +7.9999999962747097015380859375 | |
| 101 * | |
| 102 * The smallest representable value is: | |
| 103 * 0x00000001 == 0.0000000037252902984619140625 (i.e. about 3.725e-9) | |
| 104 * | |
| 105 * 28 bits of fractional accuracy represent about | |
| 106 * 8.6 digits of decimal accuracy. | |
| 107 * | |
| 108 * Fixed-point numbers can be added or subtracted as normal | |
| 109 * integers, but multiplication requires shifting the 64-bit result | |
| 110 * from 56 fractional bits back to 28 (and rounding.) | |
| 111 */ | |
| 112 | |
| 113 #define __AUDACIOUS_ASSUMED_MAD_F_FRACBITS__ 28 /* useful for build time check for plugins linked against libmad, i.e. madplug */ | |
| 90 | 114 |
| 91 typedef enum { | 115 typedef enum { |
| 92 INPUT_VIS_ANALYZER, | 116 INPUT_VIS_ANALYZER, |
| 93 INPUT_VIS_SCOPE, | 117 INPUT_VIS_SCOPE, |
| 94 INPUT_VIS_VU, | 118 INPUT_VIS_VU, |
