FTEQW
Documentation of the FTE engine source tree.
snd_dma.c File Reference

Typedefs

typedef struct SpeexMode SpeexMode
 
typedef struct SpeexPreprocessState SpeexPreprocessState
 
typedef qint16_t spx_int16_t
 

Enumerations

enum  {
  VOIP_SPEEX_OLD = 0 , VOIP_RAW16 = 1 , VOIP_OPUS = 2 , VOIP_SPEEX_NARROW = 3 ,
  VOIP_SPEEX_WIDE = 4 , VOIP_SPEEX_ULTRAWIDE = 5 , VOIP_PCMA = 6 , VOIP_PCMU = 7 ,
  VOIP_INVALID = 16
}
 

Functions

void S_StopAllSounds (qboolean clear)
 
void S_LockMixer (void)
 
void S_UnlockMixer (void)
 
void S_AmbientOff (void)
 
void S_AmbientOn (void)
 
qboolean S_HaveOutput (void)
 
void S_SoundInfo_f (void)
 
size_t PCMA_Decode (short *out, unsigned char *in, size_t samples)
 
size_t PCMA_Encode (unsigned char *out, size_t outsize, short *in, size_t samples)
 
size_t PCMU_Decode (short *out, unsigned char *in, size_t samples)
 
size_t PCMU_Encode (unsigned char *out, size_t outsize, short *in, size_t samples)
 
void S_Voip_Decode (unsigned int sender, unsigned int codec, unsigned int gen, unsigned char seq, unsigned int bytes, unsigned char *data)
 
qboolean S_Voip_RTP_CodecOkay (const char *codec)
 
void S_Voip_RTP_Parse (unsigned short sequence, char *codec, unsigned char *data, unsigned int datalen)
 
qboolean NET_RTP_Transmit (unsigned int sequence, unsigned int timestamp, const char *codec, char *cdata, int clength)
 
qboolean NET_RTP_Active (void)
 
void S_Voip_Parse (void)
 
void S_Voip_Transmit (unsigned char clc, sizebuf_t *buf)
 
void S_Voip_Ignore (unsigned int slot, qboolean ignore)
 
void S_Voip_MapChange (void)
 
int S_Voip_Loudness (qboolean ignorevad)
 
int S_Voip_ClientLoudness (unsigned int plno)
 
qboolean S_Voip_Speaking (unsigned int plno)
 
void S_Voip_Init (void)
 
void S_DefaultSpeakerConfiguration (soundcardinfo_t *sc)
 
soundcardinfo_tS_SetupDeviceSeat (char *driver, char *device, int seat)
 
void S_EnumerateDevices (void)
 
void S_ClearRaw (void)
 
void S_Startup (void)
 
void S_DoRestart (qboolean onlyifneeded)
 
void S_Restart_f (void)
 
void S_Control_f (void)
 
void S_Init (void)
 
void S_ShutdownCard (soundcardinfo_t *sc)
 
void S_Shutdown (qboolean final)
 
sfx_tS_FindName (const char *name, qboolean create, qboolean syspath)
 
void S_Purge (qboolean retaintouched)
 
void S_ResetFailedLoad (void)
 
void S_UntouchAll (void)
 
sfx_tS_PrecacheSound2 (const char *name, qboolean syspath)
 
channel_tSND_PickChannel (soundcardinfo_t *sc, int entnum, int entchannel)
 
float S_UpdateSound (int entnum, int entchannel, sfx_t *sfx, vec3_t origin, vec3_t velocity, float fvol, float attenuation, float timeofs, float pitchadj, unsigned int flags)
 
void S_StartSound (int entnum, int entchannel, sfx_t *sfx, vec3_t origin, vec3_t velocity, float fvol, float attenuation, float timeofs, float pitchadj, unsigned int flags)
 
qboolean S_GetMusicInfo (int musicchannel, float *time, float *duration, char *title, size_t titlesize)
 
float S_GetSoundTime (int entnum, int entchannel)
 
float S_GetChannelLevel (int entnum, int entchannel)
 
qboolean S_IsPlayingSomewhere (sfx_t *s)
 
void S_StopSound (int entnum, int entchannel)
 
void S_StaticSound (sfx_t *sfx, vec3_t origin, float vol, float attenuation)
 
void S_Music_Clear (sfx_t *onlyifsample)
 
void S_Music_Seek (float time)
 
qboolean S_Music_Playing (int musicchannel)
 
mleaf_tQ1BSP_LeafForPoint (model_t *model, vec3_t p)
 
void S_UpdateAmbientSounds (soundcardinfo_t *sc)
 
qboolean S_UpdateReverb (size_t slot, void *reverb, size_t reverbsize)
 
void S_UpdateListener (int seat, int entnum, vec3_t origin, vec3_t forward, vec3_t right, vec3_t up, size_t reverbtype, vec3_t velocity)
 
void S_GetListenerInfo (int seat, float *origin, float *forward, float *right, float *up)
 
