This commit is contained in:
PatriceJiang 2021-02-20 17:25:20 +08:00
parent 8a0e484b04
commit 556f37a4c1
16 changed files with 993 additions and 1 deletions

BIN
ohos/arm64-v8a/bin/alrecord Executable file

Binary file not shown.

BIN
ohos/arm64-v8a/bin/altonegen Executable file

Binary file not shown.

BIN
ohos/arm64-v8a/bin/openal-info Executable file

Binary file not shown.

View File

@ -0,0 +1,19 @@
#----------------------------------------------------------------
# Generated CMake target import file for configuration "Release".
#----------------------------------------------------------------
# Commands may need to know the format version.
set(CMAKE_IMPORT_FILE_VERSION 1)
# Import target "OpenAL::OpenAL" for configuration "Release"
set_property(TARGET OpenAL::OpenAL APPEND PROPERTY IMPORTED_CONFIGURATIONS RELEASE)
set_target_properties(OpenAL::OpenAL PROPERTIES
IMPORTED_LINK_INTERFACE_LANGUAGES_RELEASE "CXX"
IMPORTED_LOCATION_RELEASE "${_IMPORT_PREFIX}/lib/libopenal.a"
)
list(APPEND _IMPORT_CHECK_TARGETS OpenAL::OpenAL )
list(APPEND _IMPORT_CHECK_FILES_FOR_OpenAL::OpenAL "${_IMPORT_PREFIX}/lib/libopenal.a" )
# Commands beyond this point should not need to know the version.
set(CMAKE_IMPORT_FILE_VERSION)

View File

