73#define SDL_AUDIO_MASK_BITSIZE (0xFF)
74#define SDL_AUDIO_MASK_DATATYPE (1<<8)
75#define SDL_AUDIO_MASK_ENDIAN (1<<12)
76#define SDL_AUDIO_MASK_SIGNED (1<<15)
77#define SDL_AUDIO_BITSIZE(x) (x & SDL_AUDIO_MASK_BITSIZE)
78#define SDL_AUDIO_ISFLOAT(x) (x & SDL_AUDIO_MASK_DATATYPE)
79#define SDL_AUDIO_ISBIGENDIAN(x) (x & SDL_AUDIO_MASK_ENDIAN)
80#define SDL_AUDIO_ISSIGNED(x) (x & SDL_AUDIO_MASK_SIGNED)
81#define SDL_AUDIO_ISINT(x) (!SDL_AUDIO_ISFLOAT(x))
82#define SDL_AUDIO_ISLITTLEENDIAN(x) (!SDL_AUDIO_ISBIGENDIAN(x))
83#define SDL_AUDIO_ISUNSIGNED(x) (!SDL_AUDIO_ISSIGNED(x))
91#define SDL_AUDIO_U8 0x0008
92#define SDL_AUDIO_S8 0x8008
93#define SDL_AUDIO_S16LSB 0x8010
94#define SDL_AUDIO_S16MSB 0x9010
95#define SDL_AUDIO_S16 SDL_AUDIO_S16LSB
102#define SDL_AUDIO_S32LSB 0x8020
103#define SDL_AUDIO_S32MSB 0x9020
104#define SDL_AUDIO_S32 SDL_AUDIO_S32LSB
111#define SDL_AUDIO_F32LSB 0x8120
112#define SDL_AUDIO_F32MSB 0x9120
113#define SDL_AUDIO_F32 SDL_AUDIO_F32LSB
120#if SDL_BYTEORDER == SDL_LIL_ENDIAN
121#define SDL_AUDIO_S16SYS SDL_AUDIO_S16LSB
122#define SDL_AUDIO_S32SYS SDL_AUDIO_S32LSB
123#define SDL_AUDIO_F32SYS SDL_AUDIO_F32LSB
125#define SDL_AUDIO_S16SYS SDL_AUDIO_S16MSB
126#define SDL_AUDIO_S32SYS SDL_AUDIO_S32MSB
127#define SDL_AUDIO_F32SYS SDL_AUDIO_F32MSB
137#define SDL_AUDIO_ALLOW_FREQUENCY_CHANGE 0x00000001
138#define SDL_AUDIO_ALLOW_FORMAT_CHANGE 0x00000002
139#define SDL_AUDIO_ALLOW_CHANNELS_CHANGE 0x00000004
140#define SDL_AUDIO_ALLOW_SAMPLES_CHANGE 0x00000008
141#define SDL_AUDIO_ALLOW_ANY_CHANGE (SDL_AUDIO_ALLOW_FREQUENCY_CHANGE|SDL_AUDIO_ALLOW_FORMAT_CHANGE|SDL_AUDIO_ALLOW_CHANNELS_CHANGE|SDL_AUDIO_ALLOW_SAMPLES_CHANGE)
510 int allowed_changes);
681#define SDL_LoadWAV(file, spec, audio_buf, audio_len) \
682 SDL_LoadWAV_RW(SDL_RWFromFile(file, "rb"),1, spec,audio_buf,audio_len)
928#define SDL_MIX_MAXVOLUME 128
1259 const Uint8 *src_data,
void SDL_CloseAudioDevice(SDL_AudioDeviceID dev)
SDL_AudioSpec * SDL_LoadWAV_RW(SDL_RWops *src, int freesrc, SDL_AudioSpec *spec, Uint8 **audio_buf, Uint32 *audio_len)
SDL_AudioDeviceID SDL_OpenAudioDevice(const char *device, int iscapture, const SDL_AudioSpec *desired, SDL_AudioSpec *obtained, int allowed_changes)
int SDL_GetNumAudioDevices(int iscapture)
int SDL_SetAudioStreamFormat(SDL_AudioStream *stream, SDL_AudioFormat src_format, int src_channels, int src_rate, SDL_AudioFormat dst_format, int dst_channels, int dst_rate)
const char * SDL_GetAudioDriver(int index)
int SDL_PlayAudioDevice(SDL_AudioDeviceID dev)
struct SDL_AudioStream SDL_AudioStream
const char * SDL_GetAudioDeviceName(int index, int iscapture)
Uint16 SDL_AudioFormat
Audio format flags.
int SDL_FlushAudioStream(SDL_AudioStream *stream)
Uint32 SDL_DequeueAudio(SDL_AudioDeviceID dev, void *data, Uint32 len)
int SDL_GetNumAudioDrivers(void)
const char * SDL_GetCurrentAudioDriver(void)
int SDL_GetAudioStreamFormat(SDL_AudioStream *stream, SDL_AudioFormat *src_format, int *src_channels, int *src_rate, SDL_AudioFormat *dst_format, int *dst_channels, int *dst_rate)
int SDL_PauseAudioDevice(SDL_AudioDeviceID dev)
int SDL_GetAudioStreamAvailable(SDL_AudioStream *stream)
int SDL_QueueAudio(SDL_AudioDeviceID dev, const void *data, Uint32 len)
int SDL_ConvertAudioSamples(SDL_AudioFormat src_format, Uint8 src_channels, int src_rate, const Uint8 *src_data, int src_len, SDL_AudioFormat dst_format, Uint8 dst_channels, int dst_rate, Uint8 **dst_data, int *dst_len)
int SDL_PutAudioStreamData(SDL_AudioStream *stream, const void *buf, int len)
int SDL_GetDefaultAudioInfo(char **name, SDL_AudioSpec *spec, int iscapture)
void SDL_DestroyAudioStream(SDL_AudioStream *stream)
SDL_AudioStream * SDL_CreateAudioStream(SDL_AudioFormat src_format, int src_channels, int src_rate, SDL_AudioFormat dst_format, int dst_channels, int dst_rate)
int SDL_GetAudioStreamData(SDL_AudioStream *stream, void *buf, int len)
void(* SDL_AudioCallback)(void *userdata, Uint8 *stream, int len)
Uint32 SDL_GetQueuedAudioSize(SDL_AudioDeviceID dev)
int SDL_ClearAudioStream(SDL_AudioStream *stream)
int SDL_ClearQueuedAudio(SDL_AudioDeviceID dev)
int SDL_MixAudioFormat(Uint8 *dst, const Uint8 *src, SDL_AudioFormat format, Uint32 len, int volume)
int SDL_GetAudioDeviceSpec(int index, int iscapture, SDL_AudioSpec *spec)
SDL_AudioStatus SDL_GetAudioDeviceStatus(SDL_AudioDeviceID dev)
int SDL_LockAudioDevice(SDL_AudioDeviceID dev)
void SDL_UnlockAudioDevice(SDL_AudioDeviceID dev)
Functions for reading and writing endian-specific values.
Functions to provide thread synchronization primitives.
This is a general header that includes C language support.
Header for the SDL thread management routines.
SDL_AudioCallback callback