int S_GetMixerTime (soundcardinfo_t *sc)
 
void S_Update (void)
 
void S_ExtraUpdate (void)
 
void S_MixerThread (soundcardinfo_t *sc)
 
void S_LocalSound2 (const char *sound, int channel, float volume)
 
void S_LocalSound (const char *sound)
 
sfxcache_t *QDECL S_Raw_Locate (sfx_t *sfx, sfxcache_t *buf, ssamplepos_t start, int length)
 
void QDECL S_Raw_Ended (sfx_t *sfx)
 
void QDECL S_Raw_Purge (sfx_t *sfx)
 
void S_RawAudio (int sourceid, qbyte *data, int speed, int samples, int channels, qaudiofmt_t format, float volume)
 

Variables

world_t csqc_world
 
soundcardinfo_tsndcardinfo
 
int snd_blocked = 0
 
qboolean snd_initialized = false
 
int snd_speed
 
float voicevolumemod = 1
 
cvar_t snd_nominaldistance = CVARAFD("s_nominaldistance", "1000", "snd_soundradius", CVAR_CHEAT, "This cvar defines how far an attenuation=1 sound can be heard.")
 
sfx_tknown_sfx
 
int num_sfx
 
sfx_tambient_sfx [NUM_AMBIENTS]
 
int desired_bits = 16
 
int sound_started =0
 
cvar_t mastervolume = CVARFD( "mastervolume", "1", CVAR_ARCHIVE, "Additional multiplier for all other sounds.")
 
cvar_t bgmvolume
 
cvar_t volume
 
cvar_t nosound
 
cvar_t snd_precache
 
cvar_t snd_loadas8bit
 
cvar_t snd_loadasstereo
 
cvar_t ambient_level
 
cvar_t ambient_fade
 
cvar_t snd_noextraupdate
 
cvar_t snd_show
 
cvar_t snd_khz
 
cvar_t snd_inactive
 
cvar_t _snd_mixahead
 
cvar_t snd_leftisright
 
cvar_t snd_eax
 
cvar_t snd_speakers
 
cvar_t snd_buffersize
 
cvar_t snd_samplebits
 
cvar_t snd_playersoundvolume
 
cvar_t snd_doppler
 
cvar_t snd_doppler_min
 
cvar_t snd_doppler_max
 
cvar_t snd_playbackrate = CVARFD( "snd_playbackrate", "1", CVAR_CHEAT, "Debugging cvar that changes the playback rate of all new sounds.")
 
cvar_t snd_ignoregamespeed = CVARFD( "snd_ignoregamespeed", "0", 0, "When set, allows sounds to desynchronise with game time or demo speeds.")
 
cvar_t snd_ignorecueloops = CVARD( "snd_ignorecueloops", "0", "Ignores cue commands in wav files, for q3 compat.")
 
cvar_t snd_linearresample
 
cvar_t snd_linearresample_stream
 
cvar_t snd_mixerthread
 
cvar_t snd_device
 
cvar_t snd_device_opts = CVARFD( "_s_device_opts", "", CVAR_NOSET|CVAR_NOSAVE, "The possible audio output devices, in \"value\" \"description\" pairs, for gamecode to read.")
 
cvar_t snd_voip_capturedevice = CVARF("cl_voip_capturedevice", "", CVAR_ARCHIVE)
 
cvar_t snd_voip_capturedevice_opts = CVARFD("_cl_voip_capturedevice_opts", "", CVAR_NOSET|CVAR_NOSAVE, "The possible audio capture devices, in \"value\" \"description\" pairs, for gamecode to read.")
 
int voipbutton
 
cvar_t snd_voip_send = CVARFD("cl_voip_send", "0", CVAR_ARCHIVE|CVAR_NOTFROMSERVER, "Sends voice-over-ip data to the server whenever it is set.\n0: only send voice if +voip is pressed.\n1: voice activation.\n2: constantly send.\n+4: Do not send to game, only to rtp sessions.")
 
cvar_t snd_voip_test = CVARD("cl_voip_test", "0", "If 1, enables you to hear your own voice directly, bypassing the server and thus without networking latency, but is fine for checking audio levels. Note that sv_voip_echo can be set if you want to include latency and packetloss considerations, but setting that cvar requires server admin access and is thus much harder to use.")
 
cvar_t snd_voip_vad_threshhold = CVARFD("cl_voip_vad_threshhold", "15", CVAR_ARCHIVE, "This is the threshhold for voice-activation-detection when sending voip data")
 
cvar_t snd_voip_vad_delay = CVARD("cl_voip_vad_delay", "0.3", "Keeps sending voice data for this many seconds after voice activation would normally stop")
 
cvar_t snd_voip_capturingvol = CVARAFD("cl_voip_capturingvol", "0.5", NULL, CVAR_ARCHIVE, "Volume multiplier applied while capturing, to avoid your audio from being heard by others. Does not affect game volume when others speak (minimum of cl_voip_capturingvol and cl_voip_ducking is used).")
 