@ -0,0 +1,100 @@
# Generated by CMake
if("${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}" LESS 2.5)
message(FATAL_ERROR "CMake >= 2.6.0 required")
endif()
cmake_policy(PUSH)
cmake_policy(VERSION 2.6...3.17)
#----------------------------------------------------------------
# Generated CMake target import file.
#----------------------------------------------------------------
# Commands may need to know the format version.
set(CMAKE_IMPORT_FILE_VERSION 1)
# Protect against multiple inclusion, which would fail when already imported targets are added once more.
set(_targetsDefined)
set(_targetsNotDefined)
set(_expectedTargets)
foreach(_expectedTarget OpenAL::OpenAL)
list(APPEND _expectedTargets ${_expectedTarget})
if(NOT TARGET ${_expectedTarget})
list(APPEND _targetsNotDefined ${_expectedTarget})
endif()
if(TARGET ${_expectedTarget})
list(APPEND _targetsDefined ${_expectedTarget})
endif()
endforeach()
if("${_targetsDefined}" STREQUAL "${_expectedTargets}")
unset(_targetsDefined)
unset(_targetsNotDefined)
unset(_expectedTargets)
set(CMAKE_IMPORT_FILE_VERSION)
cmake_policy(POP)
return()
endif()
if(NOT "${_targetsDefined}" STREQUAL "")
message(FATAL_ERROR "Some (but not all) targets in this export set were already defined.\nTargets Defined: ${_targetsDefined}\nTargets not yet defined: ${_targetsNotDefined}\n")
endif()
unset(_targetsDefined)
unset(_targetsNotDefined)
unset(_expectedTargets)
# Compute the installation prefix relative to this file.
get_filename_component(_IMPORT_PREFIX "${CMAKE_CURRENT_LIST_FILE}" PATH)
get_filename_component(_IMPORT_PREFIX "${_IMPORT_PREFIX}" PATH)
get_filename_component(_IMPORT_PREFIX "${_IMPORT_PREFIX}" PATH)
get_filename_component(_IMPORT_PREFIX "${_IMPORT_PREFIX}" PATH)
if(_IMPORT_PREFIX STREQUAL "/")
set(_IMPORT_PREFIX "")
endif()
# Create imported target OpenAL::OpenAL
add_library(OpenAL::OpenAL STATIC IMPORTED)
set_target_properties(OpenAL::OpenAL PROPERTIES
INTERFACE_COMPILE_DEFINITIONS "AL_LIBTYPE_STATIC"
INTERFACE_INCLUDE_DIRECTORIES "${_IMPORT_PREFIX}/include;${_IMPORT_PREFIX}/include;${_IMPORT_PREFIX}/include/AL"
INTERFACE_LINK_LIBRARIES "\$<LINK_ONLY:-pthread>;\$<LINK_ONLY:OpenSLES>;\$<LINK_ONLY:dl>;\$<LINK_ONLY:m>"
)
if(CMAKE_VERSION VERSION_LESS 2.8.12)
message(FATAL_ERROR "This file relies on consumers using CMake 2.8.12 or greater.")
endif()
# Load information for each installed configuration.
get_filename_component(_DIR "${CMAKE_CURRENT_LIST_FILE}" PATH)
file(GLOB CONFIG_FILES "${_DIR}/OpenALConfig-*.cmake")
foreach(f ${CONFIG_FILES})
include(${f})
endforeach()
# Cleanup temporary variables.
set(_IMPORT_PREFIX)
# Loop over all imported files and verify that they actually exist
foreach(target ${_IMPORT_CHECK_TARGETS} )
foreach(file ${_IMPORT_CHECK_FILES_FOR_${target}} )
if(NOT EXISTS "${file}" )
message(FATAL_ERROR "The imported target \"${target}\" references the file
\"${file}\"
but this file does not exist. Possible reasons include:
* The file was deleted, renamed, or moved to another location.
* An install or uninstall procedure did not complete successfully.
* The installation package was faulty and contained
\"${CMAKE_CURRENT_LIST_FILE}\"
but not all the files it references.
")
endif()
endforeach()
unset(_IMPORT_CHECK_FILES_FOR_${target})
endforeach()
unset(_IMPORT_CHECK_TARGETS)
# This file does not depend on other imported targets which have
# been exported from the same project but in a separate export set.
# Commands beyond this point should not need to know the version.
set(CMAKE_IMPORT_FILE_VERSION)
cmake_policy(POP)

Binary file not shown.

View File

@ -8,5 +8,5 @@ Description: OpenAL is a cross-platform 3D audio API
Requires:
Version: 1.21.1
Libs: -L${libdir} -lopenal
Libs.private: -pthread -ldl -lm
Libs.private: -pthread -lOpenSLES -ldl -lm
Cflags: -I${includedir} -I${includedir}/AL -DAL_LIBTYPE_STATIC

View File

@ -0,0 +1,553 @@
# OpenAL config file.
#
# Option blocks may appear multiple times, and duplicated options will take the
# last value specified. Environment variables may be specified within option
# values, and are automatically substituted when the config file is loaded.
# Environment variable names may only contain alpha-numeric characters (a-z,
# A-Z, 0-9) and underscores (_), and are prefixed with $. For example,
# specifying "$HOME/file.ext" would typically result in something like
# "/home/user/file.ext". To specify an actual "$" character, use "$$".
#
# Device-specific values may be specified by including the device name in the
# block name, with "general" replaced by the device name. That is, general
# options for the device "Name of Device" would be in the [Name of Device]
# block, while ALSA options would be in the [alsa/Name of Device] block.
# Options marked as "(global)" are not influenced by the device.
#
# The system-wide settings can be put in /etc/openal/alsoft.conf and user-
# specific override settings in $HOME/.alsoftrc.
# For Windows, these settings should go into $AppData\alsoft.ini
#
# Option and block names are case-senstive. The supplied values are only hints
# and may not be honored (though generally it'll try to get as close as
# possible). Note: options that are left unset may default to app- or system-
# specified values. These are the current available settings:
##
## General stuff
##
[general]
## disable-cpu-exts: (global)
# Disables use of specialized methods that use specific CPU intrinsics.
# Certain methods may utilize CPU extensions for improved performance, and
# this option is useful for preventing some or all of those methods from being
# used. The available extensions are: sse, sse2, sse3, sse4.1, and neon.
# Specifying 'all' disables use of all such specialized methods.
#disable-cpu-exts =
## drivers: (global)
# Sets the backend driver list order, comma-seperated. Unknown backends and
# duplicated names are ignored. Unlisted backends won't be considered for use
# unless the list is ended with a comma (e.g. 'oss,' will try OSS first before
# other backends, while 'oss' will try OSS only). Backends prepended with -
# won't be considered for use (e.g. '-oss,' will try all available backends
# except OSS). An empty list means to try all backends.
#drivers =
## channels:
# Sets the output channel configuration. If left unspecified, one will try to
# be detected from the system, and defaulting to stereo. The available values
# are: mono, stereo, quad, surround51, surround51rear, surround61, surround71,
# ambi1, ambi2, ambi3. Note that the ambi* configurations provide 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 =
## sample-type:
# Sets the output sample type. Currently, all mixing is done with 32-bit float
# and converted to the output sample type as needed. Available values are:
# int8 - signed 8-bit int
# uint8 - unsigned 8-bit int
# int16 - signed 16-bit int
# uint16 - unsigned 16-bit int
# int32 - signed 32-bit int
# uint32 - unsigned 32-bit int
# float32 - 32-bit float
#sample-type = float32
## frequency:
# Sets the output frequency. If left unspecified it will try to detect a
# default from the system, otherwise it will default to 44100.
#frequency =
## 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 1/50th of the frequency (20ms, or 882
# for 44100, 960 for 48000, etc).
#period_size =
## 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
## 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 = auto
## stereo-encoding:
# Specifies the encoding method for non-HRTF stereo output. 'panpot' (default)
# uses standard amplitude panning (aka pair-wise, stereo pair, etc) between
# -30 and +30 degrees, while 'uhj' creates stereo-compatible two-channel UHJ
# output, which encodes some surround sound information into stereo output
# that can be decoded with a surround sound receiver. If crossfeed filters are
# used, UHJ is disabled.
#stereo-encoding = panpot
## ambi-format:
# Specifies the channel order and normalization for the "ambi*" set of channel
# configurations. Valid settings are: fuma, ambix (or acn+sn3d), acn+n3d
#ambi-format = ambix
## hrtf:
# Controls HRTF processing. These filters provide better spatialization of
# sounds while using headphones, but do require a bit more CPU power. While
# HRTF is used, the cf_level option is ignored. Setting this to auto (default)
# will allow HRTF to be used when headphones are detected or the app requests
# it, while setting true or false will forcefully enable or disable HRTF
# respectively.
#hrtf = auto
## 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, or ambi3 will instead
# mix to a first-, second-, or third-order ambisonic buffer respectively, 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. Ambi2 and
# ambi3 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
## hrtf-size:
# Specifies the impulse response size, in samples, for the HRTF filter. Larger
# values increase the filter quality, while smaller values reduce processing
# cost. A value of 0 (default) uses the full filter size in the dataset, and
# the default dataset has a filter size of 32 samples at 44.1khz.
#hrtf-size = 0
## default-hrtf:
# Specifies the default HRTF to use. When multiple HRTFs are available, this
# determines the preferred one to use if none are specifically requested. Note
# that this is the enumerated HRTF name, not necessarily the filename.
#default-hrtf =
## hrtf-paths:
# Specifies a comma-separated list of paths containing HRTF data sets. The
# format of the files are described in docs/hrtf.txt. The files within the
# directories must have the .mhr file extension to be recognized. By default,
# OS-dependent data paths will be used. They will also be used if the list
# ends with a comma. On Windows this is:
# $AppData\openal\hrtf
# And on other systems, it's (in order):
# $XDG_DATA_HOME/openal/hrtf (defaults to $HOME/.local/share/openal/hrtf)
# $XDG_DATA_DIRS/openal/hrtf (defaults to /usr/local/share/openal/hrtf and
# /usr/share/openal/hrtf)
#hrtf-paths =
## 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
## 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
# cubic - extrapolates samples using a Catmull-Rom spline
# 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
#resampler = linear
## rt-prio: (global)
# Sets real-time priority for the mixing thread. Not all drivers may use this
# (eg. PortAudio) as they already control the priority of the mixing thread.
# 0 and negative values will disable it. Note that this may constitute a
# security risk since a real-time priority thread can indefinitely block
# normal-priority threads if it fails to wait. Disable this if it turns out to
# be a problem.
#rt-prio = 1
## 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
## sends:
# Limits the number of auxiliary sends allowed per source. Setting this higher
# than the default has no effect.
#sends = 6
## 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
## output-limiter:
# Applies a gain limiter on the final mixed output. This reduces the volume
# when the output samples would otherwise clamp, avoiding excessive clipping
# noise.
#output-limiter = true
## dither:
# Applies dithering on the final mix, for 8- and 16-bit output by default.
# This replaces the distortion created by nearest-value quantization with low-
# level whitenoise.
#dither = true
## dither-depth:
# Quantization bit-depth for dithered output. A value of 0 (or less) will
# match the output sample depth. For int32, uint32, and float32 output, 0 will
# disable dithering because they're at or beyond the rendered precision. The
# maximum dither depth is 24.
#dither-depth = 0
## 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
## excludefx: (global)
# Sets which effects to exclude, preventing apps from using them. This can
# help for apps that try to use effects which are too CPU intensive for the
# system to handle. Available effects are: eaxreverb,reverb,autowah,chorus,
# compressor,distortion,echo,equalizer,flanger,modulator,dedicated,pshifter,
# fshifter,vmorpher.
#excludefx =
## default-reverb: (global)
# A reverb preset that applies by default to all sources on send 0
# (applications that set their own slots on send 0 will override this).
# Available presets are: None, Generic, PaddedCell, Room, Bathroom,
# Livingroom, Stoneroom, Auditorium, ConcertHall, Cave, Arena, Hangar,
# CarpetedHallway, Hallway, StoneCorridor, Alley, Forest, City, Moutains,
# Quarry, Plain, ParkingLot, SewerPipe, Underwater, Drugged, Dizzy, Psychotic.
#default-reverb =
## trap-alc-error: (global)
# Generates a SIGTRAP signal when an ALC device error is generated, on systems
# that support it. This helps when debugging, while trying to find the cause
# of a device error. On Windows, a breakpoint exception is generated.
#trap-alc-error = false
## trap-al-error: (global)
# Generates a SIGTRAP signal when an AL context error is generated, on systems
# that support it. This helps when debugging, while trying to find the cause
# of a context error. On Windows, a breakpoint exception is generated.
#trap-al-error = false
##
## 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. Enabling this also requires specifying decoder
# configuration files for the appropriate speaker configuration you intend to
# use (see the quad, surround51, etc options below). Currently, up to third-
# order decoding is supported.
#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. 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
# in the decoder configuration file.
#nfc = false
## nfc-ref-delay
# Specifies the reference delay value for ambisonic output when NFC filters
# are enabled. If channels is set to one of the ambi* formats, this option
# enables NFC-HOA output with the specified Reference Delay parameter. The
# specified value can then be shared with an appropriate NFC-HOA decoder to
# reproduce correct near-field effects. Keep in mind that despite being
# designed for higher-order ambisonics, this also applies to first-order
# output. When left unset, normal output is created with no near-field
# simulation. Requires the nfc option to also be enabled.
#nfc-ref-delay =
## quad:
# Decoder configuration file for Quadraphonic channel output. See
# docs/ambdec.txt for a description of the file format.
#quad =
## surround51:
# Decoder configuration file for 5.1 Surround (Side and Rear) channel output.
# See docs/ambdec.txt for a description of the file format.
#surround51 =
## surround61:
# Decoder configuration file for 6.1 Surround channel output. See
# docs/ambdec.txt for a description of the file format.
#surround61 =
## surround71:
# Decoder configuration file for 7.1 Surround channel output. See
# docs/ambdec.txt for a description of the file format. Note: This can be used
# to enable 3D7.1 with the appropriate configuration and speaker placement,
# see docs/3D7.1.txt.
#surround71 =
##
## 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
##
## 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 = true
## 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
##
## ALSA backend stuff
##
[alsa]
## device: (global)
# Sets the device name for the default playback device.
#device = default
## device-prefix: (global)
# Sets the prefix used by the discovered (non-default) playback devices. This
# will be appended with "CARD=c,DEV=d", where c is the card id and d is the
# device index for the requested device name.
#device-prefix = plughw:
## device-prefix-*: (global)
# Card- and device-specific prefixes may be used to override the device-prefix
# option. The option may specify the card id (eg, device-prefix-NVidia), or
# the card id and device index (eg, device-prefix-NVidia-0). The card id is
# case-sensitive.
#device-prefix- =
## custom-devices: (global)
# Specifies a list of enumerated playback devices and the ALSA devices they
# refer to. The list pattern is "Display Name=ALSA device;...". The display
# names will be returned for device enumeration, and the ALSA device is the
# device name to open for each enumerated device.
#custom-devices =
## capture: (global)
# Sets the device name for the default capture device.
#capture = default
## capture-prefix: (global)
# Sets the prefix used by the discovered (non-default) capture devices. This
# will be appended with "CARD=c,DEV=d", where c is the card id and d is the
# device number for the requested device name.
#capture-prefix = plughw:
## capture-prefix-*: (global)
# Card- and device-specific prefixes may be used to override the
# capture-prefix option. The option may specify the card id (eg,
# capture-prefix-NVidia), or the card id and device index (eg,
# capture-prefix-NVidia-0). The card id is case-sensitive.
#capture-prefix- =
## custom-captures: (global)
# Specifies a list of enumerated capture devices and the ALSA devices they
# refer to. The list pattern is "Display Name=ALSA device;...". The display
# names will be returned for device enumeration, and the ALSA device is the
# device name to open for each enumerated device.
#custom-captures =
## 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
## 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 = false
##
## OSS backend stuff
##
[oss]
## device: (global)
# Sets the device name for OSS output.
#device = /dev/dsp
## capture: (global)
# Sets the device name for OSS capture.
#capture = /dev/dsp
##
## Solaris backend stuff
##
[solaris]
## device: (global)
# Sets the device name for Solaris output.
#device = /dev/audio
##
## QSA backend stuff
##
[qsa]
##
## JACK backend stuff
##
[jack]
## spawn-server: (global)
# Attempts to autospawn a JACK server whenever needed (initializing the
# backend, opening devices, etc).
#spawn-server = false
## custom-devices: (global)
# Specifies a list of enumerated devices and the ports they connect to. The
# list pattern is "Display Name=ports regex;Display Name=ports regex;...". The
# display names will be returned for device enumeration, and the ports regex
# is the regular expression to identify the target ports on the server (as
# given by the jack_get_ports function) for each enumerated device.
#custom-devices =
## 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
## buffer-size:
# Sets the update buffer size, in samples, that the backend will keep buffered
# to handle the server's real-time processing requests. This value must be a
# power of 2, or else it will be rounded up to the next power of 2. If it is
# less than JACK's buffer update size, it will be clamped. This option may
# be useful in case the server's update size is too small and doesn't give the
# mixer time to keep enough audio available for the processing requests.
#buffer-size = 0
##
## WASAPI backend stuff
##
[wasapi]
##
## DirectSound backend stuff
##
[dsound]
##
## Windows Multimedia backend stuff
##
[winmm]
##
## PortAudio backend stuff
##
[port]
## device: (global)
# Sets the device index for output. Negative values will use the default as
# given by PortAudio itself.
#device = -1
## capture: (global)
# Sets the device index for capture. Negative values will use the default as
# given by PortAudio itself.
#capture = -1
##
## Wave File Writer stuff
##
[wave]
## file: (global)
# Sets the filename of the wave file to write to. An empty name prevents the
# backend from opening, even when explicitly requested.
# THIS WILL OVERWRITE EXISTING FILES WITHOUT QUESTION!
#file =
## bformat: (global)
# Creates AMB format files using first-order ambisonics instead of a standard
# single- or multi-channel .wav file.
#bformat = false

Binary file not shown.

View File

@ -0,0 +1,43 @@
# AmbDec configuration
# Written by Ambisonic Decoder Toolbox, version 8.0
/description 3D7_2h1v_allrad_5200_rE_max_1_band
/version 3
/dec/chan_mask 1bf
/dec/freq_bands 1
/dec/speakers 7
/dec/coeff_scale fuma
/opt/input_scale fuma
/opt/nfeff_comp output
/opt/delay_comp on
/opt/level_comp on
/opt/xover_freq 400.000000
/opt/xover_ratio 0.000000
/speakers/{
# id dist azim elev conn
#-----------------------------------------------------------------------
add_spkr LF 1.500000 51.000000 24.000000
add_spkr RF 1.500000 -51.000000 24.000000
add_spkr CE 1.500000 0.000000 0.000000
add_spkr LB 1.500000 180.000000 55.000000
add_spkr RB 1.500000 0.000000 -55.000000
add_spkr LS 1.500000 129.000000 -24.000000
add_spkr RS 1.500000 -129.000000 -24.000000
/}
/matrix/{
order_gain 1.000000 0.774597 0.400000 0.000000
add_row 0.325031 0.357638 0.206500 0.234037 0.202440 0.135692 0.116927 -0.098768
add_row 0.325036 -0.357619 0.206537 0.234033 -0.202427 -0.135680 0.116934 -0.098768
add_row 0.080073 -0.000010 -0.000296 0.155843 -0.000016 -0.000011 -0.000623 0.163306
add_row 0.353556 0.000002 0.408453 -0.288377 -0.000004 -0.000003 -0.221039 0.077297
add_row 0.325297 0.000008 -0.414018 0.232789 0.000004 0.000003 -0.232940 0.018311
add_row 0.353558 0.352704 -0.203542 -0.290124 -0.191868 -0.134582 0.110616 -0.038294
add_row 0.353556 -0.352691 -0.203576 -0.290115 0.191871 0.134585 0.110612 -0.038293
/}
/end

View File

@ -0,0 +1,51 @@
# AmbDec configuration
# Written by Ambisonic Decoder Toolbox, version 8.0
/description Hexagon_2h0p_pinv_match_rV_max_rE_2_band
/version 3
/dec/chan_mask 11b
/dec/freq_bands 2
/dec/speakers 6
/dec/coeff_scale fuma
/opt/input_scale fuma
/opt/nfeff_comp input
/opt/delay_comp on
/opt/level_comp on
/opt/xover_freq 400.000000
/opt/xover_ratio 0.000000
/speakers/{
# id dist azim elev conn
#-----------------------------------------------------------------------
add_spkr LF 1.000000 30.000000 0.000000
add_spkr RF 1.000000 -30.000000 0.000000
add_spkr RS 1.000000 -90.000000 0.000000
add_spkr RB 1.000000 -150.000000 0.000000
add_spkr LB 1.000000 150.000000 0.000000
add_spkr LS 1.000000 90.000000 0.000000
/}
/lfmatrix/{
order_gain 1.000000 1.000000 1.000000 0.000000
add_row 0.235702 0.166667 0.288675 0.288675 0.166667
add_row 0.235702 -0.166667 0.288675 -0.288675 0.166667
add_row 0.235702 -0.333333 0.000000 -0.000000 -0.333333
add_row 0.235702 -0.166667 -0.288675 0.288675 0.166667
add_row 0.235702 0.166667 -0.288675 -0.288675 0.166667
add_row 0.235702 0.333333 0.000000 -0.000000 -0.333333
/}
/hfmatrix/{
order_gain 1.414214 1.224745 0.707107 0.000000
add_row 0.235702 0.166667 0.288675 0.288675 0.166667
add_row 0.235702 -0.166667 0.288675 -0.288675 0.166667
add_row 0.235702 -0.333333 0.000000 -0.000000 -0.333333
add_row 0.235702 -0.166667 -0.288675 0.288675 0.166667
add_row 0.235702 0.166667 -0.288675 -0.288675 0.166667
add_row 0.235702 0.333333 0.000000 -0.000000 -0.333333
/}
/end

View File

@ -0,0 +1,46 @@
# AmbDec configuration
# Written by Ambisonic Decoder Toolbox, version 8.0
# input channel order: WYXVU
/description itu50-noCenter_2h0p_allrad_5200_rE_max_1_band
# Although unused in this configuration, the front-center is declared here so
# that an appropriate distance may be set (for proper delaying or attenuating
# of dialog and such which feed it directly). It otherwise does not contribute
# to positional sound output.
/version 3
/dec/chan_mask 11b
/dec/freq_bands 1
/dec/speakers 5
/dec/coeff_scale fuma
/opt/input_scale fuma
/opt/nfeff_comp input
/opt/delay_comp on
/opt/level_comp on
/opt/xover_freq 400.000000
/opt/xover_ratio 0.000000
/speakers/{
# id dist azim elev conn
#-----------------------------------------------------------------------
add_spkr LS 1.000000 110.000000 0.000000 system:playback_3
add_spkr LF 1.000000 30.000000 0.000000 system:playback_1
add_spkr CE 1.000000 0.000000 0.000000 system:playback_5
add_spkr RF 1.000000 -30.000000 0.000000 system:playback_2
add_spkr RS 1.000000 -110.000000 0.000000 system:playback_4
/}
/matrix/{
order_gain 1.00000000e+00 8.66025404e-01 5.00000000e-01 0.000000
add_row 4.70934222e-01 3.78169605e-01 -4.00084750e-01 -8.22264454e-02 -4.43765986e-02
add_row 2.66639870e-01 2.55418584e-01 3.32591390e-01 2.82949132e-01 8.16816772e-02
add_row 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00
add_row 2.66634915e-01 -2.55421639e-01 3.32586482e-01 -2.82947688e-01 8.16782588e-02
add_row 4.70935891e-01 -3.78173080e-01 -4.00080588e-01 8.22279700e-02 -4.43716394e-02
/}
/end

View File

@ -0,0 +1,48 @@
# AmbDec configuration
# Written by Ambisonic Decoder Toolbox, version 8.0
/description itu50_2h0p_allrad_5200_rE_max_1_band
/version 3
/dec/chan_mask 11b
/dec/freq_bands 2
/dec/speakers 5
/dec/coeff_scale fuma
/opt/input_scale fuma
/opt/nfeff_comp output
/opt/delay_comp on
/opt/level_comp on
/opt/xover_freq 400.000000
/opt/xover_ratio 3.000000
/speakers/{
# id dist azim elev conn
#-----------------------------------------------------------------------
add_spkr LS 1.000000 110.000000 0.000000
add_spkr LF 1.000000 30.000000 0.000000
add_spkr CE 1.000000 0.000000 0.000000
add_spkr RF 1.000000 -30.000000 0.000000
add_spkr RS 1.000000 -110.000000 0.000000
/}
/lfmatrix/{
order_gain 1.000000 1.000000 1.000000 0.000000
add_row 0.420330 0.330200 -0.312250 0.019350 -0.027010
add_row 0.197700 0.288820 0.287820 0.049110 0.007420
add_row 0.058030 0.000000 0.205970 0.000000 0.050790
add_row 0.197700 -0.288820 0.287820 -0.049110 0.007420
add_row 0.420330 -0.330200 -0.312250 -0.019350 -0.027010
/}
/hfmatrix/{
order_gain 1.000000 0.866025 0.500000 0.000000
add_row 0.470934 0.378170 -0.400085 -0.082226 -0.044377
add_row 0.208954 0.257988 0.230383 0.288520 -0.025085
add_row 0.109403 -0.000002 0.194278 -0.000003 0.200863
add_row 0.208950 -0.257989 0.230379 -0.288516 -0.025088
add_row 0.470936 -0.378173 -0.400081 0.082228 -0.044372
/}
/end

View File

@ -0,0 +1,42 @@
Ambisonic decoder configuration presets are provided here for common surround
sound speaker layouts. The presets are prepared to work with OpenAL Soft's high
quality decoder. By default all of the speaker distances within a preset are
set to the same value, which results in no effect from distance compensation.
If this doesn't match your physical speaker setup, it may be worth copying the
preset and modifying the distance values to match (note that modifying the
azimuth and elevation values in the presets will not have any effect; the
specified angles do not change the decoder behavior).
Details of the individual presets are as follows.
square.ambdec
Specifies a basic square speaker setup for Quadraphonic output, with identical
width and depth. Front speakers are placed at +45 and -45 degrees, and back
speakers are placed at +135 and -135 degrees.
rectangle.ambdec
Specifies a narrower speaker setup for Quadraphonic output, with a little less
width but a little more depth over a basic square setup. Front speakers are
placed at +30 and -30 degrees, providing a bit more compatibility for existing
stereo content, with back speakers at +150 and -150 degrees.
itu5.1.ambdec
Specifies a standard ITU 5.0/5.1 setup for 5.1 Surround output. The front-
center speaker is placed directly in front at 0 degrees, with the front-left
and front-right at +30 and -30 degrees, and the surround speakers (side or
back) at +110 and -110 degrees.
hexagon.ambdec
Specifies a flat-front hexagonal speaker setup for 7.1 Surround output. The
front left and right speakers are placed at +30 and -30 degrees, the side
speakers are placed at +90 and -90 degrees, and the back speakers are placed at
+150 and -150 degrees. Although this is for 7.1 output, no front-center speaker
is defined for the decoder, meaning that speaker will be silent for 3D sound
(however it may still be used with AL_SOFT_direct_channels or ALC_EXT_DEDICATED
output). A "proper" 7.1 decoder may be provided in the future, but due to the
nature of the speaker configuration will have trade-offs.
3D7.1.ambdec
Specifies a 3D7.1 speaker setup for 7.1 Surround output. Although it's for 7.1
output, the speakers for such a configuration need to be placed in different
positions for proper results. Please see docs/3D7.1.txt for more information.

View File

@ -0,0 +1,45 @@
# AmbDec configuration
# Written by Ambisonic Decoder Toolbox, version 8.0
/description Rectangle_1h0p_pinv_match_rV_max_rE_2_band
/version 3
/dec/chan_mask b
/dec/freq_bands 2
/dec/speakers 4
/dec/coeff_scale fuma
/opt/input_scale fuma
/opt/nfeff_comp input
/opt/delay_comp on
/opt/level_comp on
/opt/xover_freq 400.000000
/opt/xover_ratio 0.000000
/speakers/{
# id dist azim elev conn
#-----------------------------------------------------------------------
add_spkr LF 1.000000 30.000000 0.000000
add_spkr RF 1.000000 -30.000000 0.000000
add_spkr RB 1.000000 -150.000000 0.000000
add_spkr LB 1.000000 150.000000 0.000000
/}
/lfmatrix/{
order_gain 1.000000 1.000000 0.000000 0.000000
add_row 0.353553 0.500000 0.288675
add_row 0.353553 -0.500000 0.288675
add_row 0.353553 -0.500000 -0.288675
add_row 0.353553 0.500000 -0.288675
/}
/hfmatrix/{
order_gain 1.414214 1.000000 0.000000 0.000000
add_row 0.353553 0.500000 0.288675
add_row 0.353553 -0.500000 0.288675
add_row 0.353553 -0.500000 -0.288675
add_row 0.353553 0.500000 -0.288675
/}
/end

View File

@ -0,0 +1,45 @@
# AmbDec configuration
# Written by Ambisonic Decoder Toolbox, version 8.0
/description Square_1h0p_pinv_match_rV_max_rE_2_band
/version 3
/dec/chan_mask b
/dec/freq_bands 2
/dec/speakers 4
/dec/coeff_scale fuma
/opt/input_scale fuma
/opt/nfeff_comp input
/opt/delay_comp on
/opt/level_comp on
/opt/xover_freq 400.000000
/opt/xover_ratio 0.000000
/speakers/{
# id dist azim elev conn
#-----------------------------------------------------------------------
add_spkr LF 1.000000 45.000000 0.000000
add_spkr RF 1.000000 -45.000000 0.000000
add_spkr RB 1.000000 -135.000000 0.000000
add_spkr LB 1.000000 135.000000 0.000000
/}
/lfmatrix/{
order_gain 1.000000 1.000000 0.000000 0.000000
add_row 0.353553 0.353553 0.353553
add_row 0.353553 -0.353553 0.353553
add_row 0.353553 -0.353553 -0.353553
add_row 0.353553 0.353553 -0.353553
/}
/hfmatrix/{
order_gain 1.414214 1.000000 0.000000 0.000000
add_row 0.353553 0.353553 0.353553
add_row 0.353553 -0.353553 0.353553
add_row 0.353553 -0.353553 -0.353553
add_row 0.353553 0.353553 -0.353553
/}
/end