Sound: Difference between revisions
From Unreal Tournament 2004 MiA Wiki
No edit summary |
a lot |
||
| Line 23: | Line 23: | ||
* <code>period_size</code> and <code>periods</code> (latency tuning) | * <code>period_size</code> and <code>periods</code> (latency tuning) | ||
==== For Windows ==== | ==== Presets ==== | ||
===== Stereo speakers (2.0 or 2.1) ===== | |||
Windows<syntaxhighlight lang="ini"> | |||
## CONFIG - Default | |||
## General stuff | |||
## | |||
[General] | |||
## stereo-mode: | |||
# Specifies if stereo output is treated as being headphones or speakers. With | |||
# headphones, HRTF or crossfeed filters may be used for better audio quality. | |||
# Valid settings are auto, speakers, and headphones. | |||
stereo-mode=speakers | |||
# Sets the default output channel configuration. If left unspecified, one will | |||
# try to be detected from the system, with a fallback to stereo. The available | |||
# values are: mono, stereo, quad, surround51, surround61, surround71, | |||
# surround714, 3d71, ambi1, ambi2, ambi3, ambi4. Note that the ambi* | |||
# configurations output ambisonic channels of the given order (using ACN | |||
# ordering and SN3D normalization by default), which need to be decoded to | |||
# play correctly on speakers. | |||
channels=stereo | |||
## stereo-encoding: | |||
# Specifies the default encoding method for stereo output. Valid values are: | |||
# basic - Standard amplitude panning (aka pair-wise, stereo pair, etc) between | |||
# -30 and +30 degrees. | |||
# uhj - Creates a stereo-compatible two-channel UHJ mix, which encodes some | |||
# continuous surround sound information into stereo output that can be | |||
# decoded with a surround sound receiver. | |||
# tsme - Creates a stereo-compatible two-channel surround matrix encoded mix, | |||
# which encodes some discrete surround sound and height information | |||
# into the stereo output that can be decoded with a surround sound | |||
# receiver. | |||
# hrtf - Uses filters to provide better spatialization of sounds while using | |||
# stereo headphones. | |||
# If crossfeed filters are used, basic stereo mixing is used. | |||
stereo-encoding=basic | |||
## hrtf-mode: | |||
# Specifies the rendering mode for HRTF processing. Setting the mode to full | |||
# (default) applies a unique HRIR filter to each source given its relative | |||
# location, providing the clearest directional response at the cost of the | |||
# highest CPU usage. Setting the mode to ambi1, ambi2, ambi3, or ambi4 will | |||
# instead mix to an ambisonic buffer of the given order, then decode that | |||
# buffer with HRTF filters. Ambi1 has the lowest CPU usage, replacing the per- | |||
# source HRIR filter for a simple 4-channel panning mix, but retains full 3D | |||
# placement at the cost of a more diffuse response. Higher ambisonic orders | |||
# increasingly improve the directional clarity, at the cost of more CPU usage | |||
# (still less than "full", given some number of active sources). | |||
#hrtf-mode=full | |||
## resampler: (global) | |||
# Selects the default resampler used when mixing sources. Valid values are: | |||
# point - nearest sample, no interpolation | |||
# linear - extrapolates samples using a linear slope between samples | |||
# spline - extrapolates samples using a Catmull-Rom spline | |||
# gaussian - extrapolates samples using a 4-point Gaussian filter | |||
# bsinc12 - extrapolates samples using a band-limited Sinc filter (varying between 12 and 24 points, with anti-aliasing) | |||
# fast_bsinc12 - same as bsinc12, except without interpolation between down-sampling scales | |||
# bsinc24 - extrapolates samples using a band-limited Sinc filter (varying between 24 and 48 points, with anti-aliasing) | |||
# fast_bsinc24 - same as bsinc24, except without interpolation between down-sampling scales | |||
# bsinc48 - extrapolates samples using a band-limited Sinc filter (48 points, with anti-aliasing) | |||
# fast_bsinc48 - same as bsinc48, except without interpolation between down-sampling scales | |||
resampler=spline | |||
## period_size: | |||
# Sets the update period size, in sample frames. This is the number of frames | |||
# needed for each mixing update. Acceptable values range between 64 and 8192. | |||
# If left unspecified it will default to 512 sample frames (~10.7ms). | |||
period_size=512 | |||
## periods: | |||
# Sets the number of update periods. Higher values create a larger mix ahead, | |||
# which helps protect against skips when the CPU is under load, but increases | |||
# the delay between a sound getting mixed and being heard. Acceptable values | |||
# range between 2 and 16. | |||
periods=3 | |||
## sources: | |||
# Sets the maximum number of allocatable sources. Lower values may help for | |||
# systems with apps that try to play more sounds than the CPU can handle. | |||
sources=256 | |||
## slots: | |||
# Sets the maximum number of Auxiliary Effect Slots an app can create. A slot | |||
# can use a non-negligible amount of CPU time if an effect is set on it even | |||
# if no sources are feeding it, so this may help when apps use more than the | |||
# system can handle. | |||
slots=64 | |||
## front-stablizer: | |||
# Applies filters to "stablize" front sound imaging. A psychoacoustic method | |||
# is used to generate a front-center channel signal from the front-left and | |||
# front-right channels, improving the front response by reducing the combing | |||
# artifacts and phase errors. Consequently, it will only work with channel | |||
# configurations that include front-left, front-right, and front-center. | |||
#front-stablizer=false | |||
## volume-adjust: | |||
# A global volume adjustment for source output, expressed in decibels. The | |||
# value is logarithmic, so +6 will be a scale of (approximately) 2x, +12 will | |||
# be a scale of 4x, etc. Similarly, -6 will be x1/2, and -12 is about x1/4. A | |||
# value of 0 means no change. | |||
#volume-adjust=0 | |||
## cf_level: | |||
# Sets the crossfeed level for stereo output. Valid values are: | |||
# 0 - No crossfeed | |||
# 1 - Low crossfeed | |||
# 2 - Middle crossfeed | |||
# 3 - High crossfeed (virtual speakers are closer to itself) | |||
# 4 - Low easy crossfeed | |||
# 5 - Middle easy crossfeed | |||
# 6 - High easy crossfeed | |||
# Users of headphones may want to try various settings. Has no effect on non- | |||
# stereo modes. | |||
#cf_level=0 | |||
## | |||
## Ambisonic decoder stuff | |||
## | |||
[decoder] | |||
## hq-mode: | |||
# Enables a high-quality ambisonic decoder. This mode is capable of frequency- | |||
# dependent processing, creating a better reproduction of 3D sound rendering | |||
# over surround sound speakers. | |||
#hq-mode=true | |||
## distance-comp: | |||
# Enables compensation for the speakers' relative distances to the listener. | |||
# This applies the necessary delays and attenuation to make the speakers | |||
# behave as though they are all equidistant, which is important for proper | |||
# playback of 3D sound rendering. Requires the proper distances to be | |||
# specified in the decoder configuration file. | |||
#distance-comp=true | |||
## nfc: | |||
# Enables near-field control filters. This simulates and compensates for low- | |||
# frequency effects caused by the curvature of nearby sound-waves, which | |||
# creates a more realistic perception of sound distance with surround sound | |||
# output. Note that the effect may be stronger or weaker than intended if the | |||
# application doesn't use or specify an appropriate unit scale, or if | |||
# incorrect speaker distances are set. For HRTF output, hrtf-mode must be set | |||
# to one of the ambi* values for this to function. | |||
#nfc=false | |||
## speaker-dist: | |||
# Specifies the speaker distance in meters, used by the near-field control | |||
# filters with surround sound output. For ambisonic output modes, this value | |||
# is the basis for the NFC-HOA Reference Delay parameter (calculated as | |||
# delay_seconds=speaker_dist/343.3). This value is not used when a decoder | |||
# configuration is set for the output mode (since they specify the per-speaker | |||
# distances, overriding this setting), or when the NFC filters are off. Valid | |||
# values range from 0.1 to 10. | |||
#speaker-dist=1 | |||
## | |||
## Reverb effect stuff (includes EAX reverb) | |||
## | |||
[reverb] | |||
## boost: (global) | |||
# A global amplification for reverb output, expressed in decibels. The value | |||
# is logarithmic, so +6 will be a scale of (approximately) 2x, +12 will be a | |||
# scale of 4x, etc. Similarly, -6 will be about half, and -12 about 1/4th. A | |||
# value of 0 means no change. | |||
boost=0 | |||
## | |||
## WASAPI backend stuff | |||
## | |||
[wasapi] | |||
## spatial-api: | |||
# Specifies whether to use a Spatial Audio stream for playback. This may | |||
# provide expanded capabilities for surround sound and with-height speaker | |||
# configurations. Very experimental. | |||
#spatial-api=false | |||
## exclusive-mode: | |||
# Enables Exlusive mode for playback devices. This uses the device directly, | |||
# allowing lower latencies but prevents the device from being used multiple | |||
# times simultaneously. Ignores the periods setting when enabled, as WASAPI | |||
# automatically sets a buffer size based on the period size. | |||
#exclusive-mode=true | |||
## allow-resampler: | |||
# Specifies whether to allow an extra resampler pass on the output. Enabling | |||
# this will allow the playback device to be set to a different sample rate | |||
# than the actual output can accept, causing the backend to apply its own | |||
# resampling pass after OpenAL Soft mixes the sources and processes effects | |||
# for output. | |||
allow-resampler=true | |||
## | |||
## DirectSound backend stuff | |||
## | |||
[dsound] | |||
## | |||
## Windows Multimedia backend stuff | |||
## | |||
[winmm] | |||
## | |||
## EAX extensions stuff | |||
## | |||
[eax] | |||
## enable: (global) | |||
# Sets whether to enable EAX extensions or not. | |||
enable=true | |||
</syntaxhighlight>Linux<syntaxhighlight> | |||
## CONFIG - Stereo Speakers | |||
## General stuff | |||
## | |||
[General] | |||
## stereo-mode: | |||
# Specifies if stereo output is treated as being headphones or speakers. With | |||
# headphones, HRTF or crossfeed filters may be used for better audio quality. | |||
# Valid settings are auto, speakers, and headphones. | |||
stereo-mode=speakers | |||
# Sets the default output channel configuration. If left unspecified, one will | |||
# try to be detected from the system, with a fallback to stereo. The available | |||
# values are: mono, stereo, quad, surround51, surround61, surround71, | |||
# surround714, 3d71, ambi1, ambi2, ambi3, ambi4. Note that the ambi* | |||
# configurations output ambisonic channels of the given order (using ACN | |||
# ordering and SN3D normalization by default), which need to be decoded to | |||
# play correctly on speakers. | |||
channels=stereo | |||
## stereo-encoding: | |||
# Specifies the default encoding method for stereo output. Valid values are: | |||
# basic - Standard amplitude panning (aka pair-wise, stereo pair, etc) between | |||
# -30 and +30 degrees. | |||
# uhj - Creates a stereo-compatible two-channel UHJ mix, which encodes some | |||
# continuous surround sound information into stereo output that can be | |||
# decoded with a surround sound receiver. | |||
# tsme - Creates a stereo-compatible two-channel surround matrix encoded mix, | |||
# which encodes some discrete surround sound and height information | |||
# into the stereo output that can be decoded with a surround sound | |||
# receiver. | |||
# hrtf - Uses filters to provide better spatialization of sounds while using | |||
# stereo headphones. | |||
# If crossfeed filters are used, basic stereo mixing is used. | |||
stereo-encoding=basic | |||
## hrtf-mode: | |||
# Specifies the rendering mode for HRTF processing. Setting the mode to full | |||
# (default) applies a unique HRIR filter to each source given its relative | |||
# location, providing the clearest directional response at the cost of the | |||
# highest CPU usage. Setting the mode to ambi1, ambi2, ambi3, or ambi4 will | |||
# instead mix to an ambisonic buffer of the given order, then decode that | |||
# buffer with HRTF filters. Ambi1 has the lowest CPU usage, replacing the per- | |||
# source HRIR filter for a simple 4-channel panning mix, but retains full 3D | |||
# placement at the cost of a more diffuse response. Higher ambisonic orders | |||
# increasingly improve the directional clarity, at the cost of more CPU usage | |||
# (still less than "full", given some number of active sources). | |||
#hrtf-mode=full | |||
## resampler: (global) | |||
# Selects the default resampler used when mixing sources. Valid values are: | |||
# point - nearest sample, no interpolation | |||
# linear - extrapolates samples using a linear slope between samples | |||
# spline - extrapolates samples using a Catmull-Rom spline | |||
# gaussian - extrapolates samples using a 4-point Gaussian filter | |||
# bsinc12 - extrapolates samples using a band-limited Sinc filter (varying between 12 and 24 points, with anti-aliasing) | |||
# fast_bsinc12 - same as bsinc12, except without interpolation between down-sampling scales | |||
# bsinc24 - extrapolates samples using a band-limited Sinc filter (varying between 24 and 48 points, with anti-aliasing) | |||
# fast_bsinc24 - same as bsinc24, except without interpolation between down-sampling scales | |||
# bsinc48 - extrapolates samples using a band-limited Sinc filter (48 points, with anti-aliasing) | |||
# fast_bsinc48 - same as bsinc48, except without interpolation between down-sampling scales | |||
resampler=spline | |||
## period_size: | |||
# Sets the update period size, in sample frames. This is the number of frames | |||
# needed for each mixing update. Acceptable values range between 64 and 8192. | |||
# If left unspecified it will default to 512 sample frames (~10.7ms). | |||
period_size=512 | |||
## periods: | |||
# Sets the number of update periods. Higher values create a larger mix ahead, | |||
# which helps protect against skips when the CPU is under load, but increases | |||
# the delay between a sound getting mixed and being heard. Acceptable values | |||
# range between 2 and 16. | |||
periods=3 | |||
## sources: | |||
# Sets the maximum number of allocatable sources. Lower values may help for | |||
# systems with apps that try to play more sounds than the CPU can handle. | |||
sources=256 | |||
## slots: | |||
# Sets the maximum number of Auxiliary Effect Slots an app can create. A slot | |||
# can use a non-negligible amount of CPU time if an effect is set on it even | |||
# if no sources are feeding it, so this may help when apps use more than the | |||
# system can handle. | |||
slots=64 | |||
## front-stablizer: | |||
# Applies filters to "stablize" front sound imaging. A psychoacoustic method | |||
# is used to generate a front-center channel signal from the front-left and | |||
# front-right channels, improving the front response by reducing the combing | |||
# artifacts and phase errors. Consequently, it will only work with channel | |||
# configurations that include front-left, front-right, and front-center. | |||
#front-stablizer=false | |||
## volume-adjust: | |||
# A global volume adjustment for source output, expressed in decibels. The | |||
# value is logarithmic, so +6 will be a scale of (approximately) 2x, +12 will | |||
# be a scale of 4x, etc. Similarly, -6 will be x1/2, and -12 is about x1/4. A | |||
# value of 0 means no change. | |||
#volume-adjust=0 | |||
## cf_level: | |||
# Sets the crossfeed level for stereo output. Valid values are: | |||
# 0 - No crossfeed | |||
# 1 - Low crossfeed | |||
# 2 - Middle crossfeed | |||
# 3 - High crossfeed (virtual speakers are closer to itself) | |||
# 4 - Low easy crossfeed | |||
# 5 - Middle easy crossfeed | |||
# 6 - High easy crossfeed | |||
# Users of headphones may want to try various settings. Has no effect on non- | |||
# stereo modes. | |||
#cf_level=0 | |||
## | |||
## Ambisonic decoder stuff | |||
## | |||
[decoder] | |||
## hq-mode: | |||
# Enables a high-quality ambisonic decoder. This mode is capable of frequency- | |||
# dependent processing, creating a better reproduction of 3D sound rendering | |||
# over surround sound speakers. | |||
#hq-mode=true | |||
## distance-comp: | |||
# Enables compensation for the speakers' relative distances to the listener. | |||
# This applies the necessary delays and attenuation to make the speakers | |||
# behave as though they are all equidistant, which is important for proper | |||
# playback of 3D sound rendering. Requires the proper distances to be | |||
# specified in the decoder configuration file. | |||
#distance-comp=true | |||
## nfc: | |||
# Enables near-field control filters. This simulates and compensates for low- | |||
# frequency effects caused by the curvature of nearby sound-waves, which | |||
# creates a more realistic perception of sound distance with surround sound | |||
# output. Note that the effect may be stronger or weaker than intended if the | |||
# application doesn't use or specify an appropriate unit scale, or if | |||
# incorrect speaker distances are set. For HRTF output, hrtf-mode must be set | |||
# to one of the ambi* values for this to function. | |||
#nfc=false | |||
## speaker-dist: | |||
# Specifies the speaker distance in meters, used by the near-field control | |||
# filters with surround sound output. For ambisonic output modes, this value | |||
# is the basis for the NFC-HOA Reference Delay parameter (calculated as | |||
# delay_seconds=speaker_dist/343.3). This value is not used when a decoder | |||
# configuration is set for the output mode (since they specify the per-speaker | |||
# distances, overriding this setting), or when the NFC filters are off. Valid | |||
# values range from 0.1 to 10. | |||
#speaker-dist=1 | |||
## | |||
## Reverb effect stuff (includes EAX reverb) | |||
## | |||
[reverb] | |||
## boost: (global) | |||
# A global amplification for reverb output, expressed in decibels. The value | |||
# is logarithmic, so +6 will be a scale of (approximately) 2x, +12 will be a | |||
# scale of 4x, etc. Similarly, -6 will be about half, and -12 about 1/4th. A | |||
# value of 0 means no change. | |||
boost=0 | |||
## | |||
## ALSA backend stuff | |||
## | |||
[alsa] | |||
## allow-resampler: | |||
# Specifies whether to allow ALSA's built-in resampler. Enabling this will | |||
# allow the playback device to be set to a different sample rate than the | |||
# actual output, causing ALSA to apply its own resampling pass after OpenAL | |||
# Soft resamples and mixes the sources and effects for output. | |||
allow-resampler=true | |||
## mmap: | |||
# Sets whether to try using mmap mode (helps reduce latencies and CPU | |||
# consumption). If mmap isn't available, it will automatically fall back to | |||
# non-mmap mode. True, yes, on, and non-0 values will attempt to use mmap. 0 | |||
# and anything else will force mmap off. | |||
mmap=true | |||
## | |||
## PipeWire backend stuff | |||
## | |||
[pipewire] | |||
## assume-audio: (global) | |||
# Causes the backend to succeed initialization even if PipeWire reports no | |||
# audio support. Currently, audio support is detected by the presence of audio | |||
# source or sink nodes, although this can cause false negatives in cases where | |||
# device availability during library initialization is spotty. Future versions | |||
# of PipeWire are expected to have a more robust method to test audio support, | |||
# but in the mean time this can be set to true to assume PipeWire has audio | |||
# support even when no nodes may be reported at initialization time. | |||
#assume-audio=false | |||
## rt-mix: | |||
# Renders samples directly in the real-time processing callback. This allows | |||
# for lower latency and less overall CPU utilization, but can increase the | |||
# risk of underruns when increasing the amount of work the mixer needs to do. | |||
#rt-mix=false | |||
## | |||
## PulseAudio backend stuff | |||
## | |||
[pulse] | |||
## spawn-server: (global) | |||
# Attempts to autospawn a PulseAudio server whenever needed (initializing the | |||
# backend, enumerating devices, etc). Setting autospawn to false in Pulse's | |||
# client.conf will still prevent autospawning even if this is set to true. | |||
#spawn-server=false | |||
## allow-moves: (global) | |||
# Allows PulseAudio to move active streams to different devices. Note that the | |||
# device specifier (seen by applications) will not be updated when this | |||
# occurs, and neither will the AL device configuration (sample rate, format, | |||
# etc). | |||
#allow-moves=true | |||
## fix-rate: | |||
# Specifies whether to match the playback stream's sample rate to the device's | |||
# sample rate. Enabling this forces OpenAL Soft to mix sources and effects | |||
# directly to the actual output rate, avoiding a second resample pass by the | |||
# PulseAudio server. | |||
#fix-rate=false | |||
## adjust-latency: | |||
# Attempts to adjust the overall latency of device playback. Note that this | |||
# may have adverse effects on the resulting internal buffer sizes and mixing | |||
# updates, leading to performance problems and drop-outs. However, if the | |||
# PulseAudio server is creating a lot of latency, enabling this may help make | |||
# it more manageable. | |||
#adjust-latency=false | |||
## | |||
## JACK backend stuff | |||
## | |||
[jack] | |||
## spawn-server: (global) | |||
# Attempts to autospawn a JACK server when initializing. | |||
#spawn-server=false | |||
## rt-mix: | |||
# Renders samples directly in the real-time processing callback. This allows | |||
# for lower latency and less overall CPU utilization, but can increase the | |||
# risk of underruns when increasing the amount of work the mixer needs to do. | |||
rt-mix=true | |||
## connect-ports: | |||
# Attempts to automatically connect the client ports to physical server ports. | |||
# Client ports that fail to connect will leave the remaining channels | |||
# unconnected and silent (the device format won't change to accommodate). | |||
connect-ports=true | |||
</syntaxhighlight> | |||
===== Stereo headphones (2.0 or 2.1) ===== | |||
Windows<syntaxhighlight> | |||
## CONFIG - Headphones - Basic Stereo | |||
## General stuff | |||
## | |||
[General] | |||
## stereo-mode: | |||
# Specifies if stereo output is treated as being headphones or speakers. With | |||
# headphones, HRTF or crossfeed filters may be used for better audio quality. | |||
# Valid settings are auto, speakers, and headphones. | |||
stereo-mode=headphones | |||
# Sets the default output channel configuration. If left unspecified, one will | |||
# try to be detected from the system, with a fallback to stereo. The available | |||
# values are: mono, stereo, quad, surround51, surround61, surround71, | |||
# surround714, 3d71, ambi1, ambi2, ambi3, ambi4. Note that the ambi* | |||
# configurations output ambisonic channels of the given order (using ACN | |||
# ordering and SN3D normalization by default), which need to be decoded to | |||
# play correctly on speakers. | |||
channels=stereo | |||
## stereo-encoding: | |||
# Specifies the default encoding method for stereo output. Valid values are: | |||
# basic - Standard amplitude panning (aka pair-wise, stereo pair, etc) between | |||
# -30 and +30 degrees. | |||
# uhj - Creates a stereo-compatible two-channel UHJ mix, which encodes some | |||
# continuous surround sound information into stereo output that can be | |||
# decoded with a surround sound receiver. | |||
# tsme - Creates a stereo-compatible two-channel surround matrix encoded mix, | |||
# which encodes some discrete surround sound and height information | |||
# into the stereo output that can be decoded with a surround sound | |||
# receiver. | |||
# hrtf - Uses filters to provide better spatialization of sounds while using | |||
# stereo headphones. | |||
# If crossfeed filters are used, basic stereo mixing is used. | |||
stereo-encoding=basic | |||
## hrtf-mode: | |||
# Specifies the rendering mode for HRTF processing. Setting the mode to full | |||
# (default) applies a unique HRIR filter to each source given its relative | |||
# location, providing the clearest directional response at the cost of the | |||
# highest CPU usage. Setting the mode to ambi1, ambi2, ambi3, or ambi4 will | |||
# instead mix to an ambisonic buffer of the given order, then decode that | |||
# buffer with HRTF filters. Ambi1 has the lowest CPU usage, replacing the per- | |||
# source HRIR filter for a simple 4-channel panning mix, but retains full 3D | |||
# placement at the cost of a more diffuse response. Higher ambisonic orders | |||
# increasingly improve the directional clarity, at the cost of more CPU usage | |||
# (still less than "full", given some number of active sources). | |||
#hrtf-mode=full | |||
## resampler: (global) | |||
# Selects the default resampler used when mixing sources. Valid values are: | |||
# point - nearest sample, no interpolation | |||
# linear - extrapolates samples using a linear slope between samples | |||
# spline - extrapolates samples using a Catmull-Rom spline | |||
# gaussian - extrapolates samples using a 4-point Gaussian filter | |||
# bsinc12 - extrapolates samples using a band-limited Sinc filter (varying between 12 and 24 points, with anti-aliasing) | |||
# fast_bsinc12 - same as bsinc12, except without interpolation between down-sampling scales | |||
# bsinc24 - extrapolates samples using a band-limited Sinc filter (varying between 24 and 48 points, with anti-aliasing) | |||
# fast_bsinc24 - same as bsinc24, except without interpolation between down-sampling scales | |||
# bsinc48 - extrapolates samples using a band-limited Sinc filter (48 points, with anti-aliasing) | |||
# fast_bsinc48 - same as bsinc48, except without interpolation between down-sampling scales | |||
resampler=spline | |||
## period_size: | |||
# Sets the update period size, in sample frames. This is the number of frames | |||
# needed for each mixing update. Acceptable values range between 64 and 8192. | |||
# If left unspecified it will default to 512 sample frames (~10.7ms). | |||
period_size=512 | |||
## periods: | |||
# Sets the number of update periods. Higher values create a larger mix ahead, | |||
# which helps protect against skips when the CPU is under load, but increases | |||
# the delay between a sound getting mixed and being heard. Acceptable values | |||
# range between 2 and 16. | |||
periods=3 | |||
## sources: | |||
# Sets the maximum number of allocatable sources. Lower values may help for | |||
# systems with apps that try to play more sounds than the CPU can handle. | |||
sources=256 | |||
## slots: | |||
# Sets the maximum number of Auxiliary Effect Slots an app can create. A slot | |||
# can use a non-negligible amount of CPU time if an effect is set on it even | |||
# if no sources are feeding it, so this may help when apps use more than the | |||
# system can handle. | |||
slots=64 | |||
## front-stablizer: | |||
# Applies filters to "stablize" front sound imaging. A psychoacoustic method | |||
# is used to generate a front-center channel signal from the front-left and | |||
# front-right channels, improving the front response by reducing the combing | |||
# artifacts and phase errors. Consequently, it will only work with channel | |||
# configurations that include front-left, front-right, and front-center. | |||
#front-stablizer=false | |||
## volume-adjust: | |||
# A global volume adjustment for source output, expressed in decibels. The | |||
# value is logarithmic, so +6 will be a scale of (approximately) 2x, +12 will | |||
# be a scale of 4x, etc. Similarly, -6 will be x1/2, and -12 is about x1/4. A | |||
# value of 0 means no change. | |||
volume-adjust=0 | |||
## cf_level: | |||
# Sets the crossfeed level for stereo output. Valid values are: | |||
# 0 - No crossfeed | |||
# 1 - Low crossfeed | |||
# 2 - Middle crossfeed | |||
# 3 - High crossfeed (virtual speakers are closer to itself) | |||
# 4 - Low easy crossfeed | |||
# 5 - Middle easy crossfeed | |||
# 6 - High easy crossfeed | |||
# Users of headphones may want to try various settings. Has no effect on non- | |||
# stereo modes. | |||
#cf_level=0 | |||
## | |||
## Ambisonic decoder stuff | |||
## | |||
[decoder] | |||
## hq-mode: | |||
# Enables a high-quality ambisonic decoder. This mode is capable of frequency- | |||
# dependent processing, creating a better reproduction of 3D sound rendering | |||
# over surround sound speakers. | |||
#hq-mode=true | |||
## distance-comp: | |||
# Enables compensation for the speakers' relative distances to the listener. | |||
# This applies the necessary delays and attenuation to make the speakers | |||
# behave as though they are all equidistant, which is important for proper | |||
# playback of 3D sound rendering. Requires the proper distances to be | |||
# specified in the decoder configuration file. | |||
#distance-comp=true | |||
## nfc: | |||
# Enables near-field control filters. This simulates and compensates for low- | |||
# frequency effects caused by the curvature of nearby sound-waves, which | |||
# creates a more realistic perception of sound distance with surround sound | |||
# output. Note that the effect may be stronger or weaker than intended if the | |||
# application doesn't use or specify an appropriate unit scale, or if | |||
# incorrect speaker distances are set. For HRTF output, hrtf-mode must be set | |||
# to one of the ambi* values for this to function. | |||
#nfc=false | |||
## speaker-dist: | |||
# Specifies the speaker distance in meters, used by the near-field control | |||
# filters with surround sound output. For ambisonic output modes, this value | |||
# is the basis for the NFC-HOA Reference Delay parameter (calculated as | |||
# delay_seconds=speaker_dist/343.3). This value is not used when a decoder | |||
# configuration is set for the output mode (since they specify the per-speaker | |||
# distances, overriding this setting), or when the NFC filters are off. Valid | |||
# values range from 0.1 to 10. | |||
#speaker-dist=1 | |||
## | |||
## Reverb effect stuff (includes EAX reverb) | |||
## | |||
[reverb] | |||
## boost: (global) | |||
# A global amplification for reverb output, expressed in decibels. The value | |||
# is logarithmic, so +6 will be a scale of (approximately) 2x, +12 will be a | |||
# scale of 4x, etc. Similarly, -6 will be about half, and -12 about 1/4th. A | |||
# value of 0 means no change. | |||
boost=0 | |||
## | |||
## WASAPI backend stuff | |||
## | |||
[wasapi] | |||
## spatial-api: | |||
# Specifies whether to use a Spatial Audio stream for playback. This may | |||
# provide expanded capabilities for surround sound and with-height speaker | |||
# configurations. Very experimental. | |||
#spatial-api=false | |||
## exclusive-mode: | |||
# Enables Exlusive mode for playback devices. This uses the device directly, | |||
# allowing lower latencies but prevents the device from being used multiple | |||
# times simultaneously. Ignores the periods setting when enabled, as WASAPI | |||
# automatically sets a buffer size based on the period size. | |||
#exclusive-mode=true | |||
## allow-resampler: | |||
# Specifies whether to allow an extra resampler pass on the output. Enabling | |||
# this will allow the playback device to be set to a different sample rate | |||
# than the actual output can accept, causing the backend to apply its own | |||
# resampling pass after OpenAL Soft mixes the sources and processes effects | |||
# for output. | |||
allow-resampler=true | |||
## | |||
## DirectSound backend stuff | |||
## | |||
[dsound] | |||
## | |||
## Windows Multimedia backend stuff | |||
## | |||
[winmm] | |||
## | |||
## EAX extensions stuff | |||
## | |||
[eax] | |||
## enable: (global) | |||
# Sets whether to enable EAX extensions or not. | |||
enable=true | |||
</syntaxhighlight>Linux<syntaxhighlight> | |||
## CONFIG - Headphones - Basic Stereo | |||
## General stuff | |||
## | |||
[General] | |||
## stereo-mode: | |||
# Specifies if stereo output is treated as being headphones or speakers. With | |||
# headphones, HRTF or crossfeed filters may be used for better audio quality. | |||
# Valid settings are auto, speakers, and headphones. | |||
stereo-mode=headphones | |||
# Sets the default output channel configuration. If left unspecified, one will | |||
# try to be detected from the system, with a fallback to stereo. The available | |||
# values are: mono, stereo, quad, surround51, surround61, surround71, | |||
# surround714, 3d71, ambi1, ambi2, ambi3, ambi4. Note that the ambi* | |||
# configurations output ambisonic channels of the given order (using ACN | |||
# ordering and SN3D normalization by default), which need to be decoded to | |||
# play correctly on speakers. | |||
channels=stereo | |||
## stereo-encoding: | |||
# Specifies the default encoding method for stereo output. Valid values are: | |||
# basic - Standard amplitude panning (aka pair-wise, stereo pair, etc) between | |||
# -30 and +30 degrees. | |||
# uhj - Creates a stereo-compatible two-channel UHJ mix, which encodes some | |||
# continuous surround sound information into stereo output that can be | |||
# decoded with a surround sound receiver. | |||
# tsme - Creates a stereo-compatible two-channel surround matrix encoded mix, | |||
# which encodes some discrete surround sound and height information | |||
# into the stereo output that can be decoded with a surround sound | |||
# receiver. | |||
# hrtf - Uses filters to provide better spatialization of sounds while using | |||
# stereo headphones. | |||
# If crossfeed filters are used, basic stereo mixing is used. | |||
stereo-encoding=basic | |||
## hrtf-mode: | |||
# Specifies the rendering mode for HRTF processing. Setting the mode to full | |||
# (default) applies a unique HRIR filter to each source given its relative | |||
# location, providing the clearest directional response at the cost of the | |||
# highest CPU usage. Setting the mode to ambi1, ambi2, ambi3, or ambi4 will | |||
# instead mix to an ambisonic buffer of the given order, then decode that | |||
# buffer with HRTF filters. Ambi1 has the lowest CPU usage, replacing the per- | |||
# source HRIR filter for a simple 4-channel panning mix, but retains full 3D | |||
# placement at the cost of a more diffuse response. Higher ambisonic orders | |||
# increasingly improve the directional clarity, at the cost of more CPU usage | |||
# (still less than "full", given some number of active sources). | |||
#hrtf-mode=full | |||
## resampler: (global) | |||
# Selects the default resampler used when mixing sources. Valid values are: | |||
# point - nearest sample, no interpolation | |||
# linear - extrapolates samples using a linear slope between samples | |||
# spline - extrapolates samples using a Catmull-Rom spline | |||
# gaussian - extrapolates samples using a 4-point Gaussian filter | |||
# bsinc12 - extrapolates samples using a band-limited Sinc filter (varying between 12 and 24 points, with anti-aliasing) | |||
# fast_bsinc12 - same as bsinc12, except without interpolation between down-sampling scales | |||
# bsinc24 - extrapolates samples using a band-limited Sinc filter (varying between 24 and 48 points, with anti-aliasing) | |||
# fast_bsinc24 - same as bsinc24, except without interpolation between down-sampling scales | |||
# bsinc48 - extrapolates samples using a band-limited Sinc filter (48 points, with anti-aliasing) | |||
# fast_bsinc48 - same as bsinc48, except without interpolation between down-sampling scales | |||
resampler=spline | |||
==== | ## period_size: | ||
# Sets the update period size, in sample frames. This is the number of frames | |||
# needed for each mixing update. Acceptable values range between 64 and 8192. | |||
# If left unspecified it will default to 512 sample frames (~10.7ms). | |||
period_size=512 | |||
## periods: | |||
# Sets the number of update periods. Higher values create a larger mix ahead, | |||
# which helps protect against skips when the CPU is under load, but increases | |||
# the delay between a sound getting mixed and being heard. Acceptable values | |||
# range between 2 and 16. | |||
periods=3 | |||
## sources: | |||
# Sets the maximum number of allocatable sources. Lower values may help for | |||
# systems with apps that try to play more sounds than the CPU can handle. | |||
sources=256 | |||
## slots: | |||
# Sets the maximum number of Auxiliary Effect Slots an app can create. A slot | |||
# can use a non-negligible amount of CPU time if an effect is set on it even | |||
# if no sources are feeding it, so this may help when apps use more than the | |||
# system can handle. | |||
slots=64 | |||
## front-stablizer: | |||
# Applies filters to "stablize" front sound imaging. A psychoacoustic method | |||
# is used to generate a front-center channel signal from the front-left and | |||
# front-right channels, improving the front response by reducing the combing | |||
# artifacts and phase errors. Consequently, it will only work with channel | |||
# configurations that include front-left, front-right, and front-center. | |||
#front-stablizer=false | |||
## volume-adjust: | |||
# A global volume adjustment for source output, expressed in decibels. The | |||
# value is logarithmic, so +6 will be a scale of (approximately) 2x, +12 will | |||
# be a scale of 4x, etc. Similarly, -6 will be x1/2, and -12 is about x1/4. A | |||
# value of 0 means no change. | |||
#volume-adjust=0 | |||
## cf_level: | |||
# Sets the crossfeed level for stereo output. Valid values are: | |||
# 0 - No crossfeed | |||
# 1 - Low crossfeed | |||
# 2 - Middle crossfeed | |||
# 3 - High crossfeed (virtual speakers are closer to itself) | |||
# 4 - Low easy crossfeed | |||
# 5 - Middle easy crossfeed | |||
# 6 - High easy crossfeed | |||
# Users of headphones may want to try various settings. Has no effect on non- | |||
# stereo modes. | |||
#cf_level=0 | |||
## | |||
## Ambisonic decoder stuff | |||
## | |||
[decoder] | |||
## hq-mode: | |||
# Enables a high-quality ambisonic decoder. This mode is capable of frequency- | |||
# dependent processing, creating a better reproduction of 3D sound rendering | |||
# over surround sound speakers. | |||
# hq-mode=true | |||
## distance-comp: | |||
# Enables compensation for the speakers' relative distances to the listener. | |||
# This applies the necessary delays and attenuation to make the speakers | |||
# behave as though they are all equidistant, which is important for proper | |||
# playback of 3D sound rendering. Requires the proper distances to be | |||
# specified in the decoder configuration file. | |||
#distance-comp=true | |||
## nfc: | |||
# Enables near-field control filters. This simulates and compensates for low- | |||
# frequency effects caused by the curvature of nearby sound-waves, which | |||
# creates a more realistic perception of sound distance with surround sound | |||
# output. Note that the effect may be stronger or weaker than intended if the | |||
# application doesn't use or specify an appropriate unit scale, or if | |||
# incorrect speaker distances are set. For HRTF output, hrtf-mode must be set | |||
# to one of the ambi* values for this to function. | |||
#nfc=false | |||
## speaker-dist: | |||
# Specifies the speaker distance in meters, used by the near-field control | |||
# filters with surround sound output. For ambisonic output modes, this value | |||
# is the basis for the NFC-HOA Reference Delay parameter (calculated as | |||
# delay_seconds=speaker_dist/343.3). This value is not used when a decoder | |||
# configuration is set for the output mode (since they specify the per-speaker | |||
# distances, overriding this setting), or when the NFC filters are off. Valid | |||
# values range from 0.1 to 10. | |||
# speaker-dist=1 | |||
## | |||
## Reverb effect stuff (includes EAX reverb) | |||
## | |||
[reverb] | |||
## boost: (global) | |||
# A global amplification for reverb output, expressed in decibels. The value | |||
# is logarithmic, so +6 will be a scale of (approximately) 2x, +12 will be a | |||
# scale of 4x, etc. Similarly, -6 will be about half, and -12 about 1/4th. A | |||
# value of 0 means no change. | |||
boost=0 | |||
## | |||
## ALSA backend stuff | |||
## | |||
[alsa] | |||
## allow-resampler: | |||
# Specifies whether to allow ALSA's built-in resampler. Enabling this will | |||
# allow the playback device to be set to a different sample rate than the | |||
# actual output, causing ALSA to apply its own resampling pass after OpenAL | |||
# Soft resamples and mixes the sources and effects for output. | |||
allow-resampler=true | |||
## mmap: | |||
# Sets whether to try using mmap mode (helps reduce latencies and CPU | |||
# consumption). If mmap isn't available, it will automatically fall back to | |||
# non-mmap mode. True, yes, on, and non-0 values will attempt to use mmap. 0 | |||
# and anything else will force mmap off. | |||
mmap=true | |||
## | |||
## PipeWire backend stuff | |||
## | |||
[pipewire] | |||
## assume-audio: (global) | |||
# Causes the backend to succeed initialization even if PipeWire reports no | |||
# audio support. Currently, audio support is detected by the presence of audio | |||
# source or sink nodes, although this can cause false negatives in cases where | |||
# device availability during library initialization is spotty. Future versions | |||
# of PipeWire are expected to have a more robust method to test audio support, | |||
# but in the mean time this can be set to true to assume PipeWire has audio | |||
# support even when no nodes may be reported at initialization time. | |||
#assume-audio=false | |||
## rt-mix: | |||
# Renders samples directly in the real-time processing callback. This allows | |||
# for lower latency and less overall CPU utilization, but can increase the | |||
# risk of underruns when increasing the amount of work the mixer needs to do. | |||
#rt-mix=false | |||
## | |||
## PulseAudio backend stuff | |||
## | |||
[pulse] | |||
## spawn-server: (global) | |||
# Attempts to autospawn a PulseAudio server whenever needed (initializing the | |||
# backend, enumerating devices, etc). Setting autospawn to false in Pulse's | |||
# client.conf will still prevent autospawning even if this is set to true. | |||
#spawn-server=false | |||
## allow-moves: (global) | |||
# Allows PulseAudio to move active streams to different devices. Note that the | |||
# device specifier (seen by applications) will not be updated when this | |||
# occurs, and neither will the AL device configuration (sample rate, format, | |||
# etc). | |||
#allow-moves=true | |||
## fix-rate: | |||
# Specifies whether to match the playback stream's sample rate to the device's | |||
# sample rate. Enabling this forces OpenAL Soft to mix sources and effects | |||
# directly to the actual output rate, avoiding a second resample pass by the | |||
# PulseAudio server. | |||
#fix-rate=false | |||
## adjust-latency: | |||
# Attempts to adjust the overall latency of device playback. Note that this | |||
# may have adverse effects on the resulting internal buffer sizes and mixing | |||
# updates, leading to performance problems and drop-outs. However, if the | |||
# PulseAudio server is creating a lot of latency, enabling this may help make | |||
# it more manageable. | |||
#adjust-latency=false | |||
## | |||
## JACK backend stuff | |||
## | |||
[jack] | |||
## spawn-server: (global) | |||
# Attempts to autospawn a JACK server when initializing. | |||
#spawn-server=false | |||
## rt-mix: | |||
# Renders samples directly in the real-time processing callback. This allows | |||
# for lower latency and less overall CPU utilization, but can increase the | |||
# risk of underruns when increasing the amount of work the mixer needs to do. | |||
rt-mix=true | |||
= | ## connect-ports: | ||
# Attempts to automatically connect the client ports to physical server ports. | |||
# Client ports that fail to connect will leave the remaining channels | |||
# unconnected and silent (the device format won't change to accommodate). | |||
connect-ports=true | |||
</syntaxhighlight> | |||
===== Stereo headphones with HRTF enabled ===== | ===== Stereo headphones with HRTF enabled ===== | ||
Windows<syntaxhighlight>## CONFIG - Headphones + HRTF | |||
## General stuff | |||
## | |||
[General] | |||
## stereo-mode: | |||
# Specifies if stereo output is treated as being headphones or speakers. With | |||
# headphones, HRTF or crossfeed filters may be used for better audio quality. | |||
# Valid settings are auto, speakers, and headphones. | |||
stereo-mode=headphones | |||
# Sets the default output channel configuration. If left unspecified, one will | |||
# try to be detected from the system, with a fallback to stereo. The available | |||
# values are: mono, stereo, quad, surround51, surround61, surround71, | |||
# surround714, 3d71, ambi1, ambi2, ambi3, ambi4. Note that the ambi* | |||
# configurations output ambisonic channels of the given order (using ACN | |||
# ordering and SN3D normalization by default), which need to be decoded to | |||
# play correctly on speakers. | |||
channels=stereo | |||
## stereo-encoding: | |||
# Specifies the default encoding method for stereo output. Valid values are: | |||
# basic - Standard amplitude panning (aka pair-wise, stereo pair, etc) between | |||
# -30 and +30 degrees. | |||
# uhj - Creates a stereo-compatible two-channel UHJ mix, which encodes some | |||
# continuous surround sound information into stereo output that can be | |||
# decoded with a surround sound receiver. | |||
# tsme - Creates a stereo-compatible two-channel surround matrix encoded mix, | |||
# which encodes some discrete surround sound and height information | |||
# into the stereo output that can be decoded with a surround sound | |||
# receiver. | |||
# hrtf - Uses filters to provide better spatialization of sounds while using | |||
# stereo headphones. | |||
# If crossfeed filters are used, basic stereo mixing is used. | |||
stereo-encoding=hrtf | |||
## hrtf-mode: | |||
# Specifies the rendering mode for HRTF processing. Setting the mode to full | |||
# (default) applies a unique HRIR filter to each source given its relative | |||
# location, providing the clearest directional response at the cost of the | |||
# highest CPU usage. Setting the mode to ambi1, ambi2, ambi3, or ambi4 will | |||
# instead mix to an ambisonic buffer of the given order, then decode that | |||
# buffer with HRTF filters. Ambi1 has the lowest CPU usage, replacing the per- | |||
# source HRIR filter for a simple 4-channel panning mix, but retains full 3D | |||
# placement at the cost of a more diffuse response. Higher ambisonic orders | |||
# increasingly improve the directional clarity, at the cost of more CPU usage | |||
# (still less than "full", given some number of active sources). | |||
hrtf-mode=full | |||
## resampler: (global) | |||
# Selects the default resampler used when mixing sources. Valid values are: | |||
# point - nearest sample, no interpolation | |||
# linear - extrapolates samples using a linear slope between samples | |||
# spline - extrapolates samples using a Catmull-Rom spline | |||
# gaussian - extrapolates samples using a 4-point Gaussian filter | |||
# bsinc12 - extrapolates samples using a band-limited Sinc filter (varying between 12 and 24 points, with anti-aliasing) | |||
# fast_bsinc12 - same as bsinc12, except without interpolation between down-sampling scales | |||
# bsinc24 - extrapolates samples using a band-limited Sinc filter (varying between 24 and 48 points, with anti-aliasing) | |||
# fast_bsinc24 - same as bsinc24, except without interpolation between down-sampling scales | |||
# bsinc48 - extrapolates samples using a band-limited Sinc filter (48 points, with anti-aliasing) | |||
# fast_bsinc48 - same as bsinc48, except without interpolation between down-sampling scales | |||
resampler=spline | |||
## period_size: | |||
# Sets the update period size, in sample frames. This is the number of frames | |||
# needed for each mixing update. Acceptable values range between 64 and 8192. | |||
# If left unspecified it will default to 512 sample frames (~10.7ms). | |||
period_size=512 | |||
## periods: | |||
# Sets the number of update periods. Higher values create a larger mix ahead, | |||
# which helps protect against skips when the CPU is under load, but increases | |||
# the delay between a sound getting mixed and being heard. Acceptable values | |||
# range between 2 and 16. | |||
periods=3 | |||
## sources: | |||
# Sets the maximum number of allocatable sources. Lower values may help for | |||
# systems with apps that try to play more sounds than the CPU can handle. | |||
sources=256 | |||
## slots: | |||
# Sets the maximum number of Auxiliary Effect Slots an app can create. A slot | |||
# can use a non-negligible amount of CPU time if an effect is set on it even | |||
# if no sources are feeding it, so this may help when apps use more than the | |||
# system can handle. | |||
slots=64 | |||
## front-stablizer: | |||
# Applies filters to "stablize" front sound imaging. A psychoacoustic method | |||
# is used to generate a front-center channel signal from the front-left and | |||
# front-right channels, improving the front response by reducing the combing | |||
# artifacts and phase errors. Consequently, it will only work with channel | |||
# configurations that include front-left, front-right, and front-center. | |||
#front-stablizer=false | |||
## volume-adjust: | |||
# A global volume adjustment for source output, expressed in decibels. The | |||
# value is logarithmic, so +6 will be a scale of (approximately) 2x, +12 will | |||
# be a scale of 4x, etc. Similarly, -6 will be x1/2, and -12 is about x1/4. A | |||
# value of 0 means no change. | |||
#volume-adjust=0 | |||
## cf_level: | |||
# Sets the crossfeed level for stereo output. Valid values are: | |||
# 0 - No crossfeed | |||
# 1 - Low crossfeed | |||
# 2 - Middle crossfeed | |||
# 3 - High crossfeed (virtual speakers are closer to itself) | |||
# 4 - Low easy crossfeed | |||
# 5 - Middle easy crossfeed | |||
# 6 - High easy crossfeed | |||
# Users of headphones may want to try various settings. Has no effect on non- | |||
# stereo modes. | |||
cf_level=0 | |||
## | |||
## Ambisonic decoder stuff | |||
## | |||
[decoder] | |||
## hq-mode: | |||
# Enables a high-quality ambisonic decoder. This mode is capable of frequency- | |||
# dependent processing, creating a better reproduction of 3D sound rendering | |||
# over surround sound speakers. | |||
# hq-mode=true | |||
= | ## distance-comp: | ||
# Enables compensation for the speakers' relative distances to the listener. | |||
# This applies the necessary delays and attenuation to make the speakers | |||
# behave as though they are all equidistant, which is important for proper | |||
# playback of 3D sound rendering. Requires the proper distances to be | |||
# specified in the decoder configuration file. | |||
distance-comp=false | |||
## nfc: | |||
# Enables near-field control filters. This simulates and compensates for low- | |||
# frequency effects caused by the curvature of nearby sound-waves, which | |||
# creates a more realistic perception of sound distance with surround sound | |||
# output. Note that the effect may be stronger or weaker than intended if the | |||
# application doesn't use or specify an appropriate unit scale, or if | |||
# incorrect speaker distances are set. For HRTF output, hrtf-mode must be set | |||
# to one of the ambi* values for this to function. | |||
nfc=false | |||
= | ## speaker-dist: | ||
# Specifies the speaker distance in meters, used by the near-field control | |||
# filters with surround sound output. For ambisonic output modes, this value | |||
# is the basis for the NFC-HOA Reference Delay parameter (calculated as | |||
# delay_seconds=speaker_dist/343.3). This value is not used when a decoder | |||
# configuration is set for the output mode (since they specify the per-speaker | |||
# distances, overriding this setting), or when the NFC filters are off. Valid | |||
# values range from 0.1 to 10. | |||
#speaker-dist=1 | |||
==== | ## | ||
## Reverb effect stuff (includes EAX reverb) | |||
## | |||
[reverb] | |||
## boost: (global) | |||
# A global amplification for reverb output, expressed in decibels. The value | |||
# is logarithmic, so +6 will be a scale of (approximately) 2x, +12 will be a | |||
# scale of 4x, etc. Similarly, -6 will be about half, and -12 about 1/4th. A | |||
# value of 0 means no change. | |||
boost=0 | |||
## | |||
## WASAPI backend stuff | |||
## | |||
[wasapi] | |||
## spatial-api: | |||
# Specifies whether to use a Spatial Audio stream for playback. This may | |||
# provide expanded capabilities for surround sound and with-height speaker | |||
# configurations. Very experimental. | |||
#spatial-api=false | |||
## exclusive-mode: | |||
# Enables Exlusive mode for playback devices. This uses the device directly, | |||
# allowing lower latencies but prevents the device from being used multiple | |||
# times simultaneously. Ignores the periods setting when enabled, as WASAPI | |||
# automatically sets a buffer size based on the period size. | |||
#exclusive-mode=true | |||
## allow-resampler: | |||
# Specifies whether to allow an extra resampler pass on the output. Enabling | |||
# this will allow the playback device to be set to a different sample rate | |||
# than the actual output can accept, causing the backend to apply its own | |||
# resampling pass after OpenAL Soft mixes the sources and processes effects | |||
# for output. | |||
allow-resampler=true | |||
## | |||
## DirectSound backend stuff | |||
## | |||
[dsound] | |||
## | |||
## Windows Multimedia backend stuff | |||
## | |||
[winmm] | |||
## | |||
## EAX extensions stuff | |||
## | |||
[eax] | |||
## enable: (global) | |||
# Sets whether to enable EAX extensions or not. | |||
enable=true</syntaxhighlight>Linux<syntaxhighlight> | |||
## CONFIG - Headphones + HRTF | |||
## General stuff | |||
## | |||
[General] | |||
## stereo-mode: | |||
# Specifies if stereo output is treated as being headphones or speakers. With | |||
# headphones, HRTF or crossfeed filters may be used for better audio quality. | |||
# Valid settings are auto, speakers, and headphones. | |||
stereo-mode=headphones | |||
# Sets the default output channel configuration. If left unspecified, one will | |||
# try to be detected from the system, with a fallback to stereo. The available | |||
# values are: mono, stereo, quad, surround51, surround61, surround71, | |||
# surround714, 3d71, ambi1, ambi2, ambi3, ambi4. Note that the ambi* | |||
# configurations output ambisonic channels of the given order (using ACN | |||
# ordering and SN3D normalization by default), which need to be decoded to | |||
# play correctly on speakers. | |||
channels=stereo | |||
## stereo-encoding: | |||
# Specifies the default encoding method for stereo output. Valid values are: | |||
# basic - Standard amplitude panning (aka pair-wise, stereo pair, etc) between | |||
# -30 and +30 degrees. | |||
# uhj - Creates a stereo-compatible two-channel UHJ mix, which encodes some | |||
# continuous surround sound information into stereo output that can be | |||
# decoded with a surround sound receiver. | |||
# tsme - Creates a stereo-compatible two-channel surround matrix encoded mix, | |||
# which encodes some discrete surround sound and height information | |||
# into the stereo output that can be decoded with a surround sound | |||
# receiver. | |||
# hrtf - Uses filters to provide better spatialization of sounds while using | |||
# stereo headphones. | |||
# If crossfeed filters are used, basic stereo mixing is used. | |||
stereo-encoding=hrtf | |||
## hrtf-mode: | |||
# Specifies the rendering mode for HRTF processing. Setting the mode to full | |||
# (default) applies a unique HRIR filter to each source given its relative | |||
# location, providing the clearest directional response at the cost of the | |||
# highest CPU usage. Setting the mode to ambi1, ambi2, ambi3, or ambi4 will | |||
# instead mix to an ambisonic buffer of the given order, then decode that | |||
# buffer with HRTF filters. Ambi1 has the lowest CPU usage, replacing the per- | |||
# source HRIR filter for a simple 4-channel panning mix, but retains full 3D | |||
# placement at the cost of a more diffuse response. Higher ambisonic orders | |||
# increasingly improve the directional clarity, at the cost of more CPU usage | |||
# (still less than "full", given some number of active sources). | |||
hrtf-mode=full | |||
## resampler: (global) | |||
# Selects the default resampler used when mixing sources. Valid values are: | |||
# point - nearest sample, no interpolation | |||
# linear - extrapolates samples using a linear slope between samples | |||
# spline - extrapolates samples using a Catmull-Rom spline | |||
# gaussian - extrapolates samples using a 4-point Gaussian filter | |||
# bsinc12 - extrapolates samples using a band-limited Sinc filter (varying between 12 and 24 points, with anti-aliasing) | |||
# fast_bsinc12 - same as bsinc12, except without interpolation between down-sampling scales | |||
# bsinc24 - extrapolates samples using a band-limited Sinc filter (varying between 24 and 48 points, with anti-aliasing) | |||
# fast_bsinc24 - same as bsinc24, except without interpolation between down-sampling scales | |||
# bsinc48 - extrapolates samples using a band-limited Sinc filter (48 points, with anti-aliasing) | |||
# fast_bsinc48 - same as bsinc48, except without interpolation between down-sampling scales | |||
resampler=spline | |||
## period_size: | |||
# Sets the update period size, in sample frames. This is the number of frames | |||
# needed for each mixing update. Acceptable values range between 64 and 8192. | |||
# If left unspecified it will default to 512 sample frames (~10.7ms). | |||
period_size=512 | |||
## periods: | |||
# Sets the number of update periods. Higher values create a larger mix ahead, | |||
# which helps protect against skips when the CPU is under load, but increases | |||
# the delay between a sound getting mixed and being heard. Acceptable values | |||
# range between 2 and 16. | |||
periods=3 | |||
## sources: | |||
# Sets the maximum number of allocatable sources. Lower values may help for | |||
# systems with apps that try to play more sounds than the CPU can handle. | |||
sources=256 | |||
## slots: | |||
# Sets the maximum number of Auxiliary Effect Slots an app can create. A slot | |||
# can use a non-negligible amount of CPU time if an effect is set on it even | |||
# if no sources are feeding it, so this may help when apps use more than the | |||
# system can handle. | |||
slots=64 | |||
## front-stablizer: | |||
# Applies filters to "stablize" front sound imaging. A psychoacoustic method | |||
# is used to generate a front-center channel signal from the front-left and | |||
# front-right channels, improving the front response by reducing the combing | |||
# artifacts and phase errors. Consequently, it will only work with channel | |||
# configurations that include front-left, front-right, and front-center. | |||
#front-stablizer=false | |||
## volume-adjust: | |||
# A global volume adjustment for source output, expressed in decibels. The | |||
# value is logarithmic, so +6 will be a scale of (approximately) 2x, +12 will | |||
# be a scale of 4x, etc. Similarly, -6 will be x1/2, and -12 is about x1/4. A | |||
# value of 0 means no change. | |||
#volume-adjust=0 | |||
## cf_level: | |||
# Sets the crossfeed level for stereo output. Valid values are: | |||
# 0 - No crossfeed | |||
# 1 - Low crossfeed | |||
# 2 - Middle crossfeed | |||
# 3 - High crossfeed (virtual speakers are closer to itself) | |||
# 4 - Low easy crossfeed | |||
# 5 - Middle easy crossfeed | |||
# 6 - High easy crossfeed | |||
# Users of headphones may want to try various settings. Has no effect on non- | |||
# stereo modes. | |||
cf_level=0 | |||
## | |||
## Ambisonic decoder stuff | |||
## | |||
[decoder] | |||
## hq-mode: | |||
# Enables a high-quality ambisonic decoder. This mode is capable of frequency- | |||
# dependent processing, creating a better reproduction of 3D sound rendering | |||
# over surround sound speakers. | |||
# hq-mode=true | |||
## distance-comp: | |||
# Enables compensation for the speakers' relative distances to the listener. | |||
# This applies the necessary delays and attenuation to make the speakers | |||
# behave as though they are all equidistant, which is important for proper | |||
# playback of 3D sound rendering. Requires the proper distances to be | |||
# specified in the decoder configuration file. | |||
distance-comp=false | |||
## nfc: | |||
# Enables near-field control filters. This simulates and compensates for low- | |||
# frequency effects caused by the curvature of nearby sound-waves, which | |||
# creates a more realistic perception of sound distance with surround sound | |||
# output. Note that the effect may be stronger or weaker than intended if the | |||
# application doesn't use or specify an appropriate unit scale, or if | |||
# incorrect speaker distances are set. For HRTF output, hrtf-mode must be set | |||
# to one of the ambi* values for this to function. | |||
nfc=false | |||
## speaker-dist: | |||
# Specifies the speaker distance in meters, used by the near-field control | |||
# filters with surround sound output. For ambisonic output modes, this value | |||
# is the basis for the NFC-HOA Reference Delay parameter (calculated as | |||
# delay_seconds=speaker_dist/343.3). This value is not used when a decoder | |||
# configuration is set for the output mode (since they specify the per-speaker | |||
# distances, overriding this setting), or when the NFC filters are off. Valid | |||
# values range from 0.1 to 10. | |||
#speaker-dist=1 | |||
## | |||
## Reverb effect stuff (includes EAX reverb) | |||
## | |||
[reverb] | |||
## boost: (global) | |||
# A global amplification for reverb output, expressed in decibels. The value | |||
# is logarithmic, so +6 will be a scale of (approximately) 2x, +12 will be a | |||
# scale of 4x, etc. Similarly, -6 will be about half, and -12 about 1/4th. A | |||
# value of 0 means no change. | |||
boost=0 | |||
## | |||
## ALSA backend stuff | |||
## | |||
[alsa] | |||
## allow-resampler: | |||
# Specifies whether to allow ALSA's built-in resampler. Enabling this will | |||
# allow the playback device to be set to a different sample rate than the | |||
# actual output, causing ALSA to apply its own resampling pass after OpenAL | |||
# Soft resamples and mixes the sources and effects for output. | |||
allow-resampler=true | |||
## mmap: | |||
# Sets whether to try using mmap mode (helps reduce latencies and CPU | |||
# consumption). If mmap isn't available, it will automatically fall back to | |||
# non-mmap mode. True, yes, on, and non-0 values will attempt to use mmap. 0 | |||
# and anything else will force mmap off. | |||
mmap=true | |||
## | |||
## PipeWire backend stuff | |||
## | |||
[pipewire] | |||
## assume-audio: (global) | |||
# Causes the backend to succeed initialization even if PipeWire reports no | |||
# audio support. Currently, audio support is detected by the presence of audio | |||
# source or sink nodes, although this can cause false negatives in cases where | |||
# device availability during library initialization is spotty. Future versions | |||
# of PipeWire are expected to have a more robust method to test audio support, | |||
# but in the mean time this can be set to true to assume PipeWire has audio | |||
# support even when no nodes may be reported at initialization time. | |||
#assume-audio=false | |||
## rt-mix: | |||
# Renders samples directly in the real-time processing callback. This allows | |||
# for lower latency and less overall CPU utilization, but can increase the | |||
# risk of underruns when increasing the amount of work the mixer needs to do. | |||
#rt-mix=false | |||
## | |||
## PulseAudio backend stuff | |||
## | |||
[pulse] | |||
## spawn-server: (global) | |||
# Attempts to autospawn a PulseAudio server whenever needed (initializing the | |||
# backend, enumerating devices, etc). Setting autospawn to false in Pulse's | |||
# client.conf will still prevent autospawning even if this is set to true. | |||
#spawn-server=false | |||
## allow-moves: (global) | |||
# Allows PulseAudio to move active streams to different devices. Note that the | |||
# device specifier (seen by applications) will not be updated when this | |||
# occurs, and neither will the AL device configuration (sample rate, format, | |||
# etc). | |||
#allow-moves=true | |||
## fix-rate: | |||
# Specifies whether to match the playback stream's sample rate to the device's | |||
# sample rate. Enabling this forces OpenAL Soft to mix sources and effects | |||
# directly to the actual output rate, avoiding a second resample pass by the | |||
# PulseAudio server. | |||
#fix-rate=false | |||
## adjust-latency: | |||
# Attempts to adjust the overall latency of device playback. Note that this | |||
# may have adverse effects on the resulting internal buffer sizes and mixing | |||
# updates, leading to performance problems and drop-outs. However, if the | |||
# PulseAudio server is creating a lot of latency, enabling this may help make | |||
# it more manageable. | |||
#adjust-latency=false | |||
## | |||
## JACK backend stuff | |||
## | |||
[jack] | |||
## spawn-server: (global) | |||
# Attempts to autospawn a JACK server when initializing. | |||
#spawn-server=false | |||
## rt-mix: | |||
# Renders samples directly in the real-time processing callback. This allows | |||
# for lower latency and less overall CPU utilization, but can increase the | |||
# risk of underruns when increasing the amount of work the mixer needs to do. | |||
rt-mix=true | |||
## connect-ports: | |||
# Attempts to automatically connect the client ports to physical server ports. | |||
# Client ports that fail to connect will leave the remaining channels | |||
# unconnected and silent (the device format won't change to accommodate). | |||
connect-ports=true | |||
</syntaxhighlight>*Might require a custom HRTF profile - depending on physical characteristics of your ears | |||
===== File path ===== | |||
====== Windows ====== | |||
* Per-user: <code>C:\Users\%USERNAME%\AppData\Roaming\alsoft.ini</code> | |||
* Game-specific: <code>C:\UT2004\System\alsoft.ini</code> | |||
===== | ====== Linux ====== | ||
* System-wide: <code>/etc/xdg/alsoft.conf</code> | |||
* Per-user: <code>~/.config/alsoft.conf</code> | |||
* Game-specific: <code>~/.ut2004/System/alsoft.conf</code> | |||
Revision as of 17:54, 20 February 2026
OpenAL Soft
Patch 3374 for Unreal Tournament 2004 replaces the legacy DirectSound-based OpenAL with OpenAL Soft, modernizing the game’s audio backend for improved compatibility, stability, and 3D positional sound on current systems.
Audio Features & Options
- HRTF support – Enhanced 3D positional audio for headphones
- Selectable HRTF modes – Enable/disable and profile selection
- Playback device selection – Choose specific output devices
- Stereo / 5.1 / 7.1 support – Improved surround handling
- Sample rate & resampler settings – Quality/performance tuning
- Ambisonics support – B-Format decoding for advanced spatial audio workflows
- Configurable decoders & backends – Select output backends (e.g., WASAPI, PulseAudio, PipeWire) and decoder behavior
Configuration files
Audio behavior can be customized through files containing settings for different use cases (e.g., competitive HRTF headphones, high-quality surround, low-latency setup).
You can place the file next to the game executable and OpenAL Soft will override the system or user config Common adjustable options include:
hrtf = true/falsefrequency = <sample rate>channels = stereo / 5.1 / 7.1resampler = <type>period_sizeandperiods(latency tuning)
Presets
Stereo speakers (2.0 or 2.1)
Windows
## CONFIG - Default
## General stuff
##
[General]
## stereo-mode:
# Specifies if stereo output is treated as being headphones or speakers. With
# headphones, HRTF or crossfeed filters may be used for better audio quality.
# Valid settings are auto, speakers, and headphones.
stereo-mode=speakers
# Sets the default output channel configuration. If left unspecified, one will
# try to be detected from the system, with a fallback to stereo. The available
# values are: mono, stereo, quad, surround51, surround61, surround71,
# surround714, 3d71, ambi1, ambi2, ambi3, ambi4. Note that the ambi*
# configurations output ambisonic channels of the given order (using ACN
# ordering and SN3D normalization by default), which need to be decoded to
# play correctly on speakers.
channels=stereo
## stereo-encoding:
# Specifies the default encoding method for stereo output. Valid values are:
# basic - Standard amplitude panning (aka pair-wise, stereo pair, etc) between
# -30 and +30 degrees.
# uhj - Creates a stereo-compatible two-channel UHJ mix, which encodes some
# continuous surround sound information into stereo output that can be
# decoded with a surround sound receiver.
# tsme - Creates a stereo-compatible two-channel surround matrix encoded mix,
# which encodes some discrete surround sound and height information
# into the stereo output that can be decoded with a surround sound
# receiver.
# hrtf - Uses filters to provide better spatialization of sounds while using
# stereo headphones.
# If crossfeed filters are used, basic stereo mixing is used.
stereo-encoding=basic
## hrtf-mode:
# Specifies the rendering mode for HRTF processing. Setting the mode to full
# (default) applies a unique HRIR filter to each source given its relative
# location, providing the clearest directional response at the cost of the
# highest CPU usage. Setting the mode to ambi1, ambi2, ambi3, or ambi4 will
# instead mix to an ambisonic buffer of the given order, then decode that
# buffer with HRTF filters. Ambi1 has the lowest CPU usage, replacing the per-
# source HRIR filter for a simple 4-channel panning mix, but retains full 3D
# placement at the cost of a more diffuse response. Higher ambisonic orders
# increasingly improve the directional clarity, at the cost of more CPU usage
# (still less than "full", given some number of active sources).
#hrtf-mode=full
## resampler: (global)
# Selects the default resampler used when mixing sources. Valid values are:
# point - nearest sample, no interpolation
# linear - extrapolates samples using a linear slope between samples
# spline - extrapolates samples using a Catmull-Rom spline
# gaussian - extrapolates samples using a 4-point Gaussian filter
# bsinc12 - extrapolates samples using a band-limited Sinc filter (varying between 12 and 24 points, with anti-aliasing)
# fast_bsinc12 - same as bsinc12, except without interpolation between down-sampling scales
# bsinc24 - extrapolates samples using a band-limited Sinc filter (varying between 24 and 48 points, with anti-aliasing)
# fast_bsinc24 - same as bsinc24, except without interpolation between down-sampling scales
# bsinc48 - extrapolates samples using a band-limited Sinc filter (48 points, with anti-aliasing)
# fast_bsinc48 - same as bsinc48, except without interpolation between down-sampling scales
resampler=spline
## period_size:
# Sets the update period size, in sample frames. This is the number of frames
# needed for each mixing update. Acceptable values range between 64 and 8192.
# If left unspecified it will default to 512 sample frames (~10.7ms).
period_size=512
## periods:
# Sets the number of update periods. Higher values create a larger mix ahead,
# which helps protect against skips when the CPU is under load, but increases
# the delay between a sound getting mixed and being heard. Acceptable values
# range between 2 and 16.
periods=3
## sources:
# Sets the maximum number of allocatable sources. Lower values may help for
# systems with apps that try to play more sounds than the CPU can handle.
sources=256
## slots:
# Sets the maximum number of Auxiliary Effect Slots an app can create. A slot
# can use a non-negligible amount of CPU time if an effect is set on it even
# if no sources are feeding it, so this may help when apps use more than the
# system can handle.
slots=64
## front-stablizer:
# Applies filters to "stablize" front sound imaging. A psychoacoustic method
# is used to generate a front-center channel signal from the front-left and
# front-right channels, improving the front response by reducing the combing
# artifacts and phase errors. Consequently, it will only work with channel
# configurations that include front-left, front-right, and front-center.
#front-stablizer=false
## volume-adjust:
# A global volume adjustment for source output, expressed in decibels. The
# value is logarithmic, so +6 will be a scale of (approximately) 2x, +12 will
# be a scale of 4x, etc. Similarly, -6 will be x1/2, and -12 is about x1/4. A
# value of 0 means no change.
#volume-adjust=0
## cf_level:
# Sets the crossfeed level for stereo output. Valid values are:
# 0 - No crossfeed
# 1 - Low crossfeed
# 2 - Middle crossfeed
# 3 - High crossfeed (virtual speakers are closer to itself)
# 4 - Low easy crossfeed
# 5 - Middle easy crossfeed
# 6 - High easy crossfeed
# Users of headphones may want to try various settings. Has no effect on non-
# stereo modes.
#cf_level=0
##
## Ambisonic decoder stuff
##
[decoder]
## hq-mode:
# Enables a high-quality ambisonic decoder. This mode is capable of frequency-
# dependent processing, creating a better reproduction of 3D sound rendering
# over surround sound speakers.
#hq-mode=true
## distance-comp:
# Enables compensation for the speakers' relative distances to the listener.
# This applies the necessary delays and attenuation to make the speakers
# behave as though they are all equidistant, which is important for proper
# playback of 3D sound rendering. Requires the proper distances to be
# specified in the decoder configuration file.
#distance-comp=true
## nfc:
# Enables near-field control filters. This simulates and compensates for low-
# frequency effects caused by the curvature of nearby sound-waves, which
# creates a more realistic perception of sound distance with surround sound
# output. Note that the effect may be stronger or weaker than intended if the
# application doesn't use or specify an appropriate unit scale, or if
# incorrect speaker distances are set. For HRTF output, hrtf-mode must be set
# to one of the ambi* values for this to function.
#nfc=false
## speaker-dist:
# Specifies the speaker distance in meters, used by the near-field control
# filters with surround sound output. For ambisonic output modes, this value
# is the basis for the NFC-HOA Reference Delay parameter (calculated as
# delay_seconds=speaker_dist/343.3). This value is not used when a decoder
# configuration is set for the output mode (since they specify the per-speaker
# distances, overriding this setting), or when the NFC filters are off. Valid
# values range from 0.1 to 10.
#speaker-dist=1
##
## Reverb effect stuff (includes EAX reverb)
##
[reverb]
## boost: (global)
# A global amplification for reverb output, expressed in decibels. The value
# is logarithmic, so +6 will be a scale of (approximately) 2x, +12 will be a
# scale of 4x, etc. Similarly, -6 will be about half, and -12 about 1/4th. A
# value of 0 means no change.
boost=0
##
## WASAPI backend stuff
##
[wasapi]
## spatial-api:
# Specifies whether to use a Spatial Audio stream for playback. This may
# provide expanded capabilities for surround sound and with-height speaker
# configurations. Very experimental.
#spatial-api=false
## exclusive-mode:
# Enables Exlusive mode for playback devices. This uses the device directly,
# allowing lower latencies but prevents the device from being used multiple
# times simultaneously. Ignores the periods setting when enabled, as WASAPI
# automatically sets a buffer size based on the period size.
#exclusive-mode=true
## allow-resampler:
# Specifies whether to allow an extra resampler pass on the output. Enabling
# this will allow the playback device to be set to a different sample rate
# than the actual output can accept, causing the backend to apply its own
# resampling pass after OpenAL Soft mixes the sources and processes effects
# for output.
allow-resampler=true
##
## DirectSound backend stuff
##
[dsound]
##
## Windows Multimedia backend stuff
##
[winmm]
##
## EAX extensions stuff
##
[eax]
## enable: (global)
# Sets whether to enable EAX extensions or not.
enable=true
Linux
## CONFIG - Stereo Speakers
## General stuff
##
[General]
## stereo-mode:
# Specifies if stereo output is treated as being headphones or speakers. With
# headphones, HRTF or crossfeed filters may be used for better audio quality.
# Valid settings are auto, speakers, and headphones.
stereo-mode=speakers
# Sets the default output channel configuration. If left unspecified, one will
# try to be detected from the system, with a fallback to stereo. The available
# values are: mono, stereo, quad, surround51, surround61, surround71,
# surround714, 3d71, ambi1, ambi2, ambi3, ambi4. Note that the ambi*
# configurations output ambisonic channels of the given order (using ACN
# ordering and SN3D normalization by default), which need to be decoded to
# play correctly on speakers.
channels=stereo
## stereo-encoding:
# Specifies the default encoding method for stereo output. Valid values are:
# basic - Standard amplitude panning (aka pair-wise, stereo pair, etc) between
# -30 and +30 degrees.
# uhj - Creates a stereo-compatible two-channel UHJ mix, which encodes some
# continuous surround sound information into stereo output that can be
# decoded with a surround sound receiver.
# tsme - Creates a stereo-compatible two-channel surround matrix encoded mix,
# which encodes some discrete surround sound and height information
# into the stereo output that can be decoded with a surround sound
# receiver.
# hrtf - Uses filters to provide better spatialization of sounds while using
# stereo headphones.
# If crossfeed filters are used, basic stereo mixing is used.
stereo-encoding=basic
## hrtf-mode:
# Specifies the rendering mode for HRTF processing. Setting the mode to full
# (default) applies a unique HRIR filter to each source given its relative
# location, providing the clearest directional response at the cost of the
# highest CPU usage. Setting the mode to ambi1, ambi2, ambi3, or ambi4 will
# instead mix to an ambisonic buffer of the given order, then decode that
# buffer with HRTF filters. Ambi1 has the lowest CPU usage, replacing the per-
# source HRIR filter for a simple 4-channel panning mix, but retains full 3D
# placement at the cost of a more diffuse response. Higher ambisonic orders
# increasingly improve the directional clarity, at the cost of more CPU usage
# (still less than "full", given some number of active sources).
#hrtf-mode=full
## resampler: (global)
# Selects the default resampler used when mixing sources. Valid values are:
# point - nearest sample, no interpolation
# linear - extrapolates samples using a linear slope between samples
# spline - extrapolates samples using a Catmull-Rom spline
# gaussian - extrapolates samples using a 4-point Gaussian filter
# bsinc12 - extrapolates samples using a band-limited Sinc filter (varying between 12 and 24 points, with anti-aliasing)
# fast_bsinc12 - same as bsinc12, except without interpolation between down-sampling scales
# bsinc24 - extrapolates samples using a band-limited Sinc filter (varying between 24 and 48 points, with anti-aliasing)
# fast_bsinc24 - same as bsinc24, except without interpolation between down-sampling scales
# bsinc48 - extrapolates samples using a band-limited Sinc filter (48 points, with anti-aliasing)
# fast_bsinc48 - same as bsinc48, except without interpolation between down-sampling scales
resampler=spline
## period_size:
# Sets the update period size, in sample frames. This is the number of frames
# needed for each mixing update. Acceptable values range between 64 and 8192.
# If left unspecified it will default to 512 sample frames (~10.7ms).
period_size=512
## periods:
# Sets the number of update periods. Higher values create a larger mix ahead,
# which helps protect against skips when the CPU is under load, but increases
# the delay between a sound getting mixed and being heard. Acceptable values
# range between 2 and 16.
periods=3
## sources:
# Sets the maximum number of allocatable sources. Lower values may help for
# systems with apps that try to play more sounds than the CPU can handle.
sources=256
## slots:
# Sets the maximum number of Auxiliary Effect Slots an app can create. A slot
# can use a non-negligible amount of CPU time if an effect is set on it even
# if no sources are feeding it, so this may help when apps use more than the
# system can handle.
slots=64
## front-stablizer:
# Applies filters to "stablize" front sound imaging. A psychoacoustic method
# is used to generate a front-center channel signal from the front-left and
# front-right channels, improving the front response by reducing the combing
# artifacts and phase errors. Consequently, it will only work with channel
# configurations that include front-left, front-right, and front-center.
#front-stablizer=false
## volume-adjust:
# A global volume adjustment for source output, expressed in decibels. The
# value is logarithmic, so +6 will be a scale of (approximately) 2x, +12 will
# be a scale of 4x, etc. Similarly, -6 will be x1/2, and -12 is about x1/4. A
# value of 0 means no change.
#volume-adjust=0
## cf_level:
# Sets the crossfeed level for stereo output. Valid values are:
# 0 - No crossfeed
# 1 - Low crossfeed
# 2 - Middle crossfeed
# 3 - High crossfeed (virtual speakers are closer to itself)
# 4 - Low easy crossfeed
# 5 - Middle easy crossfeed
# 6 - High easy crossfeed
# Users of headphones may want to try various settings. Has no effect on non-
# stereo modes.
#cf_level=0
##
## Ambisonic decoder stuff
##
[decoder]
## hq-mode:
# Enables a high-quality ambisonic decoder. This mode is capable of frequency-
# dependent processing, creating a better reproduction of 3D sound rendering
# over surround sound speakers.
#hq-mode=true
## distance-comp:
# Enables compensation for the speakers' relative distances to the listener.
# This applies the necessary delays and attenuation to make the speakers
# behave as though they are all equidistant, which is important for proper
# playback of 3D sound rendering. Requires the proper distances to be
# specified in the decoder configuration file.
#distance-comp=true
## nfc:
# Enables near-field control filters. This simulates and compensates for low-
# frequency effects caused by the curvature of nearby sound-waves, which
# creates a more realistic perception of sound distance with surround sound
# output. Note that the effect may be stronger or weaker than intended if the
# application doesn't use or specify an appropriate unit scale, or if
# incorrect speaker distances are set. For HRTF output, hrtf-mode must be set
# to one of the ambi* values for this to function.
#nfc=false
## speaker-dist:
# Specifies the speaker distance in meters, used by the near-field control
# filters with surround sound output. For ambisonic output modes, this value
# is the basis for the NFC-HOA Reference Delay parameter (calculated as
# delay_seconds=speaker_dist/343.3). This value is not used when a decoder
# configuration is set for the output mode (since they specify the per-speaker
# distances, overriding this setting), or when the NFC filters are off. Valid
# values range from 0.1 to 10.
#speaker-dist=1
##
## Reverb effect stuff (includes EAX reverb)
##
[reverb]
## boost: (global)
# A global amplification for reverb output, expressed in decibels. The value
# is logarithmic, so +6 will be a scale of (approximately) 2x, +12 will be a
# scale of 4x, etc. Similarly, -6 will be about half, and -12 about 1/4th. A
# value of 0 means no change.
boost=0
##
## ALSA backend stuff
##
[alsa]
## allow-resampler:
# Specifies whether to allow ALSA's built-in resampler. Enabling this will
# allow the playback device to be set to a different sample rate than the
# actual output, causing ALSA to apply its own resampling pass after OpenAL
# Soft resamples and mixes the sources and effects for output.
allow-resampler=true
## mmap:
# Sets whether to try using mmap mode (helps reduce latencies and CPU
# consumption). If mmap isn't available, it will automatically fall back to
# non-mmap mode. True, yes, on, and non-0 values will attempt to use mmap. 0
# and anything else will force mmap off.
mmap=true
##
## PipeWire backend stuff
##
[pipewire]
## assume-audio: (global)
# Causes the backend to succeed initialization even if PipeWire reports no
# audio support. Currently, audio support is detected by the presence of audio
# source or sink nodes, although this can cause false negatives in cases where
# device availability during library initialization is spotty. Future versions
# of PipeWire are expected to have a more robust method to test audio support,
# but in the mean time this can be set to true to assume PipeWire has audio
# support even when no nodes may be reported at initialization time.
#assume-audio=false
## rt-mix:
# Renders samples directly in the real-time processing callback. This allows
# for lower latency and less overall CPU utilization, but can increase the
# risk of underruns when increasing the amount of work the mixer needs to do.
#rt-mix=false
##
## PulseAudio backend stuff
##
[pulse]
## spawn-server: (global)
# Attempts to autospawn a PulseAudio server whenever needed (initializing the
# backend, enumerating devices, etc). Setting autospawn to false in Pulse's
# client.conf will still prevent autospawning even if this is set to true.
#spawn-server=false
## allow-moves: (global)
# Allows PulseAudio to move active streams to different devices. Note that the
# device specifier (seen by applications) will not be updated when this
# occurs, and neither will the AL device configuration (sample rate, format,
# etc).
#allow-moves=true
## fix-rate:
# Specifies whether to match the playback stream's sample rate to the device's
# sample rate. Enabling this forces OpenAL Soft to mix sources and effects
# directly to the actual output rate, avoiding a second resample pass by the
# PulseAudio server.
#fix-rate=false
## adjust-latency:
# Attempts to adjust the overall latency of device playback. Note that this
# may have adverse effects on the resulting internal buffer sizes and mixing
# updates, leading to performance problems and drop-outs. However, if the
# PulseAudio server is creating a lot of latency, enabling this may help make
# it more manageable.
#adjust-latency=false
##
## JACK backend stuff
##
[jack]
## spawn-server: (global)
# Attempts to autospawn a JACK server when initializing.
#spawn-server=false
## rt-mix:
# Renders samples directly in the real-time processing callback. This allows
# for lower latency and less overall CPU utilization, but can increase the
# risk of underruns when increasing the amount of work the mixer needs to do.
rt-mix=true
## connect-ports:
# Attempts to automatically connect the client ports to physical server ports.
# Client ports that fail to connect will leave the remaining channels
# unconnected and silent (the device format won't change to accommodate).
connect-ports=trueStereo headphones (2.0 or 2.1)
Windows
## CONFIG - Headphones - Basic Stereo
## General stuff
##
[General]
## stereo-mode:
# Specifies if stereo output is treated as being headphones or speakers. With
# headphones, HRTF or crossfeed filters may be used for better audio quality.
# Valid settings are auto, speakers, and headphones.
stereo-mode=headphones
# Sets the default output channel configuration. If left unspecified, one will
# try to be detected from the system, with a fallback to stereo. The available
# values are: mono, stereo, quad, surround51, surround61, surround71,
# surround714, 3d71, ambi1, ambi2, ambi3, ambi4. Note that the ambi*
# configurations output ambisonic channels of the given order (using ACN
# ordering and SN3D normalization by default), which need to be decoded to
# play correctly on speakers.
channels=stereo
## stereo-encoding:
# Specifies the default encoding method for stereo output. Valid values are:
# basic - Standard amplitude panning (aka pair-wise, stereo pair, etc) between
# -30 and +30 degrees.
# uhj - Creates a stereo-compatible two-channel UHJ mix, which encodes some
# continuous surround sound information into stereo output that can be
# decoded with a surround sound receiver.
# tsme - Creates a stereo-compatible two-channel surround matrix encoded mix,
# which encodes some discrete surround sound and height information
# into the stereo output that can be decoded with a surround sound
# receiver.
# hrtf - Uses filters to provide better spatialization of sounds while using
# stereo headphones.
# If crossfeed filters are used, basic stereo mixing is used.
stereo-encoding=basic
## hrtf-mode:
# Specifies the rendering mode for HRTF processing. Setting the mode to full
# (default) applies a unique HRIR filter to each source given its relative
# location, providing the clearest directional response at the cost of the
# highest CPU usage. Setting the mode to ambi1, ambi2, ambi3, or ambi4 will
# instead mix to an ambisonic buffer of the given order, then decode that
# buffer with HRTF filters. Ambi1 has the lowest CPU usage, replacing the per-
# source HRIR filter for a simple 4-channel panning mix, but retains full 3D
# placement at the cost of a more diffuse response. Higher ambisonic orders
# increasingly improve the directional clarity, at the cost of more CPU usage
# (still less than "full", given some number of active sources).
#hrtf-mode=full
## resampler: (global)
# Selects the default resampler used when mixing sources. Valid values are:
# point - nearest sample, no interpolation
# linear - extrapolates samples using a linear slope between samples
# spline - extrapolates samples using a Catmull-Rom spline
# gaussian - extrapolates samples using a 4-point Gaussian filter
# bsinc12 - extrapolates samples using a band-limited Sinc filter (varying between 12 and 24 points, with anti-aliasing)
# fast_bsinc12 - same as bsinc12, except without interpolation between down-sampling scales
# bsinc24 - extrapolates samples using a band-limited Sinc filter (varying between 24 and 48 points, with anti-aliasing)
# fast_bsinc24 - same as bsinc24, except without interpolation between down-sampling scales
# bsinc48 - extrapolates samples using a band-limited Sinc filter (48 points, with anti-aliasing)
# fast_bsinc48 - same as bsinc48, except without interpolation between down-sampling scales
resampler=spline
## period_size:
# Sets the update period size, in sample frames. This is the number of frames
# needed for each mixing update. Acceptable values range between 64 and 8192.
# If left unspecified it will default to 512 sample frames (~10.7ms).
period_size=512
## periods:
# Sets the number of update periods. Higher values create a larger mix ahead,
# which helps protect against skips when the CPU is under load, but increases
# the delay between a sound getting mixed and being heard. Acceptable values
# range between 2 and 16.
periods=3
## sources:
# Sets the maximum number of allocatable sources. Lower values may help for
# systems with apps that try to play more sounds than the CPU can handle.
sources=256
## slots:
# Sets the maximum number of Auxiliary Effect Slots an app can create. A slot
# can use a non-negligible amount of CPU time if an effect is set on it even
# if no sources are feeding it, so this may help when apps use more than the
# system can handle.
slots=64
## front-stablizer:
# Applies filters to "stablize" front sound imaging. A psychoacoustic method
# is used to generate a front-center channel signal from the front-left and
# front-right channels, improving the front response by reducing the combing
# artifacts and phase errors. Consequently, it will only work with channel
# configurations that include front-left, front-right, and front-center.
#front-stablizer=false
## volume-adjust:
# A global volume adjustment for source output, expressed in decibels. The
# value is logarithmic, so +6 will be a scale of (approximately) 2x, +12 will
# be a scale of 4x, etc. Similarly, -6 will be x1/2, and -12 is about x1/4. A
# value of 0 means no change.
volume-adjust=0
## cf_level:
# Sets the crossfeed level for stereo output. Valid values are:
# 0 - No crossfeed
# 1 - Low crossfeed
# 2 - Middle crossfeed
# 3 - High crossfeed (virtual speakers are closer to itself)
# 4 - Low easy crossfeed
# 5 - Middle easy crossfeed
# 6 - High easy crossfeed
# Users of headphones may want to try various settings. Has no effect on non-
# stereo modes.
#cf_level=0
##
## Ambisonic decoder stuff
##
[decoder]
## hq-mode:
# Enables a high-quality ambisonic decoder. This mode is capable of frequency-
# dependent processing, creating a better reproduction of 3D sound rendering
# over surround sound speakers.
#hq-mode=true
## distance-comp:
# Enables compensation for the speakers' relative distances to the listener.
# This applies the necessary delays and attenuation to make the speakers
# behave as though they are all equidistant, which is important for proper
# playback of 3D sound rendering. Requires the proper distances to be
# specified in the decoder configuration file.
#distance-comp=true
## nfc:
# Enables near-field control filters. This simulates and compensates for low-
# frequency effects caused by the curvature of nearby sound-waves, which
# creates a more realistic perception of sound distance with surround sound
# output. Note that the effect may be stronger or weaker than intended if the
# application doesn't use or specify an appropriate unit scale, or if
# incorrect speaker distances are set. For HRTF output, hrtf-mode must be set
# to one of the ambi* values for this to function.
#nfc=false
## speaker-dist:
# Specifies the speaker distance in meters, used by the near-field control
# filters with surround sound output. For ambisonic output modes, this value
# is the basis for the NFC-HOA Reference Delay parameter (calculated as
# delay_seconds=speaker_dist/343.3). This value is not used when a decoder
# configuration is set for the output mode (since they specify the per-speaker
# distances, overriding this setting), or when the NFC filters are off. Valid
# values range from 0.1 to 10.
#speaker-dist=1
##
## Reverb effect stuff (includes EAX reverb)
##
[reverb]
## boost: (global)
# A global amplification for reverb output, expressed in decibels. The value
# is logarithmic, so +6 will be a scale of (approximately) 2x, +12 will be a
# scale of 4x, etc. Similarly, -6 will be about half, and -12 about 1/4th. A
# value of 0 means no change.
boost=0
##
## WASAPI backend stuff
##
[wasapi]
## spatial-api:
# Specifies whether to use a Spatial Audio stream for playback. This may
# provide expanded capabilities for surround sound and with-height speaker
# configurations. Very experimental.
#spatial-api=false
## exclusive-mode:
# Enables Exlusive mode for playback devices. This uses the device directly,
# allowing lower latencies but prevents the device from being used multiple
# times simultaneously. Ignores the periods setting when enabled, as WASAPI
# automatically sets a buffer size based on the period size.
#exclusive-mode=true
## allow-resampler:
# Specifies whether to allow an extra resampler pass on the output. Enabling
# this will allow the playback device to be set to a different sample rate
# than the actual output can accept, causing the backend to apply its own
# resampling pass after OpenAL Soft mixes the sources and processes effects
# for output.
allow-resampler=true
##
## DirectSound backend stuff
##
[dsound]
##
## Windows Multimedia backend stuff
##
[winmm]
##
## EAX extensions stuff
##
[eax]
## enable: (global)
# Sets whether to enable EAX extensions or not.
enable=trueLinux
## CONFIG - Headphones - Basic Stereo
## General stuff
##
[General]
## stereo-mode:
# Specifies if stereo output is treated as being headphones or speakers. With
# headphones, HRTF or crossfeed filters may be used for better audio quality.
# Valid settings are auto, speakers, and headphones.
stereo-mode=headphones
# Sets the default output channel configuration. If left unspecified, one will
# try to be detected from the system, with a fallback to stereo. The available
# values are: mono, stereo, quad, surround51, surround61, surround71,
# surround714, 3d71, ambi1, ambi2, ambi3, ambi4. Note that the ambi*
# configurations output ambisonic channels of the given order (using ACN
# ordering and SN3D normalization by default), which need to be decoded to
# play correctly on speakers.
channels=stereo
## stereo-encoding:
# Specifies the default encoding method for stereo output. Valid values are:
# basic - Standard amplitude panning (aka pair-wise, stereo pair, etc) between
# -30 and +30 degrees.
# uhj - Creates a stereo-compatible two-channel UHJ mix, which encodes some
# continuous surround sound information into stereo output that can be
# decoded with a surround sound receiver.
# tsme - Creates a stereo-compatible two-channel surround matrix encoded mix,
# which encodes some discrete surround sound and height information
# into the stereo output that can be decoded with a surround sound
# receiver.
# hrtf - Uses filters to provide better spatialization of sounds while using
# stereo headphones.
# If crossfeed filters are used, basic stereo mixing is used.
stereo-encoding=basic
## hrtf-mode:
# Specifies the rendering mode for HRTF processing. Setting the mode to full
# (default) applies a unique HRIR filter to each source given its relative
# location, providing the clearest directional response at the cost of the
# highest CPU usage. Setting the mode to ambi1, ambi2, ambi3, or ambi4 will
# instead mix to an ambisonic buffer of the given order, then decode that
# buffer with HRTF filters. Ambi1 has the lowest CPU usage, replacing the per-
# source HRIR filter for a simple 4-channel panning mix, but retains full 3D
# placement at the cost of a more diffuse response. Higher ambisonic orders
# increasingly improve the directional clarity, at the cost of more CPU usage
# (still less than "full", given some number of active sources).
#hrtf-mode=full
## resampler: (global)
# Selects the default resampler used when mixing sources. Valid values are:
# point - nearest sample, no interpolation
# linear - extrapolates samples using a linear slope between samples
# spline - extrapolates samples using a Catmull-Rom spline
# gaussian - extrapolates samples using a 4-point Gaussian filter
# bsinc12 - extrapolates samples using a band-limited Sinc filter (varying between 12 and 24 points, with anti-aliasing)
# fast_bsinc12 - same as bsinc12, except without interpolation between down-sampling scales
# bsinc24 - extrapolates samples using a band-limited Sinc filter (varying between 24 and 48 points, with anti-aliasing)
# fast_bsinc24 - same as bsinc24, except without interpolation between down-sampling scales
# bsinc48 - extrapolates samples using a band-limited Sinc filter (48 points, with anti-aliasing)
# fast_bsinc48 - same as bsinc48, except without interpolation between down-sampling scales
resampler=spline
## period_size:
# Sets the update period size, in sample frames. This is the number of frames
# needed for each mixing update. Acceptable values range between 64 and 8192.
# If left unspecified it will default to 512 sample frames (~10.7ms).
period_size=512
## periods:
# Sets the number of update periods. Higher values create a larger mix ahead,
# which helps protect against skips when the CPU is under load, but increases
# the delay between a sound getting mixed and being heard. Acceptable values
# range between 2 and 16.
periods=3
## sources:
# Sets the maximum number of allocatable sources. Lower values may help for
# systems with apps that try to play more sounds than the CPU can handle.
sources=256
## slots:
# Sets the maximum number of Auxiliary Effect Slots an app can create. A slot
# can use a non-negligible amount of CPU time if an effect is set on it even
# if no sources are feeding it, so this may help when apps use more than the
# system can handle.
slots=64
## front-stablizer:
# Applies filters to "stablize" front sound imaging. A psychoacoustic method
# is used to generate a front-center channel signal from the front-left and
# front-right channels, improving the front response by reducing the combing
# artifacts and phase errors. Consequently, it will only work with channel
# configurations that include front-left, front-right, and front-center.
#front-stablizer=false
## volume-adjust:
# A global volume adjustment for source output, expressed in decibels. The
# value is logarithmic, so +6 will be a scale of (approximately) 2x, +12 will
# be a scale of 4x, etc. Similarly, -6 will be x1/2, and -12 is about x1/4. A
# value of 0 means no change.
#volume-adjust=0
## cf_level:
# Sets the crossfeed level for stereo output. Valid values are:
# 0 - No crossfeed
# 1 - Low crossfeed
# 2 - Middle crossfeed
# 3 - High crossfeed (virtual speakers are closer to itself)
# 4 - Low easy crossfeed
# 5 - Middle easy crossfeed
# 6 - High easy crossfeed
# Users of headphones may want to try various settings. Has no effect on non-
# stereo modes.
#cf_level=0
##
## Ambisonic decoder stuff
##
[decoder]
## hq-mode:
# Enables a high-quality ambisonic decoder. This mode is capable of frequency-
# dependent processing, creating a better reproduction of 3D sound rendering
# over surround sound speakers.
# hq-mode=true
## distance-comp:
# Enables compensation for the speakers' relative distances to the listener.
# This applies the necessary delays and attenuation to make the speakers
# behave as though they are all equidistant, which is important for proper
# playback of 3D sound rendering. Requires the proper distances to be
# specified in the decoder configuration file.
#distance-comp=true
## nfc:
# Enables near-field control filters. This simulates and compensates for low-
# frequency effects caused by the curvature of nearby sound-waves, which
# creates a more realistic perception of sound distance with surround sound
# output. Note that the effect may be stronger or weaker than intended if the
# application doesn't use or specify an appropriate unit scale, or if
# incorrect speaker distances are set. For HRTF output, hrtf-mode must be set
# to one of the ambi* values for this to function.
#nfc=false
## speaker-dist:
# Specifies the speaker distance in meters, used by the near-field control
# filters with surround sound output. For ambisonic output modes, this value
# is the basis for the NFC-HOA Reference Delay parameter (calculated as
# delay_seconds=speaker_dist/343.3). This value is not used when a decoder
# configuration is set for the output mode (since they specify the per-speaker
# distances, overriding this setting), or when the NFC filters are off. Valid
# values range from 0.1 to 10.
# speaker-dist=1
##
## Reverb effect stuff (includes EAX reverb)
##
[reverb]
## boost: (global)
# A global amplification for reverb output, expressed in decibels. The value
# is logarithmic, so +6 will be a scale of (approximately) 2x, +12 will be a
# scale of 4x, etc. Similarly, -6 will be about half, and -12 about 1/4th. A
# value of 0 means no change.
boost=0
##
## ALSA backend stuff
##
[alsa]
## allow-resampler:
# Specifies whether to allow ALSA's built-in resampler. Enabling this will
# allow the playback device to be set to a different sample rate than the
# actual output, causing ALSA to apply its own resampling pass after OpenAL
# Soft resamples and mixes the sources and effects for output.
allow-resampler=true
## mmap:
# Sets whether to try using mmap mode (helps reduce latencies and CPU
# consumption). If mmap isn't available, it will automatically fall back to
# non-mmap mode. True, yes, on, and non-0 values will attempt to use mmap. 0
# and anything else will force mmap off.
mmap=true
##
## PipeWire backend stuff
##
[pipewire]
## assume-audio: (global)
# Causes the backend to succeed initialization even if PipeWire reports no
# audio support. Currently, audio support is detected by the presence of audio
# source or sink nodes, although this can cause false negatives in cases where
# device availability during library initialization is spotty. Future versions
# of PipeWire are expected to have a more robust method to test audio support,
# but in the mean time this can be set to true to assume PipeWire has audio
# support even when no nodes may be reported at initialization time.
#assume-audio=false
## rt-mix:
# Renders samples directly in the real-time processing callback. This allows
# for lower latency and less overall CPU utilization, but can increase the
# risk of underruns when increasing the amount of work the mixer needs to do.
#rt-mix=false
##
## PulseAudio backend stuff
##
[pulse]
## spawn-server: (global)
# Attempts to autospawn a PulseAudio server whenever needed (initializing the
# backend, enumerating devices, etc). Setting autospawn to false in Pulse's
# client.conf will still prevent autospawning even if this is set to true.
#spawn-server=false
## allow-moves: (global)
# Allows PulseAudio to move active streams to different devices. Note that the
# device specifier (seen by applications) will not be updated when this
# occurs, and neither will the AL device configuration (sample rate, format,
# etc).
#allow-moves=true
## fix-rate:
# Specifies whether to match the playback stream's sample rate to the device's
# sample rate. Enabling this forces OpenAL Soft to mix sources and effects
# directly to the actual output rate, avoiding a second resample pass by the
# PulseAudio server.
#fix-rate=false
## adjust-latency:
# Attempts to adjust the overall latency of device playback. Note that this
# may have adverse effects on the resulting internal buffer sizes and mixing
# updates, leading to performance problems and drop-outs. However, if the
# PulseAudio server is creating a lot of latency, enabling this may help make
# it more manageable.
#adjust-latency=false
##
## JACK backend stuff
##
[jack]
## spawn-server: (global)
# Attempts to autospawn a JACK server when initializing.
#spawn-server=false
## rt-mix:
# Renders samples directly in the real-time processing callback. This allows
# for lower latency and less overall CPU utilization, but can increase the
# risk of underruns when increasing the amount of work the mixer needs to do.
rt-mix=true
## connect-ports:
# Attempts to automatically connect the client ports to physical server ports.
# Client ports that fail to connect will leave the remaining channels
# unconnected and silent (the device format won't change to accommodate).
connect-ports=trueStereo headphones with HRTF enabled
Windows
## CONFIG - Headphones + HRTF
## General stuff
##
[General]
## stereo-mode:
# Specifies if stereo output is treated as being headphones or speakers. With
# headphones, HRTF or crossfeed filters may be used for better audio quality.
# Valid settings are auto, speakers, and headphones.
stereo-mode=headphones
# Sets the default output channel configuration. If left unspecified, one will
# try to be detected from the system, with a fallback to stereo. The available
# values are: mono, stereo, quad, surround51, surround61, surround71,
# surround714, 3d71, ambi1, ambi2, ambi3, ambi4. Note that the ambi*
# configurations output ambisonic channels of the given order (using ACN
# ordering and SN3D normalization by default), which need to be decoded to
# play correctly on speakers.
channels=stereo
## stereo-encoding:
# Specifies the default encoding method for stereo output. Valid values are:
# basic - Standard amplitude panning (aka pair-wise, stereo pair, etc) between
# -30 and +30 degrees.
# uhj - Creates a stereo-compatible two-channel UHJ mix, which encodes some
# continuous surround sound information into stereo output that can be
# decoded with a surround sound receiver.
# tsme - Creates a stereo-compatible two-channel surround matrix encoded mix,
# which encodes some discrete surround sound and height information
# into the stereo output that can be decoded with a surround sound
# receiver.
# hrtf - Uses filters to provide better spatialization of sounds while using
# stereo headphones.
# If crossfeed filters are used, basic stereo mixing is used.
stereo-encoding=hrtf
## hrtf-mode:
# Specifies the rendering mode for HRTF processing. Setting the mode to full
# (default) applies a unique HRIR filter to each source given its relative
# location, providing the clearest directional response at the cost of the
# highest CPU usage. Setting the mode to ambi1, ambi2, ambi3, or ambi4 will
# instead mix to an ambisonic buffer of the given order, then decode that
# buffer with HRTF filters. Ambi1 has the lowest CPU usage, replacing the per-
# source HRIR filter for a simple 4-channel panning mix, but retains full 3D
# placement at the cost of a more diffuse response. Higher ambisonic orders
# increasingly improve the directional clarity, at the cost of more CPU usage
# (still less than "full", given some number of active sources).
hrtf-mode=full
## resampler: (global)
# Selects the default resampler used when mixing sources. Valid values are:
# point - nearest sample, no interpolation
# linear - extrapolates samples using a linear slope between samples
# spline - extrapolates samples using a Catmull-Rom spline
# gaussian - extrapolates samples using a 4-point Gaussian filter
# bsinc12 - extrapolates samples using a band-limited Sinc filter (varying between 12 and 24 points, with anti-aliasing)
# fast_bsinc12 - same as bsinc12, except without interpolation between down-sampling scales
# bsinc24 - extrapolates samples using a band-limited Sinc filter (varying between 24 and 48 points, with anti-aliasing)
# fast_bsinc24 - same as bsinc24, except without interpolation between down-sampling scales
# bsinc48 - extrapolates samples using a band-limited Sinc filter (48 points, with anti-aliasing)
# fast_bsinc48 - same as bsinc48, except without interpolation between down-sampling scales
resampler=spline
## period_size:
# Sets the update period size, in sample frames. This is the number of frames
# needed for each mixing update. Acceptable values range between 64 and 8192.
# If left unspecified it will default to 512 sample frames (~10.7ms).
period_size=512
## periods:
# Sets the number of update periods. Higher values create a larger mix ahead,
# which helps protect against skips when the CPU is under load, but increases
# the delay between a sound getting mixed and being heard. Acceptable values
# range between 2 and 16.
periods=3
## sources:
# Sets the maximum number of allocatable sources. Lower values may help for
# systems with apps that try to play more sounds than the CPU can handle.
sources=256
## slots:
# Sets the maximum number of Auxiliary Effect Slots an app can create. A slot
# can use a non-negligible amount of CPU time if an effect is set on it even
# if no sources are feeding it, so this may help when apps use more than the
# system can handle.
slots=64
## front-stablizer:
# Applies filters to "stablize" front sound imaging. A psychoacoustic method
# is used to generate a front-center channel signal from the front-left and
# front-right channels, improving the front response by reducing the combing
# artifacts and phase errors. Consequently, it will only work with channel
# configurations that include front-left, front-right, and front-center.
#front-stablizer=false
## volume-adjust:
# A global volume adjustment for source output, expressed in decibels. The
# value is logarithmic, so +6 will be a scale of (approximately) 2x, +12 will
# be a scale of 4x, etc. Similarly, -6 will be x1/2, and -12 is about x1/4. A
# value of 0 means no change.
#volume-adjust=0
## cf_level:
# Sets the crossfeed level for stereo output. Valid values are:
# 0 - No crossfeed
# 1 - Low crossfeed
# 2 - Middle crossfeed
# 3 - High crossfeed (virtual speakers are closer to itself)
# 4 - Low easy crossfeed
# 5 - Middle easy crossfeed
# 6 - High easy crossfeed
# Users of headphones may want to try various settings. Has no effect on non-
# stereo modes.
cf_level=0
##
## Ambisonic decoder stuff
##
[decoder]
## hq-mode:
# Enables a high-quality ambisonic decoder. This mode is capable of frequency-
# dependent processing, creating a better reproduction of 3D sound rendering
# over surround sound speakers.
# hq-mode=true
## distance-comp:
# Enables compensation for the speakers' relative distances to the listener.
# This applies the necessary delays and attenuation to make the speakers
# behave as though they are all equidistant, which is important for proper
# playback of 3D sound rendering. Requires the proper distances to be
# specified in the decoder configuration file.
distance-comp=false
## nfc:
# Enables near-field control filters. This simulates and compensates for low-
# frequency effects caused by the curvature of nearby sound-waves, which
# creates a more realistic perception of sound distance with surround sound
# output. Note that the effect may be stronger or weaker than intended if the
# application doesn't use or specify an appropriate unit scale, or if
# incorrect speaker distances are set. For HRTF output, hrtf-mode must be set
# to one of the ambi* values for this to function.
nfc=false
## speaker-dist:
# Specifies the speaker distance in meters, used by the near-field control
# filters with surround sound output. For ambisonic output modes, this value
# is the basis for the NFC-HOA Reference Delay parameter (calculated as
# delay_seconds=speaker_dist/343.3). This value is not used when a decoder
# configuration is set for the output mode (since they specify the per-speaker
# distances, overriding this setting), or when the NFC filters are off. Valid
# values range from 0.1 to 10.
#speaker-dist=1
##
## Reverb effect stuff (includes EAX reverb)
##
[reverb]
## boost: (global)
# A global amplification for reverb output, expressed in decibels. The value
# is logarithmic, so +6 will be a scale of (approximately) 2x, +12 will be a
# scale of 4x, etc. Similarly, -6 will be about half, and -12 about 1/4th. A
# value of 0 means no change.
boost=0
##
## WASAPI backend stuff
##
[wasapi]
## spatial-api:
# Specifies whether to use a Spatial Audio stream for playback. This may
# provide expanded capabilities for surround sound and with-height speaker
# configurations. Very experimental.
#spatial-api=false
## exclusive-mode:
# Enables Exlusive mode for playback devices. This uses the device directly,
# allowing lower latencies but prevents the device from being used multiple
# times simultaneously. Ignores the periods setting when enabled, as WASAPI
# automatically sets a buffer size based on the period size.
#exclusive-mode=true
## allow-resampler:
# Specifies whether to allow an extra resampler pass on the output. Enabling
# this will allow the playback device to be set to a different sample rate
# than the actual output can accept, causing the backend to apply its own
# resampling pass after OpenAL Soft mixes the sources and processes effects
# for output.
allow-resampler=true
##
## DirectSound backend stuff
##
[dsound]
##
## Windows Multimedia backend stuff
##
[winmm]
##
## EAX extensions stuff
##
[eax]
## enable: (global)
# Sets whether to enable EAX extensions or not.
enable=trueLinux
## CONFIG - Headphones + HRTF
## General stuff
##
[General]
## stereo-mode:
# Specifies if stereo output is treated as being headphones or speakers. With
# headphones, HRTF or crossfeed filters may be used for better audio quality.
# Valid settings are auto, speakers, and headphones.
stereo-mode=headphones
# Sets the default output channel configuration. If left unspecified, one will
# try to be detected from the system, with a fallback to stereo. The available
# values are: mono, stereo, quad, surround51, surround61, surround71,
# surround714, 3d71, ambi1, ambi2, ambi3, ambi4. Note that the ambi*
# configurations output ambisonic channels of the given order (using ACN
# ordering and SN3D normalization by default), which need to be decoded to
# play correctly on speakers.
channels=stereo
## stereo-encoding:
# Specifies the default encoding method for stereo output. Valid values are:
# basic - Standard amplitude panning (aka pair-wise, stereo pair, etc) between
# -30 and +30 degrees.
# uhj - Creates a stereo-compatible two-channel UHJ mix, which encodes some
# continuous surround sound information into stereo output that can be
# decoded with a surround sound receiver.
# tsme - Creates a stereo-compatible two-channel surround matrix encoded mix,
# which encodes some discrete surround sound and height information
# into the stereo output that can be decoded with a surround sound
# receiver.
# hrtf - Uses filters to provide better spatialization of sounds while using
# stereo headphones.
# If crossfeed filters are used, basic stereo mixing is used.
stereo-encoding=hrtf
## hrtf-mode:
# Specifies the rendering mode for HRTF processing. Setting the mode to full
# (default) applies a unique HRIR filter to each source given its relative
# location, providing the clearest directional response at the cost of the
# highest CPU usage. Setting the mode to ambi1, ambi2, ambi3, or ambi4 will
# instead mix to an ambisonic buffer of the given order, then decode that
# buffer with HRTF filters. Ambi1 has the lowest CPU usage, replacing the per-
# source HRIR filter for a simple 4-channel panning mix, but retains full 3D
# placement at the cost of a more diffuse response. Higher ambisonic orders
# increasingly improve the directional clarity, at the cost of more CPU usage
# (still less than "full", given some number of active sources).
hrtf-mode=full
## resampler: (global)
# Selects the default resampler used when mixing sources. Valid values are:
# point - nearest sample, no interpolation
# linear - extrapolates samples using a linear slope between samples
# spline - extrapolates samples using a Catmull-Rom spline
# gaussian - extrapolates samples using a 4-point Gaussian filter
# bsinc12 - extrapolates samples using a band-limited Sinc filter (varying between 12 and 24 points, with anti-aliasing)
# fast_bsinc12 - same as bsinc12, except without interpolation between down-sampling scales
# bsinc24 - extrapolates samples using a band-limited Sinc filter (varying between 24 and 48 points, with anti-aliasing)
# fast_bsinc24 - same as bsinc24, except without interpolation between down-sampling scales
# bsinc48 - extrapolates samples using a band-limited Sinc filter (48 points, with anti-aliasing)
# fast_bsinc48 - same as bsinc48, except without interpolation between down-sampling scales
resampler=spline
## period_size:
# Sets the update period size, in sample frames. This is the number of frames
# needed for each mixing update. Acceptable values range between 64 and 8192.
# If left unspecified it will default to 512 sample frames (~10.7ms).
period_size=512
## periods:
# Sets the number of update periods. Higher values create a larger mix ahead,
# which helps protect against skips when the CPU is under load, but increases
# the delay between a sound getting mixed and being heard. Acceptable values
# range between 2 and 16.
periods=3
## sources:
# Sets the maximum number of allocatable sources. Lower values may help for
# systems with apps that try to play more sounds than the CPU can handle.
sources=256
## slots:
# Sets the maximum number of Auxiliary Effect Slots an app can create. A slot
# can use a non-negligible amount of CPU time if an effect is set on it even
# if no sources are feeding it, so this may help when apps use more than the
# system can handle.
slots=64
## front-stablizer:
# Applies filters to "stablize" front sound imaging. A psychoacoustic method
# is used to generate a front-center channel signal from the front-left and
# front-right channels, improving the front response by reducing the combing
# artifacts and phase errors. Consequently, it will only work with channel
# configurations that include front-left, front-right, and front-center.
#front-stablizer=false
## volume-adjust:
# A global volume adjustment for source output, expressed in decibels. The
# value is logarithmic, so +6 will be a scale of (approximately) 2x, +12 will
# be a scale of 4x, etc. Similarly, -6 will be x1/2, and -12 is about x1/4. A
# value of 0 means no change.
#volume-adjust=0
## cf_level:
# Sets the crossfeed level for stereo output. Valid values are:
# 0 - No crossfeed
# 1 - Low crossfeed
# 2 - Middle crossfeed
# 3 - High crossfeed (virtual speakers are closer to itself)
# 4 - Low easy crossfeed
# 5 - Middle easy crossfeed
# 6 - High easy crossfeed
# Users of headphones may want to try various settings. Has no effect on non-
# stereo modes.
cf_level=0
##
## Ambisonic decoder stuff
##
[decoder]
## hq-mode:
# Enables a high-quality ambisonic decoder. This mode is capable of frequency-
# dependent processing, creating a better reproduction of 3D sound rendering
# over surround sound speakers.
# hq-mode=true
## distance-comp:
# Enables compensation for the speakers' relative distances to the listener.
# This applies the necessary delays and attenuation to make the speakers
# behave as though they are all equidistant, which is important for proper
# playback of 3D sound rendering. Requires the proper distances to be
# specified in the decoder configuration file.
distance-comp=false
## nfc:
# Enables near-field control filters. This simulates and compensates for low-
# frequency effects caused by the curvature of nearby sound-waves, which
# creates a more realistic perception of sound distance with surround sound
# output. Note that the effect may be stronger or weaker than intended if the
# application doesn't use or specify an appropriate unit scale, or if
# incorrect speaker distances are set. For HRTF output, hrtf-mode must be set
# to one of the ambi* values for this to function.
nfc=false
## speaker-dist:
# Specifies the speaker distance in meters, used by the near-field control
# filters with surround sound output. For ambisonic output modes, this value
# is the basis for the NFC-HOA Reference Delay parameter (calculated as
# delay_seconds=speaker_dist/343.3). This value is not used when a decoder
# configuration is set for the output mode (since they specify the per-speaker
# distances, overriding this setting), or when the NFC filters are off. Valid
# values range from 0.1 to 10.
#speaker-dist=1
##
## Reverb effect stuff (includes EAX reverb)
##
[reverb]
## boost: (global)
# A global amplification for reverb output, expressed in decibels. The value
# is logarithmic, so +6 will be a scale of (approximately) 2x, +12 will be a
# scale of 4x, etc. Similarly, -6 will be about half, and -12 about 1/4th. A
# value of 0 means no change.
boost=0
##
## ALSA backend stuff
##
[alsa]
## allow-resampler:
# Specifies whether to allow ALSA's built-in resampler. Enabling this will
# allow the playback device to be set to a different sample rate than the
# actual output, causing ALSA to apply its own resampling pass after OpenAL
# Soft resamples and mixes the sources and effects for output.
allow-resampler=true
## mmap:
# Sets whether to try using mmap mode (helps reduce latencies and CPU
# consumption). If mmap isn't available, it will automatically fall back to
# non-mmap mode. True, yes, on, and non-0 values will attempt to use mmap. 0
# and anything else will force mmap off.
mmap=true
##
## PipeWire backend stuff
##
[pipewire]
## assume-audio: (global)
# Causes the backend to succeed initialization even if PipeWire reports no
# audio support. Currently, audio support is detected by the presence of audio
# source or sink nodes, although this can cause false negatives in cases where
# device availability during library initialization is spotty. Future versions
# of PipeWire are expected to have a more robust method to test audio support,
# but in the mean time this can be set to true to assume PipeWire has audio
# support even when no nodes may be reported at initialization time.
#assume-audio=false
## rt-mix:
# Renders samples directly in the real-time processing callback. This allows
# for lower latency and less overall CPU utilization, but can increase the
# risk of underruns when increasing the amount of work the mixer needs to do.
#rt-mix=false
##
## PulseAudio backend stuff
##
[pulse]
## spawn-server: (global)
# Attempts to autospawn a PulseAudio server whenever needed (initializing the
# backend, enumerating devices, etc). Setting autospawn to false in Pulse's
# client.conf will still prevent autospawning even if this is set to true.
#spawn-server=false
## allow-moves: (global)
# Allows PulseAudio to move active streams to different devices. Note that the
# device specifier (seen by applications) will not be updated when this
# occurs, and neither will the AL device configuration (sample rate, format,
# etc).
#allow-moves=true
## fix-rate:
# Specifies whether to match the playback stream's sample rate to the device's
# sample rate. Enabling this forces OpenAL Soft to mix sources and effects
# directly to the actual output rate, avoiding a second resample pass by the
# PulseAudio server.
#fix-rate=false
## adjust-latency:
# Attempts to adjust the overall latency of device playback. Note that this
# may have adverse effects on the resulting internal buffer sizes and mixing
# updates, leading to performance problems and drop-outs. However, if the
# PulseAudio server is creating a lot of latency, enabling this may help make
# it more manageable.
#adjust-latency=false
##
## JACK backend stuff
##
[jack]
## spawn-server: (global)
# Attempts to autospawn a JACK server when initializing.
#spawn-server=false
## rt-mix:
# Renders samples directly in the real-time processing callback. This allows
# for lower latency and less overall CPU utilization, but can increase the
# risk of underruns when increasing the amount of work the mixer needs to do.
rt-mix=true
## connect-ports:
# Attempts to automatically connect the client ports to physical server ports.
# Client ports that fail to connect will leave the remaining channels
# unconnected and silent (the device format won't change to accommodate).
connect-ports=true*Might require a custom HRTF profile - depending on physical characteristics of your ears
File path
Windows
- Per-user:
C:\Users\%USERNAME%\AppData\Roaming\alsoft.ini - Game-specific:
C:\UT2004\System\alsoft.ini
Linux
- System-wide:
/etc/xdg/alsoft.conf - Per-user:
~/.config/alsoft.conf - Game-specific:
~/.ut2004/System/alsoft.conf
