|
Size: 3063
Comment: null
|
Size: 3091
Comment: null
|
| Deletions are marked like this. | Additions are marked like this. |
| Line 39: | Line 39: |
| ||AUDIO_S8||signed 8-bit samples|| | |
| Line 40: | Line 41: |
| ||AUDIO_S8||signed 8-bit samples|| ||AUDIO_U16LSB||unsigned 16-bit samples|| ||AUDIO_S16LSB||signed 16-bit samples|| ||AUDIO_U16MSB||as above, but big-endian byte order|| ||AUDIO_S16MSB||as above, but big-endian byte order|| |
||AUDIO_S16LSB||signed 16-bit samples in little-endian order|| ||AUDIO_S16MSB||signed 16-bit samples int big-endian byte order|| ||AUDIO_S16SYS||signed 16-bit samples in native byte order|| ||AUDIO_U16LSB||unsigned 16-bit samples in little-endian order|| ||AUDIO_U16MSB||unsigned 16-bit samples in big-endian byte order|| ||AUDIO_U16SYS||unsigned 16-bit samples in native byte order|| |
| Line 47: | Line 49: |
| Defaults to LSB byte order. | |
| Line 64: | Line 65: |
| #define AUDIO_U16SYS AUDIO_U16LSB #define AUDIO_S16SYS AUDIO_S16LSB |
|
| Line 69: | Line 68: |
| #define AUDIO_U16SYS AUDIO_U16MSB #define AUDIO_S16SYS AUDIO_S16MSB |
SDL_AudioFormat
A typedef that contains audio format data and flags.
Contents
Values
Bit Meanings
These are what the 16 bits in SDL_AudioFormat currently mean:
+----------------------sample is signed if set | | +----------sample is bigendian if set | | | | +--sample is float if set | | | | | | +--sample bit size---+ | | | | | 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
Unspecified bits are always zero. There are macros in SDL 1.3 and later to query these bits.
Audio flags
SDL_AUDIO_MASK_BITSIZE |
(0xFF) |
SDL_AUDIO_MASK_DATATYPE |
(1<<8) |
SDL_AUDIO_MASK_ENDIAN |
(1<<12) |
SDL_AUDIO_MASK_SIGNED |
(1<<15) |
SDL_AUDIO_BITSIZE(x) |
(x & SDL_AUDIO_MASK_BITSIZE) |
SDL_AUDIO_ISFLOAT(x) |
(x & SDL_AUDIO_MASK_DATATYPE) |
SDL_AUDIO_ISBIGENDIAN(x) |
(x & SDL_AUDIO_MASK_ENDIAN) |
SDL_AUDIO_ISSIGNED(x) |
(x & SDL_AUDIO_MASK_SIGNED) |
SDL_AUDIO_ISINT(x) |
(!SDL_AUDIO_ISFLOAT(x)) |
SDL_AUDIO_ISLITTLEENDIAN(x) |
(!SDL_AUDIO_ISBIGENDIAN(x)) |
SDL_AUDIO_ISUNSIGNED(x) |
(!SDL_AUDIO_ISSIGNED(x)) |
Audio format flags
AUDIO_S8 |
signed 8-bit samples |
AUDIO_U8 |
unsigned 8-bit samples |
AUDIO_S16LSB |
signed 16-bit samples in little-endian order |
AUDIO_S16MSB |
signed 16-bit samples int big-endian byte order |
AUDIO_S16SYS |
signed 16-bit samples in native byte order |
AUDIO_U16LSB |
unsigned 16-bit samples in little-endian order |
AUDIO_U16MSB |
unsigned 16-bit samples in big-endian byte order |
AUDIO_U16SYS |
unsigned 16-bit samples in native byte order |
AUDIO_U16 |
AUDIO_U16LSB |
AUDIO_S16 |
AUDIO_S16LSB |
int32 support
(New to SDL 1.3)
AUDIO_S32LSB |
32-bit integer samples |
AUDIO_S32MSB |
as above, but big-endian byte order |
AUDIO_S32 |
AUDIO_S32LSB |
float32 support
(New to SDL 1.3)
AUDIO_F32LSB |
32-bit floating point samples |
AUDIO_F32MSB |
as above, but big-endian byte order |
AUDIO_F32 |
AUDIO_F32LSB |
Native audio byte ordering
#if SDL_BYTEORDER == SDL_LIL_ENDIAN #define AUDIO_S32SYS AUDIO_S32LSB #define AUDIO_F32SYS AUDIO_F32LSB #else #define AUDIO_S32SYS AUDIO_S32MSB #define AUDIO_F32SYS AUDIO_F32MSB #endif
Allow change flags
Which audio format changes are allowed when opening a device.
SDL_AUDIO_ALLOW_FREQUENCY_CHANGE |
0x00000001 |
SDL_AUDIO_ALLOW_FORMAT_CHANGE |
0x00000002 |
SDL_AUDIO_ALLOW_CHANNELS_CHANGE |
0x00000004 |
SDL_AUDIO_ALLOW_ANY_CHANGE |
(SDL_AUDIO_ALLOW_FREQUENCY_CHANGE|SDL_AUDIO_ALLOW_FORMAT_CHANGE|SDL_AUDIO_ALLOW_CHANNELS_CHANGE) |
Code Examples
You can add your code example here
Remarks
You can add useful comments here
Related Structures