cvar_t snd_voip_showmeter = CVARAFD("cl_voip_showmeter", "1", NULL, CVAR_ARCHIVE, "Shows your speech volume above the standard hud. 0=hide, 1=show when transmitting, 2=ignore voice-activation disable")
 
cvar_t snd_voip_play = CVARAFCD("cl_voip_play", "1", NULL, CVAR_ARCHIVE, S_Voip_Play_Callback, "Enables voip playback. Value is a volume scaler.")
 
cvar_t snd_voip_ducking = CVARAFD("cl_voip_ducking", "0.5", NULL, CVAR_ARCHIVE, "Scales game audio by this much when someone is talking to you. Does not affect your speaker volume when you speak (minimum of cl_voip_capturingvol and cl_voip_ducking is used).")
 
cvar_t snd_voip_micamp = CVARAFD("cl_voip_micamp", "2", NULL, CVAR_ARCHIVE, "Amplifies your microphone when using voip.")
 
cvar_t snd_voip_codec = CVARAFD("cl_voip_codec", "", NULL, CVAR_ARCHIVE, "0: speex(@11khz). 1: raw. 2: opus. 3: speex(@8khz). 4: speex(@16). 5:speex(@32). 6: pcma. 7: pcmu.")
 
cvar_t snd_voip_noisefilter = CVARAFD("cl_voip_noisefilter", "1", NULL, CVAR_ARCHIVE, "Enable the use of the noise cancelation filter.")
 
cvar_t snd_voip_autogain = CVARAFD("cl_voip_autogain", "0", NULL, CVAR_ARCHIVE, "Attempts to normalize your voice levels to a standard level. Useful for lazy people, but interferes with voice activation levels.")
 
cvar_t snd_voip_bitrate = CVARAFD("cl_voip_bitrate", "3000", NULL, CVAR_ARCHIVE, "For codecs with non-specific bitrates, this specifies the target bitrate to use.")
 
vfsfile_trawwritefile
 
voidmixermutex
 
static int request
 
static int static const opus_int16 * pcm
 
static int static const opus_int16 int frame_size
 
static int static const opus_int16 int unsigned char * data
 
static int static const opus_int16 int unsigned char opus_int32 max_data_bytes
 
static int static const unsigned char opus_int32 len
 
static int static const unsigned char opus_int32 opus_int16 int int decode_fec
 
static char * bytes
 
static char int max_len
 
static int voidptr
 
static spx_int16_tx
 
static spx_int16_tin
 
static spx_int16_t SpeexBits * bits
 
static SpeexBits spx_int16_tout
 
snd_capture_driver_t OPENAL_Capture
 
snd_capture_driver_t fte_weakstruct DSOUND_Capture
 
snd_capture_driver_t fte_weakstruct OSS_Capture
 
snd_capture_driver_t fte_weakstruct SDL_Capture
 
snd_capture_driver_tcapturedrivers []
 
sounddriver_t WASAPI_Output
 
sounddriver_t XAUDIO2_Output
 
sounddriver_t DSOUND_Output
 
sounddriver_t fte_weakstruct SDL_Output
 
sounddriver_t ALSA_Output
 
sounddriver_t Pulse_Output
 
sounddriver_t fte_weakstruct OSS_Output
 
sounddriver_t OPENAL_Output
 
sounddriver_t OPENAL_Output_Lame
 
sounddriver_t SBLASTER_Output
 
sounddriver_t WaveOut_Output
 
sounddriver_t fte_weakstruct MacOS_AudioOutput
 
sounddriver_t fte_weakstruct OSL_Output
 
sounddriver_t fte_weakstruct Droid_AudioOutput
 
sounddriver_t fte_weakstruct AHI_AudioOutput
 
sounddriver_t fte_weakstruct SNDIO_AudioOutput
 
struct sndreverbproperties_sreverbproperties
 
size_t numreverbproperties
 
streaming_t s_streamers [MAX_RAW_SOURCES]
 

Typedef Documentation

◆ SpeexMode

typedef struct SpeexMode SpeexMode

◆ SpeexPreprocessState

◆ spx_int16_t

typedef qint16_t spx_int16_t

Enumeration Type Documentation

◆ anonymous enum

anonymous enum
Enumerator
VOIP_SPEEX_OLD 
VOIP_RAW16 
VOIP_OPUS 
VOIP_SPEEX_NARROW 
VOIP_SPEEX_WIDE 
VOIP_SPEEX_ULTRAWIDE 
VOIP_PCMA 
VOIP_PCMU 
VOIP_INVALID 

Function Documentation

◆ NET_RTP_Active()

qboolean NET_RTP_Active ( void  )

◆ NET_RTP_Transmit()

qboolean NET_RTP_Transmit ( unsigned int  sequence,
unsigned int  timestamp,
const char *  codec,
char *  cdata,
int  clength 
)

◆ PCMA_Decode()

size_t PCMA_Decode ( short *  out,
unsigned char *  in,
size_t  samples 
)

