18 #define SOUND_LIB_DIRECTSOUND 0
19 #define SOUND_LIB_RSX 1
21 #define GAME_SND_USE_DS3D (1<<1)
22 #define GAME_SND_VOICE (1<<2)
26 #define SND_PRIORITY_MUST_PLAY 0
27 #define SND_PRIORITY_SINGLE_INSTANCE 1
28 #define SND_PRIORITY_DOUBLE_INSTANCE 2
29 #define SND_PRIORITY_TRIPLE_INSTANCE 3
54 priority(new_priority), limit(new_limit)
57 "EnhancedSoundData ctor given invalid priority %d", priority);
58 Assertion(limit > 0,
"EnhancedSoundData ctor given invalid limit %d", limit);
125 int snd_play_3d(
game_snd *
gs,
vec3d *source_pos,
vec3d *listen_pos,
float radius=0.0
f,
vec3d *vel = NULL,
int looping = 0,
float vol_scale=1.0
f,
int priority =
SND_PRIORITY_SINGLE_INSTANCE,
vec3d *sound_fvec = NULL,
float range_factor = 1.0
f,
int force = 0,
bool is_ambient =
false );
133 int snd_play_looping(
game_snd *
gs,
float pan=0.0
f,
int start_loop=-1,
int stop_loop=-1,
float vol_scale=1.0
f,
int scriptingUpdateVolume = 1);
191 void snd_get_format(
int handle,
int *bits_per_sample,
int *frequency);
struct sound_env sound_env
int snd_play_looping(game_snd *gs, float pan=0.0f, int start_loop=-1, int stop_loop=-1, float vol_scale=1.0f, int scriptingUpdateVolume=1)
LOCAL state_stack gs[GS_STACK_SIZE]
uint signature
Unique signature of this sound.
const unsigned int SND_ENHANCED_MAX_LIMIT
bool preload
preload sound (ie read from disk before mission starts)
int min
distance at which sound will stop getting louder
void snd_update_listener(vec3d *pos, vec3d *vel, matrix *orient)
int snd_get_pitch(int snd_handle)
int sound_env_set(sound_env *se)
#define Assertion(expr, msg,...)
std::basic_string< char, std::char_traits< char >, std::allocator< char > > SCP_string
int sound_env_supported()
int sound_env_get(sound_env *se, int preset=-1)
void snd_set_pitch(int snd_handle, int pitch)
int snd_play(game_snd *gs, float pan=0.0f, float vol_scale=1.0f, int priority=SND_PRIORITY_SINGLE_INSTANCE, bool voice_message=false)
char filename[MAX_FILENAME_LEN]
void snd_chg_loop_status(int snd_handle, int loop)
float Master_voice_volume
void snd_set_volume(int snd_handle, float volume)
int snd_unload(int sndnum)
int id
index into Sounds[], where sound data is stored
void snd_set_pos(int snd_handle, game_snd *sg, float val, int as_pct)
void snd_stop(int snd_handle)
int snd_play_raw(int soundnum, float pan, float vol_scale=1.0f, int priority=SND_PRIORITY_MUST_PLAY)
EnhancedSoundData enhanced_sound_data
int snd_load(game_snd *gs, int allow_hardware_load=0)
#define SND_PRIORITY_MUST_PLAY
int max
distance at which sound is inaudible
SCP_string name
The name of the sound.
void snd_set_pan(int snd_handle, float pan)
int snd_get_samples_per_measure(char *filename, float num_measures)
void snd_get_format(int handle, int *bits_per_sample, int *frequency)
EnhancedSoundData(const int new_priority, const unsigned int new_limit)
void snd_rewind(int snd_handle, game_snd *sg, float seconds)
int snd_play_3d(game_snd *gs, vec3d *source_pos, vec3d *listen_pos, float radius=0.0f, vec3d *vel=NULL, int looping=0, float vol_scale=1.0f, int priority=SND_PRIORITY_SINGLE_INSTANCE, vec3d *sound_fvec=NULL, float range_factor=1.0f, int force=0, bool is_ambient=false)
GLenum GLsizei GLenum GLenum const GLvoid * data
void snd_adjust_audio_volume(int type, float percent, int time)
#define SND_PRIORITY_SINGLE_INSTANCE
int snd_get_data(int handle, char *data)
int snd_get_3d_vol_and_pan(game_snd *gs, vec3d *pos, float *vol, float *pan, float radius=0.0f, float range_factor=1.0f)
const char * snd_get_filename(int snd_id)
float Master_sound_volume
void snd_update_3d_pos(int soudnnum, game_snd *gs, vec3d *new_pos, float radius=0.0f, float range_factor=1.0f)
unsigned int SND_ENV_DEFAULT
int id_sig
signature of Sounds[] element
float default_volume
range: 0.0 -> 1.0
void snd_use_lib(int lib_id)
int snd_size(int handle, int *size)
int snd_get_duration(int snd_id)
int snd_time_remaining(int handle)
void snd_ffwd(int snd_handle, game_snd *sg, float seconds)
int snd_is_playing(int snd_handle)