|
typedef | ALvoid (AL_APIENTRY *ALGENFILTERS)(ALsizei |
|
int | ds_parse_sound (CFILE *fp, ubyte **dest, uint *dest_size, WAVEFORMATEX **header, bool ogg, OggVorbis_File *ovf) |
| Parse a wave file. More...
|
|
int | ds_parse_sound_info (char *real_filename, sound_info *s_info) |
|
int | ds_get_sid () |
|
int | ds_load_buffer (int *sid, int *final_size, void *header, sound_info *si, int flags) |
| Load a secondary buffer with sound data. More...
|
|
void | ds_init_channels () |
|
void | ds_init_buffers () |
|
bool | ds_check_for_openal_soft () |
|
int | ds_init () |
|
void | ds_close_channel (int i) |
|
void | ds_close_channel_fast (int i) |
|
void | ds_close_all_channels () |
|
void | ds_unload_buffer (int sid) |
|
void | ds_close_buffers () |
|
void | ds_close () |
|
int | ds_get_free_channel_retail (float new_volume, int snd_id, int priority) |
|
int | ds_get_free_channel_enhanced (float new_volume, int snd_id, int enhanced_priority, unsigned int enhanced_limit) |
|
int | ds_get_free_channel (float volume, int snd_id, int priority, int &enhanced_priority, const EnhancedSoundData &enhanced_sound_data) |
|
int | ds_create_buffer (int frequency, int bits_per_sample, int nchannels, int nseconds) |
|
int | ds_lock_data (int sid, unsigned char *data, int size) |
|
void | ds_stop_easy (int sid) |
|
int | ds_play_easy (int sid, float volume) |
|
int | ds_play (int sid, int snd_id, int priority, const EnhancedSoundData *enhanced_sound_data, float volume, float pan, int looping, bool is_voice_msg) |
|
int | ds_get_channel (int sig) |
|
int | ds_is_channel_playing (int channel_id) |
|
void | ds_stop_channel (int channel_id) |
|
void | ds_stop_channel_all () |
|
void | ds_set_volume (int channel_id, float vol) |
| Set the volume for a channel. The volume is expected to be in linear scale. More...
|
|
void | ds_set_pan (int channel_id, float pan) |
|
int | ds_get_pitch (int channel_id) |
|
void | ds_set_pitch (int channel_id, int pitch) |
|
void | ds_chg_loop_status (int channel_id, int loop) |
|
int | ds3d_play (int sid, int snd_id, vec3d *pos, vec3d *vel, float min, float max, int looping, float max_volume, float estimated_vol, const EnhancedSoundData *enhanced_sound_data, int priority, bool is_ambient) |
|
void | ds_set_position (int channel_id, unsigned int offset) |
|
unsigned int | ds_get_play_position (int channel_id) |
|
unsigned int | ds_get_write_position (int channel_id) |
|
int | ds_get_channel_size (int channel_id) |
|
int | ds_get_number_channels () |
|
int | ds_get_data (int sid, char *data) |
|
int | ds_get_size (int sid, int *size) |
|
int | ds_eax_set_volume (float volume) |
|
int | ds_eax_set_decay_time (float seconds) |
|
int | ds_eax_set_damping (float damp) |
|
int | ds_eax_set_environment (unsigned long envid) |
|
int | ds_eax_set_all (unsigned long id, float vol, float damping, float decay) |
|
int | ds_eax_get_preset_id (const char *name) |
|
int | ds_eax_get_prop (EFXREVERBPROPERTIES **props, const char *name, const char *template_name) |
|
int | ds_eax_get_all (EAX_REVERBPROPERTIES *er, int id) |
|
void | ds_eax_close () |
|
int | ds_eax_init () |
|
int | ds_eax_is_inited () |
|
void | ds_do_frame () |
|
int | ds_get_sound_id (int channel_id) |
|
Load a secondary buffer with sound data.
The sounds data for game sounds are stored in the DirectSound secondary buffers, and are duplicated as needed and placed in the Channels[] array to be played.
- Parameters
-
sid | Pointer to software id for sound ( output parm) |
final_size | Pointer to storage to receive uncompressed sound size (output parm) |
header | Pointer to a WAVEFORMATEX structure |
si | sound_info structure, contains details on the sound format |
flags | Buffer properties ( DS_HARDWARE , DS_3D ) |
- Returns
- 1 if sound effect could not loaded into a secondary buffer, 0 if sound effect successfully loaded into a secondary buffer
NOTE: this function is slow, especially when sounds are loaded into hardware. Don't call this function from within gameplay.
Definition at line 676 of file ds.cpp.