◆ PCMA_Encode()

size_t PCMA_Encode ( unsigned char *  out,
size_t  outsize,
short *  in,
size_t  samples 
)

◆ PCMU_Decode()

size_t PCMU_Decode ( short *  out,
unsigned char *  in,
size_t  samples 
)

◆ PCMU_Encode()

size_t PCMU_Encode ( unsigned char *  out,
size_t  outsize,
short *  in,
size_t  samples 
)

◆ Q1BSP_LeafForPoint()

mleaf_t * Q1BSP_LeafForPoint ( model_t model,
vec3_t  p 
)

◆ S_AmbientOff()

void S_AmbientOff ( void  )

◆ S_AmbientOn()

void S_AmbientOn ( void  )

◆ S_ClearRaw()

void S_ClearRaw ( void  )

◆ S_Control_f()

void S_Control_f ( void  )

◆ S_DefaultSpeakerConfiguration()

void S_DefaultSpeakerConfiguration ( soundcardinfo_t sc)

◆ S_DoRestart()

void S_DoRestart ( qboolean  onlyifneeded)

◆ S_EnumerateDevices()

void S_EnumerateDevices ( void  )

◆ S_ExtraUpdate()

void S_ExtraUpdate ( void  )

◆ S_FindName()

sfx_t * S_FindName ( const char *  name,
qboolean  create,
qboolean  syspath 
)

◆ S_GetChannelLevel()

float S_GetChannelLevel ( int  entnum,
int  entchannel 
)

◆ S_GetListenerInfo()

void S_GetListenerInfo ( int  seat,
float *  origin,
float *  forward,
float *  right,
float *  up 
)

◆ S_GetMixerTime()

int S_GetMixerTime ( soundcardinfo_t sc)

◆ S_GetMusicInfo()

qboolean S_GetMusicInfo ( int  musicchannel,
float *  time,
float *  duration,
char *  title,
size_t  titlesize 
)

◆ S_GetSoundTime()

float S_GetSoundTime ( int  entnum,
int  entchannel 
)

◆ S_HaveOutput()

qboolean S_HaveOutput ( void  )

◆ S_Init()

void S_Init ( void  )

◆ S_IsPlayingSomewhere()

qboolean S_IsPlayingSomewhere ( sfx_t s)

◆ S_LocalSound()

void S_LocalSound ( const char *  sound)

◆ S_LocalSound2()

void S_LocalSound2 ( const char *  sound,
int  channel,
float  volume 
)

◆ S_LockMixer()

void S_LockMixer ( void  )

◆ S_MixerThread()

void S_MixerThread ( soundcardinfo_t sc)

◆ S_Music_Clear()

void S_Music_Clear ( sfx_t onlyifsample)

◆ S_Music_Playing()

qboolean S_Music_Playing ( int  musicchannel)

◆ S_Music_Seek()

void S_Music_Seek ( float  time)

◆ S_PrecacheSound2()

sfx_t * S_PrecacheSound2 ( const char *  name,
qboolean  syspath 
)

◆ S_Purge()

void S_Purge ( qboolean  retaintouched)

◆ S_Raw_Ended()

void QDECL S_Raw_Ended ( sfx_t sfx)

◆ S_Raw_Locate()

sfxcache_t *QDECL S_Raw_Locate ( sfx_t sfx,
sfxcache_t buf,
ssamplepos_t  start,
int  length 
)

◆ S_Raw_Purge()

void QDECL S_Raw_Purge ( sfx_t sfx)

◆ S_RawAudio()

void S_RawAudio ( int  sourceid,
qbyte data,
int  speed,
int  samples,
int  channels,
qaudiofmt_t  format,
float  volume 
)

◆ S_ResetFailedLoad()

void S_ResetFailedLoad ( void  )

◆ S_Restart_f()

void S_Restart_f ( void  )

◆ S_SetupDeviceSeat()

soundcardinfo_t * S_SetupDeviceSeat ( char *  driver,
char *  device,
int  seat 
)

◆ S_Shutdown()

void S_Shutdown ( qboolean  final)

◆ S_ShutdownCard()

void S_ShutdownCard ( soundcardinfo_t sc)

◆ S_SoundInfo_f()

void S_SoundInfo_f ( void  )

◆ S_StartSound()

void S_StartSound ( int  entnum,
int  entchannel,
sfx_t sfx,
vec3_t  origin,
vec3_t  velocity,
float  fvol,
float  attenuation,
float  timeofs,
float  pitchadj,
unsigned int  flags 
)

◆ S_Startup()

void S_Startup ( void  )

◆ S_StaticSound()

void S_StaticSound ( sfx_t sfx,
vec3_t  origin,
float  vol,
float  attenuation 
)

◆ S_StopAllSounds()

void S_StopAllSounds ( qboolean  clear)

◆ S_StopSound()

void S_StopSound ( int  entnum,
int  entchannel 
)

◆ S_UnlockMixer()

void S_UnlockMixer ( void  )

◆ S_UntouchAll()

