10
/* Input formats (some are currently theoretical) */
12
UserFmtByte, /* AL_BYTE */
13
UserFmtUByte, /* AL_UNSIGNED_BYTE */
14
UserFmtShort, /* AL_SHORT */
15
UserFmtUShort, /* AL_UNSIGNED_SHORT */
16
UserFmtInt, /* AL_INT */
17
UserFmtUInt, /* AL_UNSIGNED_INT */
18
UserFmtFloat, /* AL_FLOAT */
19
UserFmtDouble, /* AL_DOUBLE */
20
UserFmtMulaw, /* AL_MULAW */
21
UserFmtIMA4, /* AL_IMA4 */
12
UserFmtByte = AL_BYTE_SOFT,
13
UserFmtUByte = AL_UNSIGNED_BYTE_SOFT,
14
UserFmtShort = AL_SHORT_SOFT,
15
UserFmtUShort = AL_UNSIGNED_SHORT_SOFT,
16
UserFmtInt = AL_INT_SOFT,
17
UserFmtUInt = AL_UNSIGNED_INT_SOFT,
18
UserFmtFloat = AL_FLOAT_SOFT,
19
UserFmtDouble = AL_DOUBLE_SOFT,
20
UserFmtByte3 = AL_BYTE3_SOFT,
21
UserFmtUByte3 = AL_UNSIGNED_BYTE3_SOFT,
23
26
enum UserFmtChannels {
24
UserFmtMono, /* AL_MONO */
25
UserFmtStereo, /* AL_STEREO */
26
UserFmtRear, /* AL_REAR */
27
UserFmtQuad, /* AL_QUAD */
28
UserFmtX51, /* AL_5POINT1 (WFX order) */
29
UserFmtX61, /* AL_6POINT1 (WFX order) */
30
UserFmtX71, /* AL_7POINT1 (WFX order) */
27
UserFmtMono = AL_MONO_SOFT,
28
UserFmtStereo = AL_STEREO_SOFT,
29
UserFmtRear = AL_REAR_SOFT,
30
UserFmtQuad = AL_QUAD_SOFT,
31
UserFmtX51 = AL_5POINT1_SOFT, /* (WFX order) */
32
UserFmtX61 = AL_6POINT1_SOFT, /* (WFX order) */
33
UserFmtX71 = AL_7POINT1_SOFT, /* (WFX order) */
33
ALboolean DecomposeUserFormat(ALenum format, enum UserFmtChannels *chans,
34
enum UserFmtType *type);
35
36
ALuint BytesFromUserFmt(enum UserFmtType type);
36
37
ALuint ChannelsFromUserFmt(enum UserFmtChannels chans);
37
38
static __inline ALuint FrameSizeFromUserFmt(enum UserFmtChannels chans,