123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737 |
- openal-soft-1.23.1:
- Implemented the AL_SOFT_UHJ_ex extension.
- Implemented the AL_SOFT_buffer_length_query extension.
- Implemented the AL_SOFT_source_start_delay extension.
- Implemented the AL_EXT_STATIC_BUFFER extension.
- Fixed compiling with certain older versions of GCC.
- Fixed compiling as a submodule.
- Fixed compiling with newer versions of Oboe.
- Improved EAX effect version switching.
- Improved the quality of the reverb modulator.
- Improved performance of the cubic resampler.
- Added a compatibility option to restore AL_SOFT_buffer_sub_data. The option
- disables AL_EXT_SOURCE_RADIUS due to incompatibility.
- Reduced CPU usage when EAX is initialized and FXSlot0 or FXSlot1 are not
- used.
- Reduced memory usage for ADPCM buffer formats. They're no longer converted
- to 16-bit samples on load.
- openal-soft-1.23.0:
- Fixed CoreAudio capture support.
- Fixed handling per-version EAX properties.
- Fixed interpolating changes to the Super Stereo width source property.
- Fixed detection of the update and buffer size from PipeWire.
- Fixed resuming playback devices with OpenSL.
- Fixed support for certain OpenAL implementations with the router.
- Improved reverb environment transitions.
- Improved performance of convolution reverb.
- Improved quality and performance of the pitch shifter effect slightly.
- Improved sub-sample precision for resampled sources.
- Improved blending spatialized multi-channel sources that use the source
- radius property.
- Improved mixing 2D ambisonic sources for higher-order 3D ambisonic mixing.
- Improved quadraphonic and 7.1 surround sound output slightly.
- Added config options for UHJ encoding/decoding quality. Including Super
- Stereo processing.
- Added a config option for specifying the speaker distance.
- Added a compatibility config option for specifying the NFC distance
- scaling.
- Added a config option for mixing on PipeWire's non-real-time thread.
- Added support for virtual source nodes with PipeWire capture.
- Added the ability for the WASAPI backend to use different playback rates.
- Added support for SOFA files that define per-response delays in makemhr.
- Changed the default fallback playback sample rate to 48khz. This doesn't
- affect most backends, which can detect a default rate from the system.
- Changed the default resampler to cubic.
- Changed the default HRTF size from 32 to 64 points.
- openal-soft-1.22.2:
- Fixed PipeWire version check.
- Fixed building with PipeWire versions before 0.3.33.
- openal-soft-1.22.1:
- Fixed CoreAudio capture.
- Fixed air absorption strength.
- Fixed handling 5.1 devices on Windows that use Rear channels instead of
- Side channels.
- Fixed some compilation issues on MinGW.
- Fixed ALSA not being used on some systems without PipeWire and PulseAudio.
- Fixed OpenSL capturing noise.
- Fixed Oboe capture failing with some buffer sizes.
- Added checks for the runtime PipeWire version. The same or newer version
- than is used for building will be needed at runtime for the backend to
- work.
- Separated 3D7.1 into its own speaker configuration.
- openal-soft-1.22.0:
- Implemented the ALC_SOFT_reopen_device extension. This allows for moving
- devices to different outputs without losing object state.
- Implemented the ALC_SOFT_output_mode extension.
- Implemented the AL_SOFT_callback_buffer extension.
- Implemented the AL_SOFT_UHJ extension. This supports native UHJ buffer
- formats and Super Stereo processing.
- Implemented the legacy EAX extensions. Enabled by default only on Windows.
- Improved sound positioning stability when a source is near the listener.
- Improved the default 5.1 output decoder.
- Improved the high frequency response for the HRTF second-order ambisonic
- decoder.
- Improved SoundIO capture behavior.
- Fixed UHJ output on NEON-capable CPUs.
- Fixed redundant effect updates when setting an effect property to the
- current value.
- Fixed WASAPI capture using really low sample rates, and sources with very
- high pitch shifts when using a bsinc resampler.
- Added a PipeWire backend.
- Added enumeration for the JACK and CoreAudio backends.
- Added optional support for RTKit to get real-time priority. Only used as a
- backup when pthread_setschedparam fails.
- Added an option for JACK playback to render directly in the real-time
- processing callback. For lower playback latency, on by default.
- Added an option for custom JACK devices.
- Added utilities to encode and decode UHJ audio files. Files are decoded to
- the .amb format, and are encoded from libsndfile-compatible formats.
- Added an in-progress extension to hold sources in a playing state when a
- device disconnects. Allows devices to be reset or reopened and have sources
- resume from where they left off.
- Lowered the priority of the JACK backend. To avoid it getting picked when
- PipeWire is providing JACK compatibility, since the JACK backend is less
- robust with auto-configuration.
- openal-soft-1.21.1:
- Improved alext.h's detection of standard types.
- Improved slightly the local source position when the listener and source
- are near each other.
- Improved click/pop prevention for sounds that stop prematurely.
- Fixed compilation for Windows ARM targets with MSVC.
- Fixed ARM NEON detection on Windows.
- Fixed CoreAudio capture when the requested sample rate doesn't match the
- system configuration.
- Fixed OpenSL capture desyncing from the internal capture buffer.
- Fixed sources missing a batch update when applied after quickly restarting
- the source.
- Fixed missing source stop events when stopping a paused source.
- Added capture support to the experimental Oboe backend.
- openal-soft-1.21.0:
- Updated library codebase to C++14.
- Implemented the AL_SOFT_effect_target extension.
- Implemented the AL_SOFT_events extension.
- Implemented the ALC_SOFT_loopback_bformat extension.
- Improved memory use for mixing voices.
- Improved detection of NEON capabilities.
- Improved handling of PulseAudio devices that lack manual start control.
- Improved mixing performance with PulseAudio.
- Improved high-frequency scaling quality for the HRTF B-Format decoder.
- Improved makemhr's HRIR delay calculation.
- Improved WASAPI capture of mono formats with multichannel input.
- Reimplemented the modulation stage for reverb.
- Enabled real-time mixing priority by default, for backends that use the
- setting. It can still be disabled in the config file.
- Enabled dual-band processing for the built-in quad and 7.1 output decoders.
- Fixed a potential crash when deleting an effect slot immediately after the
- last source using it stops.
- Fixed building with the static runtime on MSVC.
- Fixed using source stereo angles outside of -pi...+pi.
- Fixed the buffer processed event count for sources that start with empty
- buffers.
- Fixed trying to open an unopenable WASAPI device causing all devices to
- stop working.
- Fixed stale devices when re-enumerating WASAPI devices.
- Fixed using unicode paths with the log file on Windows.
- Fixed DirectSound capture reporting bad sample counts or erroring when
- reading samples.
- Added an in-progress extension for a callback-driven buffer type.
- Added an in-progress extension for higher-order B-Format buffers.
- Added an in-progress extension for convolution reverb.
- Added an experimental Oboe backend for Android playback. This requires the
- Oboe sources at build time, so that it's built as a static library included
- in libopenal.
- Added an option for auto-connecting JACK ports.
- Added greater-than-stereo support to the SoundIO backend.
- Modified the mixer to be fully asynchronous with the external API, and
- should now be real-time safe. Although alcRenderSamplesSOFT is not due to
- locking to check the device handle validity.
- Modified the UHJ encoder to use an all-pass FIR filter that's less harmful
- to non-filtered signal phase.
- Converted examples from SDL_sound to libsndfile. To avoid issues when
- combining SDL2 and SDL_sound.
- Worked around a 32-bit GCC/MinGW bug with TLS destructors. See:
- https://gcc.gnu.org/bugzilla/show_bug.cgi?id=83562
- Reduced the maximum number of source sends from 16 to 6.
- Removed the QSA backend. It's been broken for who knows how long.
- Got rid of the compile-time native-tools targets, using cmake and global
- initialization instead. This should make cross-compiling less troublesome.
- openal-soft-1.20.1:
- Implemented the AL_SOFT_direct_channels_remix extension. This extends
- AL_DIRECT_CHANNELS_SOFT to optionally remix input channels that don't have
- a matching output channel.
- Implemented the AL_SOFT_bformat_ex extension. This extends B-Format buffer
- support for N3D or SN3D scaling, or ACN channel ordering.
- Fixed a potential voice leak when a source is started and stopped or
- restarted in quick succession.
- Fixed a potential device reset failure with JACK.
- Improved handling of unsupported channel configurations with WASAPI. Such
- setups will now try to output at least a stereo mix.
- Improved clarity a bit for the HRTF second-order ambisonic decoder.
- Improved detection of compatible layouts for SOFA files in makemhr and
- sofa-info.
- Added the ability to resample HRTFs on load. MHR files no longer need to
- match the device sample rate to be usable.
- Added an option to limit the HRTF's filter length.
- openal-soft-1.20.0:
- Converted the library codebase to C++11. A lot of hacks and custom
- structures have been replaced with standard or cleaner implementations.
- Partially implemented the Vocal Morpher effect.
- Fixed the bsinc SSE resamplers on non-GCC compilers.
- Fixed OpenSL capture.
- Fixed support for extended capture formats with OpenSL.
- Fixed handling of WASAPI not reporting a default device.
- Fixed performance problems relating to semaphores on macOS.
- Modified the bsinc12 resampler's transition band to better avoid aliasing
- noise.
- Modified alcResetDeviceSOFT to attempt recovery of disconnected devices.
- Modified the virtual speaker layout for HRTF B-Format decoding.
- Modified the PulseAudio backend to use a custom processing loop.
- Renamed the makehrtf utility to makemhr.
- Improved the efficiency of the bsinc resamplers when up-sampling.
- Improved the quality of the bsinc resamplers slightly.
- Improved the efficiency of the HRTF filters.
- Improved the HRTF B-Format decoder coefficient generation.
- Improved reverb feedback fading to be more consistent with pan fading.
- Improved handling of sources that end prematurely, avoiding loud clicks.
- Improved the performance of some reverb processing loops.
- Added fast_bsinc12 and 24 resamplers that improve efficiency at the cost of
- some quality. Notably, down-sampling has less smooth pitch ramping.
- Added support for SOFA input files with makemhr.
- Added a build option to use pre-built native tools. For cross-compiling,
- use with caution and ensure the native tools' binaries are kept up-to-date.
- Added an adjust-latency config option for the PulseAudio backend.
- Added basic support for multi-field HRTFs.
- Added an option for mixing first- or second-order B-Format with HRTF
- output. This can improve HRTF performance given a number of sources.
- Added an RC file for proper DLL version information.
- Disabled some old KDE workarounds by default. Specifically, PulseAudio
- streams can now be moved (KDE may try to move them after opening).
- openal-soft-1.19.1:
- Implemented capture support for the SoundIO backend.
- Fixed source buffer queues potentially not playing properly when a queue
- entry completes.
- Fixed possible unexpected failures when generating auxiliary effect slots.
- Fixed a crash with certain reverb or device settings.
- Fixed OpenSL capture.
- Improved output limiter response, better ensuring the sample amplitude is
- clamped for output.
- openal-soft-1.19.0:
- Implemented the ALC_SOFT_device_clock extension.
- Implemented the Pitch Shifter, Frequency Shifter, and Autowah effects.
- Fixed compiling on FreeBSD systems that use freebsd-lib 9.1.
- Fixed compiling on NetBSD.
- Fixed the reverb effect's density scale and panning parameters.
- Fixed use of the WASAPI backend with certain games, which caused odd COM
- initialization errors.
- Increased the number of virtual channels for decoding Ambisonics to HRTF
- output.
- Changed 32-bit x86 builds to use SSE2 math by default for performance.
- Build-time options are available to use just SSE1 or x87 instead.
- Replaced the 4-point Sinc resampler with a more efficient cubic resampler.
- Renamed the MMDevAPI backend to WASAPI.
- Added support for 24-bit, dual-ear HRTF data sets. The built-in data set
- has been updated to 24-bit.
- Added a 24- to 48-point band-limited Sinc resampler.
- Added an SDL2 playback backend. Disabled by default to avoid a dependency
- on SDL2.
- Improved the performance and quality of the Chorus and Flanger effects.
- Improved the efficiency of the band-limited Sinc resampler.
- Improved the Sinc resampler's transition band to avoid over-attenuating
- higher frequencies.
- Improved the performance of some filter operations.
- Improved the efficiency of object ID lookups.
- Improved the efficienty of internal voice/source synchronization.
- Improved AL call error logging with contextualized messages.
- Removed the reverb effect's modulation stage. Due to the lack of reference
- for its intended behavior and strength.
- openal-soft-1.18.2:
- Fixed resetting the FPU rounding mode after certain function calls on
- Windows.
- Fixed use of SSE intrinsics when building with Clang on Windows.
- Fixed a crash with the JACK backend when using JACK1.
- Fixed use of pthread_setnane_np on NetBSD.
- Fixed building on FreeBSD with an older freebsd-lib.
- OSS now links with libossaudio if found at build time (for NetBSD).
- openal-soft-1.18.1:
- Fixed an issue where resuming a source might not restart playing it.
- Fixed PulseAudio playback when the configured stream length is much less
- than the requested length.
- Fixed MMDevAPI capture with sample rates not matching the backing device.
- Fixed int32 output for the Wave Writer.
- Fixed enumeration of OSS devices that are missing device files.
- Added correct retrieval of the executable's path on FreeBSD.
- Added a config option to specify the dithering depth.
- Added a 5.1 decoder preset that excludes front-center output.
- openal-soft-1.18.0:
- Implemented the AL_EXT_STEREO_ANGLES and AL_EXT_SOURCE_RADIUS extensions.
- Implemented the AL_SOFT_gain_clamp_ex, AL_SOFT_source_resampler,
- AL_SOFT_source_spatialize, and ALC_SOFT_output_limiter extensions.
- Implemented 3D processing for some effects. Currently implemented for
- Reverb, Compressor, Equalizer, and Ring Modulator.
- Implemented 2-channel UHJ output encoding. This needs to be enabled with a
- config option to be used.
- Implemented dual-band processing for high-quality ambisonic decoding.
- Implemented distance-compensation for surround sound output.
- Implemented near-field emulation and compensation with ambisonic rendering.
- Currently only applies when using the high-quality ambisonic decoder or
- ambisonic output, with appropriate config options.
- Implemented an output limiter to reduce the amount of distortion from
- clipping.
- Implemented dithering for 8-bit and 16-bit output.
- Implemented a config option to select a preferred HRTF.
- Implemented a run-time check for NEON extensions using /proc/cpuinfo.
- Implemented experimental capture support for the OpenSL backend.
- Fixed building on compilers with NEON support but don't default to having
- NEON enabled.
- Fixed support for JACK on Windows.
- Fixed starting a source while alcSuspendContext is in effect.
- Fixed detection of headsets as headphones, with MMDevAPI.
- Added support for AmbDec config files, for custom ambisonic decoder
- configurations. Version 3 files only.
- Added backend-specific options to alsoft-config.
- Added first-, second-, and third-order ambisonic output formats. Currently
- only works with backends that don't rely on channel labels, like JACK,
- ALSA, and OSS.
- Added a build option to embed the default HRTFs into the lib.
- Added AmbDec presets to enable high-quality ambisonic decoding.
- Added an AmbDec preset for 3D7.1 speaker setups.
- Added documentation regarding Ambisonics, 3D7.1, AmbDec config files, and
- the provided ambdec presets.
- Added the ability for MMDevAPI to open devices given a Device ID or GUID
- string.
- Added an option to the example apps to open a specific device.
- Increased the maximum auxiliary send limit to 16 (up from 4). Requires
- requesting them with the ALC_MAX_AUXILIARY_SENDS context creation
- attribute.
- Increased the default auxiliary effect slot count to 64 (up from 4).
- Reduced the default period count to 3 (down from 4).
- Slightly improved automatic naming for enumerated HRTFs.
- Improved B-Format decoding with HRTF output.
- Improved internal property handling for better batching behavior.
- Improved performance of certain filter uses.
- Removed support for the AL_SOFT_buffer_samples and AL_SOFT_buffer_sub_data
- extensions. Due to conflicts with AL_EXT_SOURCE_RADIUS.
- openal-soft-1.17.2:
- Implemented device enumeration for OSSv4.
- Fixed building on OSX.
- Fixed building on non-Windows systems without POSIX-2008.
- Fixed Dedicated Dialog and Dedicated LFE effect output.
- Added a build option to override the share install dir.
- Added a build option to static-link libgcc for MinGW.
- openal-soft-1.17.1:
- Fixed building with JACK and without PulseAudio.
- Fixed building on FreeBSD.
- Fixed the ALSA backend's allow-resampler option.
- Fixed handling of inexact ALSA period counts.
- Altered device naming scheme on Windows backends to better match other
- drivers.
- Updated the CoreAudio backend to use the AudioComponent API. This clears up
- deprecation warnings for OSX 10.11, although requires OSX 10.6 or newer.
- openal-soft-1.17.0:
- Implemented a JACK playback backend.
- Implemented the AL_EXT_BFORMAT and AL_EXT_MULAW_BFORMAT extensions.
- Implemented the ALC_SOFT_HRTF extension.
- Implemented C, SSE3, and SSE4.1 based 4- and 8-point Sinc resamplers.
- Implemented a C and SSE based band-limited Sinc resampler. This does 12- to
- 24-point Sinc resampling, and performs anti-aliasing.
- Implemented B-Format output support for the wave file writer. This creates
- FuMa-style first-order Ambisonics wave files (AMB format).
- Implemented a stereo-mode config option for treating stereo modes as either
- speakers or headphones.
- Implemented per-device configuration options.
- Fixed handling of PulseAudio and MMDevAPI devices that have identical
- descriptions.
- Fixed a potential lockup when stopping playback of suspended PulseAudio devices.
- Fixed logging of Unicode characters on Windows.
- Fixed 5.1 surround sound channels. By default it will now use the side
- channels for the surround output. A configuration using rear channels is
- still available.
- Fixed the QSA backend potentially altering the capture format.
- Fixed detecting MMDevAPI's default device.
- Fixed returning the default capture device name.
- Fixed mixing property calculations when deferring context updates.
- Altered the behavior of alcSuspendContext and alcProcessContext to better
- match certain Windows drivers.
- Altered the panning algorithm, utilizing Ambisonics for better side and
- back positioning cues with surround sound output.
- Improved support for certain older Windows apps.
- Improved the alffplay example to support surround sound streams.
- Improved support for building as a sub-project.
- Added an HRTF playback example.
- Added a tone generator output test.
- Added a toolchain to help with cross-compiling to Android.
- openal-soft-1.16.0:
- Implemented EFX Chorus, Flanger, Distortion, Equalizer, and Compressor
- effects.
- Implemented high-pass and band-pass EFX filters.
- Implemented the high-pass filter for the EAXReverb effect.
- Implemented SSE2 and SSE4.1 linear resamplers.
- Implemented Neon-enhanced non-HRTF mixers.
- Implemented a QSA backend, for QNX.
- Implemented the ALC_SOFT_pause_device, AL_SOFT_deferred_updates,
- AL_SOFT_block_alignment, AL_SOFT_MSADPCM, and AL_SOFT_source_length
- extensions.
- Fixed resetting mmdevapi backend devices.
- Fixed clamping when converting 32-bit float samples to integer.
- Fixed modulation range in the Modulator effect.
- Several fixes for the OpenSL playback backend.
- Fixed device specifier names that have Unicode characters on Windows.
- Added support for filenames and paths with Unicode (UTF-8) characters on
- Windows.
- Added support for alsoft.conf config files found in XDG Base Directory
- Specification locations (XDG_CONFIG_DIRS and XDG_CONFIG_HOME, or their
- defaults) on non-Windows systems.
- Added a GUI configuration utility (requires Qt 4.8).
- Added support for environment variable expansion in config options (not
- keys or section names).
- Added an example that uses SDL2 and ffmpeg.
- Modified examples to use SDL_sound.
- Modified CMake config option names for better sorting.
- HRTF data sets specified in the hrtf_tables config option may now be
- relative or absolute filenames.
- Made the default HRTF data set an external file, and added a data set for
- 48khz playback in addition to 44.1khz.
- Added support for C11 atomic methods.
- Improved support for some non-GNU build systems.
- openal-soft-1.15.1:
- Fixed a regression with retrieving the source's AL_GAIN property.
- openal-soft-1.15:
- Fixed device enumeration with the OSS backend.
- Reorganized internal mixing logic, so unneeded steps can potentially be
- skipped for better performance.
- Removed the lookup table for calculating the mixing pans. The panning is
- now calculated directly for better precision.
- Improved the panning of stereo source channels when using stereo output.
- Improved source filter quality on send paths.
- Added a config option to allow PulseAudio to move streams between devices.
- The PulseAudio backend will now attempt to spawn a server by default.
- Added a workaround for a DirectSound bug relating to float32 output.
- Added SSE-based mixers, for HRTF and non-HRTF mixing.
- Added support for the new AL_SOFT_source_latency extension.
- Improved ALSA capture by avoiding an extra buffer when using sizes
- supported by the underlying device.
- Improved the makehrtf utility to support new options and input formats.
- Modified the CFLAGS declared in the pkg-config file so the "AL/" portion of
- the header includes can optionally be omitted.
- Added a couple example code programs to show how to apply reverb, and
- retrieve latency.
- The configuration sample is now installed into the share/openal/ directory
- instead of /etc/openal.
- The configuration sample now gets installed by default.
|