void S_UntouchAll ( void  )

◆ S_Update()

void S_Update ( void  )

◆ S_UpdateAmbientSounds()

void S_UpdateAmbientSounds ( soundcardinfo_t sc)

◆ S_UpdateListener()

void S_UpdateListener ( int  seat,
int  entnum,
vec3_t  origin,
vec3_t  forward,
vec3_t  right,
vec3_t  up,
size_t  reverbtype,
vec3_t  velocity 
)

◆ S_UpdateReverb()

qboolean S_UpdateReverb ( size_t  slot,
void reverb,
size_t  reverbsize 
)

◆ S_UpdateSound()

float S_UpdateSound ( int  entnum,
int  entchannel,
sfx_t sfx,
vec3_t  origin,
vec3_t  velocity,
float  fvol,
float  attenuation,
float  timeofs,
float  pitchadj,
unsigned int  flags 
)

◆ S_Voip_ClientLoudness()

int S_Voip_ClientLoudness ( unsigned int  plno)

◆ S_Voip_Decode()

void S_Voip_Decode ( unsigned int  sender,
unsigned int  codec,
unsigned int  gen,
unsigned char  seq,
unsigned int  bytes,
unsigned char *  data 
)

◆ S_Voip_Ignore()

void S_Voip_Ignore ( unsigned int  slot,
qboolean  ignore 
)

◆ S_Voip_Init()

void S_Voip_Init ( void  )

◆ S_Voip_Loudness()

int S_Voip_Loudness ( qboolean  ignorevad)

◆ S_Voip_MapChange()

void S_Voip_MapChange ( void  )

◆ S_Voip_Parse()

void S_Voip_Parse ( void  )

◆ S_Voip_RTP_CodecOkay()

qboolean S_Voip_RTP_CodecOkay ( const char *  codec)

◆ S_Voip_RTP_Parse()

void S_Voip_RTP_Parse ( unsigned short  sequence,
char *  codec,
unsigned char *  data,
unsigned int  datalen 
)

◆ S_Voip_Speaking()

qboolean S_Voip_Speaking ( unsigned int  plno)

◆ S_Voip_Transmit()

void S_Voip_Transmit ( unsigned char  clc,
sizebuf_t buf 
)

◆ SND_PickChannel()

channel_t * SND_PickChannel ( soundcardinfo_t sc,
int  entnum,
int  entchannel 
)

Variable Documentation

◆ _snd_mixahead

cvar_t _snd_mixahead
Initial value:
= CVARAFD( "s_mixahead", "0.1",
"_snd_mixahead", CVAR_ARCHIVE, "Specifies how many seconds to prebuffer audio. Lower values give less latency, but might result in crackling. Different hardware/drivers have different tolerances, and this setting may be ignored completely where drivers are expected to provide their own tolerances.")

◆ AHI_AudioOutput

sounddriver_t fte_weakstruct AHI_AudioOutput

◆ ALSA_Output

sounddriver_t ALSA_Output
extern

◆ ambient_fade

cvar_t ambient_fade
Initial value:
= CVARAF( "s_ambientfade", "100",
"ambient_fade", CVAR_ARCHIVE)

◆ ambient_level

cvar_t ambient_level
Initial value:
= CVARAFD( "s_ambientlevel", "0.3",
"ambient_level", CVAR_ARCHIVE,
"This controls the volume levels of automatic area-based sounds (like water or sky), and is quite annoying. If you're playing deathmatch you'll definitely want this OFF.")

◆ ambient_sfx

sfx_t* ambient_sfx[NUM_AMBIENTS]

◆ bgmvolume

cvar_t bgmvolume
Initial value:
= CVARAFD( "musicvolume", "0.3", "bgmvolume", CVAR_ARCHIVE,
"Volume level for background music.")

◆ bits

SpeexBits* bits

◆ bytes

static char * bytes

◆ capturebuf

unsigned char capturebuf[32768]

◆ capturedrivers

snd_capture_driver_t* capturedrivers[]
Initial value:
=
{
#ifdef _WIN32
#endif
#ifdef AVAIL_OPENAL
#endif
NULL
}
snd_capture_driver_t OPENAL_Capture
Definition: snd_al.c:1992
snd_capture_driver_t fte_weakstruct SDL_Capture
Definition: snd_dma.c:575
snd_capture_driver_t fte_weakstruct OSS_Capture
Definition: snd_dma.c:574
snd_capture_driver_t fte_weakstruct DSOUND_Capture
Definition: snd_dma.c:572

◆ capturepos

unsigned int capturepos

◆ cdriver

◆ cdriverctx

void* cdriverctx

◆ csqc_world

world_t csqc_world
extern

◆ curbitrate

int curbitrate

◆ curframesize

int curframesize

◆ cursamplerate

int cursamplerate

◆ data

int static const unsigned char* data

◆ decbits

SpeexBits decbits[MAX_CLIENTS]

◆ deccodec

unsigned char deccodec[MAX_CLIENTS]

◆ decframesize

unsigned int decframesize[MAX_CLIENTS]

◆ decgen

unsigned char decgen[MAX_CLIENTS]

◆ declevel

float declevel[MAX_CLIENTS]

◆ decode_fec

int static const unsigned char opus_int32 opus_int16 int int decode_fec

◆ decoder

void* decoder[MAX_CLIENTS]

◆ decsamplerate

unsigned int decsamplerate[MAX_CLIENTS]

◆ decseq

unsigned char decseq[MAX_CLIENTS]

◆ desired_bits

int desired_bits = 16

◆ Droid_AudioOutput

sounddriver_t fte_weakstruct Droid_AudioOutput

◆ DSOUND_Capture

snd_capture_driver_t fte_weakstruct DSOUND_Capture

◆ DSOUND_Output

sounddriver_t DSOUND_Output
extern

◆ dumps

unsigned int dumps

◆ encbits

SpeexBits encbits

◆ enccodec

unsigned char enccodec

◆ encframesize

unsigned int encframesize

◆ encoder

void* encoder

◆ encsamplerate

unsigned int encsamplerate

◆ encsequence

unsigned int encsequence

◆ enctimestamp

unsigned int enctimestamp

◆ frame_size

static int static const unsigned char opus_int32 opus_int16 int frame_size

◆ generation

unsigned int generation

◆ in

◆ inited

qboolean inited

◆ keeps

unsigned int keeps

◆ known_sfx

sfx_t* known_sfx

◆ lastspoke

float lastspoke[MAX_CLIENTS]

◆ lastspoke_any

float lastspoke_any

◆ len

char int len

◆ loaded

qboolean loaded

◆ MacOS_AudioOutput

sounddriver_t fte_weakstruct MacOS_AudioOutput

◆ mastervolume

cvar_t mastervolume = CVARFD( "mastervolume", "1", CVAR_ARCHIVE, "Additional multiplier for all other sounds.")

◆ max_data_bytes

int static const opus_int16 int unsigned char opus_int32 max_data_bytes

◆ max_len

char int max_len

◆ mixermutex

void* mixermutex

◆ modenb

const SpeexMode* modenb

◆ modeuwb

const SpeexMode* modeuwb

◆ modewb

const SpeexMode* modewb

◆ nosound

cvar_t nosound
Initial value:
= CVARFD( "nosound", "0", CVAR_ARCHIVE,
"Disable all sound from the engine. Cannot be overriden by configs or anything if set via the -nosound commandline argument.")

◆ num_sfx

int num_sfx

◆ numreverbproperties

size_t numreverbproperties

◆ OPENAL_Capture

snd_capture_driver_t OPENAL_Capture
extern

◆ OPENAL_Output

sounddriver_t OPENAL_Output
extern

◆ OPENAL_Output_Lame

sounddriver_t OPENAL_Output_Lame
extern

◆ 

struct { ... } opus

◆ opuslib

dllhandle_t* opuslib

◆ OSL_Output

sounddriver_t fte_weakstruct OSL_Output

◆ OSS_Capture

snd_capture_driver_t fte_weakstruct OSS_Capture

◆ OSS_Output

sounddriver_t fte_weakstruct OSS_Output

◆ out

SpeexBits spx_int16_t* out

◆ pcm

static int static const unsigned char opus_int32 opus_int16 * pcm

◆ preproc

◆ ptr

static int void * ptr

◆ Pulse_Output

sounddriver_t Pulse_Output
extern

◆ rawwritefile

vfsfile_t* rawwritefile
extern

◆ request

static int request

◆ reverbproperties

struct sndreverbproperties_s* reverbproperties

◆ s_streamers

streaming_t s_streamers[MAX_RAW_SOURCES]

◆ SBLASTER_Output

sounddriver_t SBLASTER_Output
extern

◆ SDL_Capture

snd_capture_driver_t fte_weakstruct SDL_Capture

◆ SDL_Output

sounddriver_t fte_weakstruct SDL_Output

◆ snd_blocked

int snd_blocked = 0

◆ snd_buffersize

cvar_t snd_buffersize
Initial value:
= CVARAF( "s_buffersize", "0",
"snd_buffersize", 0)

◆ snd_device

cvar_t snd_device
Initial value:
= CVARAFD( "s_device", "",
"snd_device", CVAR_ARCHIVE, "This is the sound device(s) to use, in the form of driver:device.\nIf desired, multiple devices can be listed in space-seperated (quoted) tokens. _s_device_opts contains any enumerated options.\nIn all seriousness, use the menu to set this if you wish to keep your hair.")

◆ snd_device_opts

cvar_t snd_device_opts = CVARFD( "_s_device_opts", "", CVAR_NOSET|CVAR_NOSAVE, "The possible audio output devices, in \"value\" \"description\" pairs, for gamecode to read.")

◆ snd_doppler

cvar_t snd_doppler
Initial value:
= CVARAFD( "s_doppler", "0",
"snd_doppler", CVAR_ARCHIVE,
"Enables doppler, with a multiplier for the scale.")

◆ snd_doppler_max

cvar_t snd_doppler_max
Initial value:
= CVARAFD( "s_doppler_max", "2",
"snd_doppler_max", CVAR_ARCHIVE,
"Highest allowed doppler scale, to avoid things getting too weird.")

◆ snd_doppler_min

cvar_t snd_doppler_min
Initial value:
= CVARAFD( "s_doppler_min", "0.5",
"snd_doppler_min", CVAR_ARCHIVE,
"Slowest allowed doppler scale.")

◆ snd_eax

cvar_t snd_eax
Initial value:
= CVARAF( "s_eax", "0",
"snd_eax", 0)

◆ snd_ignorecueloops

cvar_t snd_ignorecueloops = CVARD( "snd_ignorecueloops", "0", "Ignores cue commands in wav files, for q3 compat.")

◆ snd_ignoregamespeed

cvar_t snd_ignoregamespeed = CVARFD( "snd_ignoregamespeed", "0", 0, "When set, allows sounds to desynchronise with game time or demo speeds.")

◆ snd_inactive

cvar_t snd_inactive
Initial value:
= CVARAFD( "s_inactive", "1",
"snd_inactive", CVAR_ARCHIVE,
"Play sound while application is inactive (ie: tabbed out). Needs a snd_restart if changed."
)

◆ snd_initialized

qboolean snd_initialized = false

◆ snd_khz

cvar_t snd_khz
Initial value:
= CVARAFD( "s_khz", DEFAULT_SND_KHZ,
"snd_khz", CVAR_ARCHIVE, "Sound speed, in kilohertz. Common values are 11, 22, 44, 48. Values above 1000 are explicitly in hertz.")

◆ snd_leftisright

cvar_t snd_leftisright
Initial value:
= CVARAF( "s_swapstereo", "0",
"snd_leftisright", CVAR_ARCHIVE)

◆ snd_linearresample

cvar_t snd_linearresample
Initial value:
= CVARAF( "s_linearresample", "1",
"snd_linearresample", 0)

◆ snd_linearresample_stream

cvar_t snd_linearresample_stream
Initial value:
= CVARAF( "s_linearresample_stream", "0",
"snd_linearresample_stream", 0)

◆ snd_loadas8bit

cvar_t snd_loadas8bit
Initial value:
= CVARAFD( "s_loadas8bit", "0",
"loadas8bit", CVAR_ARCHIVE,
"Downsample sounds on load as lower quality 8-bit sound, to save memory.")

◆ snd_loadasstereo

cvar_t snd_loadasstereo
Initial value:
= CVARD( "snd_loadasstereo", "1",
"Force mono sounds to load as if stereo ones, to waste memory. Used to work around stupid browser bugs.")

◆ snd_mixerthread

cvar_t snd_mixerthread
Initial value:
= CVARAD( "s_mixerthread", "1",
"snd_mixerthread", "When enabled sound mixing will be run on a separate thread. Currently supported only by directsound. Other drivers may unconditionally thread audio. Set to 0 only if you have issues.")

◆ snd_noextraupdate

cvar_t snd_noextraupdate
Initial value:
= CVARAF( "s_noextraupdate", "0",
"snd_noextraupdate", 0)

◆ snd_nominaldistance

cvar_t snd_nominaldistance = CVARAFD("s_nominaldistance", "1000", "snd_soundradius", CVAR_CHEAT, "This cvar defines how far an attenuation=1 sound can be heard.")

◆ snd_playbackrate

cvar_t snd_playbackrate = CVARFD( "snd_playbackrate", "1", CVAR_CHEAT, "Debugging cvar that changes the playback rate of all new sounds.")

◆ snd_playersoundvolume

cvar_t snd_playersoundvolume
Initial value:
= CVARAFD( "s_localvolume", "1",
"snd_localvolume", CVAR_ARCHIVE,
"Sound level for sounds local or originating from the player such as firing and pain sounds.")

◆ snd_precache

cvar_t snd_precache
Initial value:
= CVARAF( "s_precache", "1",
"precache", 0)

◆ snd_samplebits

cvar_t snd_samplebits
Initial value:
= CVARAF( "s_bits", "16",
"snd_samplebits", CVAR_ARCHIVE)

◆ snd_show

cvar_t snd_show
Initial value:
= CVARAF( "s_show", "0",
"snd_show", 0)

◆ snd_speakers

cvar_t snd_speakers
Initial value:
= CVARAFD( "s_numspeakers", "2",
"snd_numspeakers", CVAR_ARCHIVE, "Number of hardware audio channels to use. "FULLENGINENAME" supports up to 6.")

◆ snd_speed

int snd_speed

◆ snd_voip_autogain

cvar_t snd_voip_autogain = CVARAFD("cl_voip_autogain", "0", NULL, CVAR_ARCHIVE, "Attempts to normalize your voice levels to a standard level. Useful for lazy people, but interferes with voice activation levels.")

◆ snd_voip_bitrate

cvar_t snd_voip_bitrate = CVARAFD("cl_voip_bitrate", "3000", NULL, CVAR_ARCHIVE, "For codecs with non-specific bitrates, this specifies the target bitrate to use.")

◆ snd_voip_capturedevice

cvar_t snd_voip_capturedevice = CVARF("cl_voip_capturedevice", "", CVAR_ARCHIVE)

◆ snd_voip_capturedevice_opts

cvar_t snd_voip_capturedevice_opts = CVARFD("_cl_voip_capturedevice_opts", "", CVAR_NOSET|CVAR_NOSAVE, "The possible audio capture devices, in \"value\" \"description\" pairs, for gamecode to read.")

◆ snd_voip_capturingvol

cvar_t snd_voip_capturingvol = CVARAFD("cl_voip_capturingvol", "0.5", NULL, CVAR_ARCHIVE, "Volume multiplier applied while capturing, to avoid your audio from being heard by others. Does not affect game volume when others speak (minimum of cl_voip_capturingvol and cl_voip_ducking is used).")

◆ snd_voip_codec

cvar_t snd_voip_codec = CVARAFD("cl_voip_codec", "", NULL, CVAR_ARCHIVE, "0: speex(@11khz). 1: raw. 2: opus. 3: speex(@8khz). 4: speex(@16). 5:speex(@32). 6: pcma. 7: pcmu.")

◆ snd_voip_ducking

cvar_t snd_voip_ducking = CVARAFD("cl_voip_ducking", "0.5", NULL, CVAR_ARCHIVE, "Scales game audio by this much when someone is talking to you. Does not affect your speaker volume when you speak (minimum of cl_voip_capturingvol and cl_voip_ducking is used).")

◆ snd_voip_micamp

cvar_t snd_voip_micamp = CVARAFD("cl_voip_micamp", "2", NULL, CVAR_ARCHIVE, "Amplifies your microphone when using voip.")

◆ snd_voip_noisefilter

cvar_t snd_voip_noisefilter = CVARAFD("cl_voip_noisefilter", "1", NULL, CVAR_ARCHIVE, "Enable the use of the noise cancelation filter.")

◆ snd_voip_play

cvar_t snd_voip_play = CVARAFCD("cl_voip_play", "1", NULL, CVAR_ARCHIVE, S_Voip_Play_Callback, "Enables voip playback. Value is a volume scaler.")

◆ snd_voip_send

cvar_t snd_voip_send = CVARFD("cl_voip_send", "0", CVAR_ARCHIVE|CVAR_NOTFROMSERVER, "Sends voice-over-ip data to the server whenever it is set.\n0: only send voice if +voip is pressed.\n1: voice activation.\n2: constantly send.\n+4: Do not send to game, only to rtp sessions.")

◆ snd_voip_showmeter

cvar_t snd_voip_showmeter = CVARAFD("cl_voip_showmeter", "1", NULL, CVAR_ARCHIVE, "Shows your speech volume above the standard hud. 0=hide, 1=show when transmitting, 2=ignore voice-activation disable")

◆ snd_voip_test

cvar_t snd_voip_test = CVARD("cl_voip_test", "0", "If 1, enables you to hear your own voice directly, bypassing the server and thus without networking latency, but is fine for checking audio levels. Note that sv_voip_echo can be set if you want to include latency and packetloss considerations, but setting that cvar requires server admin access and is thus much harder to use.")

◆ snd_voip_vad_delay

cvar_t snd_voip_vad_delay = CVARD("cl_voip_vad_delay", "0.3", "Keeps sending voice data for this many seconds after voice activation would normally stop")

◆ snd_voip_vad_threshhold

cvar_t snd_voip_vad_threshhold = CVARFD("cl_voip_vad_threshhold", "15", CVAR_ARCHIVE, "This is the threshhold for voice-activation-detection when sending voip data")

◆ sndcardinfo

soundcardinfo_t* sndcardinfo

◆ SNDIO_AudioOutput

sounddriver_t fte_weakstruct SNDIO_AudioOutput

◆ sound_started

int sound_started =0

◆ 

struct { ... } speex

◆ 

struct { ... } speexdsp

◆ speexdsplib

dllhandle_t* speexdsplib

◆ speexlib

dllhandle_t* speexlib

◆ voicevolumemod

float voicevolumemod = 1

◆ voipbutton

int voipbutton

◆ voiplevel

float voiplevel

◆ volume

cvar_t volume
Initial value:
= CVARAFD( "volume", "0.7", "s_volume",CVAR_ARCHIVE,
"Volume level for game sounds (does not affect music, voice, or cinematics).")

◆ wantsend

qboolean wantsend

◆ WASAPI_Output

sounddriver_t WASAPI_Output
extern

◆ WaveOut_Output

sounddriver_t WaveOut_Output
extern

◆ x

◆ XAUDIO2_Output

sounddriver_t XAUDIO2_Output
extern