Sync from SUSE:SLFO:Main openal-soft revision 5fbe441cf1a4b586f2464dbbe6e41c1c

This commit is contained in:
Adrian Schröter 2024-05-03 17:27:19 +02:00
commit 3bb5271f2c
7 changed files with 1041 additions and 0 deletions

23
.gitattributes vendored Normal file
View File

@ -0,0 +1,23 @@
## Default LFS
*.7z filter=lfs diff=lfs merge=lfs -text
*.bsp filter=lfs diff=lfs merge=lfs -text
*.bz2 filter=lfs diff=lfs merge=lfs -text
*.gem filter=lfs diff=lfs merge=lfs -text
*.gz filter=lfs diff=lfs merge=lfs -text
*.jar filter=lfs diff=lfs merge=lfs -text
*.lz filter=lfs diff=lfs merge=lfs -text
*.lzma filter=lfs diff=lfs merge=lfs -text
*.obscpio filter=lfs diff=lfs merge=lfs -text
*.oxt filter=lfs diff=lfs merge=lfs -text
*.pdf filter=lfs diff=lfs merge=lfs -text
*.png filter=lfs diff=lfs merge=lfs -text
*.rpm filter=lfs diff=lfs merge=lfs -text
*.tbz filter=lfs diff=lfs merge=lfs -text
*.tbz2 filter=lfs diff=lfs merge=lfs -text
*.tgz filter=lfs diff=lfs merge=lfs -text
*.ttf filter=lfs diff=lfs merge=lfs -text
*.txz filter=lfs diff=lfs merge=lfs -text
*.whl filter=lfs diff=lfs merge=lfs -text
*.xz filter=lfs diff=lfs merge=lfs -text
*.zip filter=lfs diff=lfs merge=lfs -text
*.zst filter=lfs diff=lfs merge=lfs -text

5
baselibs.conf Normal file
View File

@ -0,0 +1,5 @@
libopenal0
libopenal1
openal-soft-devel
requires -openal-soft-<targettype>
requires "libopenal1-<targettype> = <version>"

10
libopenalcompat.c Normal file
View File

@ -0,0 +1,10 @@
#if 0
set -- gcc -W -Wall -g -O2 -shared -nostdlib -Wl,-f,libopenal.so.1 -Wl,-soname,libopenal.so.0 -fPIC -DPIC -o libopenal.so.0 libopenalcompat.c
echo "$@"
exec "$@"
exit 1
#endif
#if 0
void* alcOpenDevice (void* p) { return (void*)0; }
#endif
void _openal_soft_dummy_ () { }

25
openal-no-autospawn.diff Normal file
View File

@ -0,0 +1,25 @@
From b5911219a2770c0ceb982ee8c98e954b8c5a5f0e Mon Sep 17 00:00:00 2001
From: Ludwig Nussel <ludwig.nussel@suse.de>
Date: Tue, 4 Feb 2020 15:24:47 +0100
Subject: [PATCH] Disable pulseaudio auto spawning
---
alc/backends/pulseaudio.cpp | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/alc/backends/pulseaudio.cpp b/alc/backends/pulseaudio.cpp
index be4e742c..376af844 100644
--- a/alc/backends/pulseaudio.cpp
+++ b/alc/backends/pulseaudio.cpp
@@ -1449,7 +1449,7 @@ bool PulseBackendFactory::init()
#endif /* HAVE_DYNLOAD */
pulse_ctx_flags = PA_CONTEXT_NOFLAGS;
- if(!GetConfigValueBool(nullptr, "pulse", "spawn-server", 1))
+ if(!GetConfigValueBool(nullptr, "pulse", "spawn-server", 0))
pulse_ctx_flags |= PA_CONTEXT_NOAUTOSPAWN;
try {
--
2.16.4

BIN
openal-soft-1.22.2.tar.bz2 (Stored with Git LFS) Normal file

Binary file not shown.

763
openal-soft.changes Normal file
View File

@ -0,0 +1,763 @@
-------------------------------------------------------------------
Tue Aug 16 19:42:58 UTC 2022 - Dirk Müller <dmueller@suse.com>
- disable pipewire backend to avoid buildcycle
ffmpeg-4, libopenmpt, mpg123, openal-soft, pipewire
-------------------------------------------------------------------
Mon Aug 1 22:21:48 UTC 2022 - Dirk Müller <dmueller@suse.com>
- update to 1.22.2:
* Fixed PipeWire version check.
* Fixed building with PipeWire versions before 0.3.33.
* Fixed CoreAudio capture.
* Fixed air absorption strength.
* 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.
* 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.
* Added an option for JACK playback to render directly in the real-time processing callback.
* Added an option for custom JACK devices.
* Added utilities to encode and decode UHJ audio files.
* Added an in-progress extension to hold sources in a playing state when a device disconnects.
* Lowered the priority of the JACK backend.
- drop openal-soft-gcc11.diff (obsolete)
-------------------------------------------------------------------
Mon Jul 4 22:43:06 UTC 2022 - Jan Engelhardt <jengelh@inai.de>
- Remove -msse2 from the i586 gcc command lines.
-------------------------------------------------------------------
Wed Feb 17 15:49:21 UTC 2021 - Ludwig Nussel <lnussel@suse.de>
- fix gcc11 build (openal-soft-gcc11.diff)
-------------------------------------------------------------------
Tue Feb 9 23:31:33 UTC 2021 - Dirk Müller <dmueller@suse.com>
- update to 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.
-------------------------------------------------------------------
Sat Jan 16 21:46:31 UTC 2021 - Matthias Mailänder <mailaender@opensuse.org>
- new version 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.
-------------------------------------------------------------------
Sat Jul 4 14:32:43 UTC 2020 - Matthias Mailänder <mailaender@opensuse.org>
- Add SDL2 and PortAudio backends
-------------------------------------------------------------------
Tue Feb 4 14:17:16 UTC 2020 - Ludwig Nussel <lnussel@suse.de>
- new version 1.20.1
The changes from 1.20.0 include:
* 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.
The changes from 1.19.1 include:
* 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).
- makehrtf tool was renamed to makemhr
- disable jack backend as it doesn't work due to missing jack_error_callback
-------------------------------------------------------------------
Wed May 29 08:01:46 UTC 2019 - Martin Pluskal <mpluskal@suse.com>
- Use more of macros for building
- Build gui config tool as well
-------------------------------------------------------------------
Sat Apr 6 11:32:59 UTC 2019 - Jan Engelhardt <jengelh@inai.de>
- Trim bias from description, trim metadata duplication from
description, trim main description repetition in lesser
subpackages' description. Spruce up summaries. Fix SRPM group.
- Add missing Requires inside baselibs.conf.
- Remove insatisfiable Recommends. Add Provides/Conflicts
for the move of makehrtf.
-------------------------------------------------------------------
Thu Mar 21 20:24:45 UTC 2019 - Stefan Brüns <stefan.bruens@rwth-aachen.de>
- Packaging changes:
* Move makehrtf from the devel package to a separate package, as
it is the only part not under LGPL (or MIT).
* Move the remaining tools and data files to separate packages,
to get the License tag correct, and make the data files noarch.
* Use https in Url and Source tags.
- Update to 1.19.1
* The changes from 1.19.0 include:
- 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.
* The changes from 1.18.2 include:
- 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.
-------------------------------------------------------------------
Thu Feb 8 16:27:35 UTC 2018 - dmueller@suse.com
- remove file that has conflicting license in %prep
-------------------------------------------------------------------
Sat Nov 11 16:40:43 UTC 2017 - aavindraa@gmail.com
- Update to 1.18.2
* Fixed a crash with the JACK backend when using JACK1.
* FreeBSD: Fixed building with an older freebsd-lib.
* NetBSD: Fixed use of pthread_setnane_np
* NetBSD: OSS now links with libossaudio if found at build time
* Windows: Fixed resetting the FPU rounding mode after some calls
* Windows: Fixed use of SSE intrinsics when building with Clang
- Changes for 1.18.1
* Fixed bug where resuming a source may not work
* 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.
- Changes for 1.18.0
* Added a build option to embed the default HRTFs into the lib.
* New extensions (AL_EXT_STEREO_ANGLES, AL_EXT_SOURCE_RADIUS,
AL_SOFT_gain_clamp_ex, AL_SOFT_source_resampler,
AL_SOFT_source_spatialize, and ALC_SOFT_output_limiter)
* Implemented 3D processing for Reverb, Compressor, Equalizer, and
Ring Modulator.
* Implemented 2-channel UHJ output encoding (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 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 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 AL_SOFT_buffer_samples and AL_SOFT_buffer_sub_data.
This is due to conflicts with AL_EXT_SOURCE_RADIUS.
* Windows: Fixed support for JACK
- cleanup with spec-cleaner
-------------------------------------------------------------------
Wed Nov 16 06:33:19 UTC 2016 - virtuousfox@gmail.com
- Add missing dependency for JACK backend
-------------------------------------------------------------------
Thu Feb 11 18:28:22 UTC 2016 - mpluskal@suse.com
- Update to 1.17.2
* Implemented device enumeration for OSSv4.
* 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.
- Changes for 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.
- Changes for 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.
- Update project and download url
- Dropped upstreamed fix-neon-build.patch
- Refreshed openal-no-autospawn.diff
-------------------------------------------------------------------
Fri Oct 2 18:30:06 UTC 2015 - dmueller@suse.com
- replace openal-soft-arm_neon-only-for-32bit.patch with
fix-neon-build.patch to fix the build instead of disabling neon
-------------------------------------------------------------------
Tue Sep 29 19:17:39 UTC 2015 - dmueller@suse.com
- add openal-soft-arm_neon-only-for-32bit.patch to fix build
on aarch64
-------------------------------------------------------------------
Sun Sep 20 08:43:22 UTC 2015 - meissner@suse.com
- baselibs for -devel too for building wine.
-------------------------------------------------------------------
Tue Apr 21 17:36:00 UTC 2015 - mpluskal@suse.com
- Use %cmake_install macro
- Add dependency on pkg-config
- Remove missingok from ghost file, it should not be needed
-------------------------------------------------------------------
Fri Mar 13 13:20:56 UTC 2015 - lnussel@suse.de
- remove conflicts with openal. That package doesn't exist since
11.1 and actually only the library conflicts.
- add back ldconfig calls for libopenal0
- mark alsoft.conf as %config(noreplace,missingok) to silence
rpmlint once the rpmlint bug is fixed.
-------------------------------------------------------------------
Sun Feb 15 17:09:58 UTC 2015 - p.drouand@gmail.com
- Update to version 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.
- Add gcc-c++ requirement; new dependency
- Use %cmake macro
-------------------------------------------------------------------
Tue May 7 08:01:27 UTC 2013 - lnussel@suse.de
- version 1.15.1
* Fixed a regression with retrieving the source's AL_GAIN property.
-------------------------------------------------------------------
Mon Jan 14 10:16:23 UTC 2013 - lnussel@suse.de
- install legacy provides for openal again. Some packages still rely
on it.
-------------------------------------------------------------------
Tue Jan 8 12:31:06 UTC 2013 - reddwarf@opensuse.org
- The devel package requires libopenal1, not openal-soft
-------------------------------------------------------------------
Mon Jan 7 20:38:56 UTC 2013 - joop.boonen@opensuse.org
- Fixed SLES build
- Removed Requirements that are resolved automatically
- Added missing openal-soft-devel Requirement libopenal1
-------------------------------------------------------------------
Fri Dec 7 14:06:32 UTC 2012 - lnussel@suse.de
- update to new version 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.
- Currently disabled by default, as the device specifier does not properly update.
- 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.
- SSE can be detected at run-time, and be disabled as needed.
- Added support for the new AL_SOFT_source_latency extension.
- Currently, the PulseAudio, ALSA, and MMDevAPI backends provide proper latency information.
- 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.
- Note, /etc/openal/alsoft.conf is still used to read the configuration like before.
- The configuration sample now gets installed by default.
- undo upstream change to auto spawn pulseaudio (openal-no-autospawn.diff)
-------------------------------------------------------------------
Tue Nov 27 17:18:44 UTC 2012 - cfarrell@suse.com
- license update: LGPL-2.1+ and GPL-2.0+
See the c files in utils/ - looks like a GPL licensed utility is included
(as aggregate)
-------------------------------------------------------------------
Mon Nov 12 09:45:21 UTC 2012 - lnussel@suse.de
- update to git snapshot close to 1.15
- re-enable OSS support
- also rename libopenal0-soft for consistency
-------------------------------------------------------------------
Mon Nov 5 20:16:03 UTC 2012 - reddwarf@opensuse.org
- Remove support for old distributions
- Remove Icon tag and icon file. It's not normal for openSUSE packages to use it
- Remove Conflicts/Provides for rename from openal. Latest release of the old openal was in openSUSE 11.1.
- Use pkgconfig() BuildRequires
- Run spec-cleaner
- Rename libopenal1-soft to libopenal1
- Disable OSS support
-------------------------------------------------------------------
Sat Jul 21 17:28:22 UTC 2012 - dvaleev@suse.com
- the used fpu control bits are x86 specific
-------------------------------------------------------------------
Tue Jun 26 06:50:08 UTC 2012 - lnussel@suse.de
- new version 1.14
* Improved multi-threaded efficiency, relying less on a "big" mutex in favor of rw-locks and atomic operations where possible.
* Added support for HRTF-based mixing. Stereo output only. The default built-in data set only supports 44100hz playback. See the new hrtf.txt for more information.
* Added CMake options to cause a configuration error if the wanted backends aren't available.
* Modified backends so that only one is used at a time (for each playback and capture), to avoid device ownership conflicts.
* Fixed enumeration in certain backends to not list a default device, when the default device is enumerated normally anyway (eg, with DirectSound and PulseAudio).
* Improved device naming to more closely match the names given by the backends.
* Fixed handling of NaN values for float and double buffer samples.
* Added a new efx-presets.h header to define useful reverb presets for EFX.
* Added support for the ALC_EXT_DEDICATED extension.
* Fixed alc.h to include ALC_ENUMERATE_ALL_EXT enums, like other systems.
* Added support for the new AL_SOFT_buffer_samples, AL_SOFT_direct_channels, and ALC_SOFT_loopback extensions.
* Provided an env-var.txt to describe the available options set through environment variables.
* Fixed the source cone angle properties to work with the full 0-to-360 range as intended.
* An env var option is provided to restore the old buggy behavior for apps that need it.
* Added an example program that streams sound using ffmpeg.
* Added a utility to make HRTF data files from the KEMAR diffuse and compact data sets.
- removed rpmlintrc in favor of a lecacy exception in rpmlint itself
-------------------------------------------------------------------
Mon Feb 21 07:05:50 UTC 2011 - lnussel@suse.de
- new version 1.13
* Added support for the ring modulator EFX effect.
* Duplication of stereo sources (onto side- and rear-channels) in now enabled by default.
This can still be disabled via alsoft.conf.
* Support for the new AL_SOFT_loop_points and AL_SOFT_buffer_sub_data extensions.
* Added the ability to redirect log output to a file, by setting the ALSOFT_LOGFILE environment variable.
* Improved invalid parameter checks.
* Better checks against integer overflows when allocating buffer storage.
* Internal mixer support for 8-, 16-, and 32-bit input formats, improving memory consumption by not converting them all to 32-bit.
* Improved device-change handling with the PulseAudio backend.
* All available PulseAudio devices are now enumerated with ALC_ENUMERATE_ALL_EXT.
* PulseAudio devices again use the periods and period_size config options.
* Improved stability when PortAudio is enabled.
The library tends to cause a crash when it's unloaded and reloaded.
* Added a WaveOut backend for Windows.
* Added a cubic resampler to replace the cosine resampler.
* Increased the maximum number of source auxiliary sends to 4, and changed the default to 1.
* Massive internal changes to the mixer and buffer loading code, designed for future improvements for allowable input and output formats.
-------------------------------------------------------------------
Tue Mar 30 08:06:02 UTC 2010 - lnussel@suse.de
- new version 1.12.854
* Fixed playback when the PulseAudio buffer is calculated to be more than 64KB.
* Restored compatibility with some older PulseAudio libs.
* Alternative buffer sizing for PulseAudio, specified using a new config option.
* Improved buffer size calculations, to prevent drastic latency changes when certain properties (such as ALC_FREQUENCY) are modified.
* Added capture support for the PortAudio backend.
* Support for PortAudio under Windows.
* Added support for the format extensions AL_EXT_MULAW, AL_EXT_MULAW_MCFORMATS, and AL_EXT_DOUBLE.
* Support for the new ALC_EXT_thread_local_context extension.
* Improved library load time by delaying backend device probing until needed.
* Updated alext.h to provide EFX tokens and function types.
* Unsupported effects and filters are no longer returned by alGetEnumValue.
* The Wave File Writer device now creates WAVEFORMATEXTENSIBLE files, to better handle multi-channel and float output.
-------------------------------------------------------------------
Mon Jan 18 08:10:58 UTC 2010 - lnussel@suse.de
- new version 1.11.753
* Fixed compatibility with newer PulseAudio libs
* The PulseAudio backend will now be tried first, when available
* Fixed a crash with the echo effect
* Configurable resampler, supporting point, linear (default), and
cosine methods
* Improved reverb, which now supports the Modulation and Echo
properties
* The alsoft/.conf/.ini/rc drivers config option now allows unnamed
backends to remain available, by ending the device list with a
comma (,)
* PulseAudio playback will try to use an output frequency and
channel format that best matches the default sink If the sink
device is configured for 5.1 output at 48khz, for example, OpenAL
Soft will automatically use 5.1 output at 48khz, unless overridden
in the config file.
* Multi-channel sounds are now passed through the auxiliary sends
Although they are down-mixed to mono, losing channel separation.
* Fixed playback when creating a second context from a device
* Added a new config option to enable real-time priority when mixing
for certain backends (ALSA, OSS, Solaris, and DirectSound)
* Buffers now store 32-bit float sample data internally, to retain
32-bit sample accuracy
* Added a new head-dampening config option, for mono and stereo
playback This slightly filters sounds coming from behind, allowing
for some subtle differences between front and back sound sources.
* Added an option to allow spawning the PulseAudio server on demand
* Support for the new AL_EXT_source_distance_model extension
-------------------------------------------------------------------
Mon Jan 4 15:02:07 UTC 2010 - lnussel@suse.de
- update to current git snapshot
-------------------------------------------------------------------
Fri Dec 18 16:59:34 CET 2009 - jengelh@medozas.de
- add baselibs.conf as a source
-------------------------------------------------------------------
Mon Nov 9 08:32:43 UTC 2009 - lnussel@suse.de
- new version 1.10.622
* Fixed OSS and PulseAudio backends
* Support for disconnect notifications with PulseAudio when the
server connection dies
* Fixed surround sound channel ordering for PulseAudio playback
* Fixed 7.1 output
* Fixed potential crash when setting an AL_EFFECT_NULL effect on
an auxiliary effect slot
* Backend libraries are now loaded and released as needed
In particular, this allows for backends to be added and
removed at runtime when their corresponding libraries are
installed and uninstalled (provided support for those backends
was compiled in). An active backend will remain available as
long as its in use.
* Support for multiple contexts per device
* Fixed possible ghost references on buffers and auxiliary
slots, if they're attached to sources that are forcibly
deleted on context destruction
- only actually pulseaudio if at least version 0.9.15
-------------------------------------------------------------------
Sun Nov 1 10:08:38 UTC 2009 - lnussel@suse.de
- update to current git snapshot to fix problems with pulseaudio
(bnc#551022)
- disable --as-needed for libopenal.so.0 compatibility library to
force linking against libopenal.so.1
-------------------------------------------------------------------
Thu Oct 29 11:04:51 UTC 2009 - lnussel@suse.de
- new version 1.9.563
* Preliminary support for the new ALC_EXT_disconnect extension.
* Support for 32-bit float playback and capture on some backends
* Proper support for the ALC_FREQUENCY context attribute
* Fixed compatibility with newer PulseAudio libs.
* Fixed parsing of the speaker layout config string.
* Fixed buffer size issues with ALSA capture.
* Fixed a problem where the reported number of processed buffers could be wrong.
* Fixed possible crashes when specifying invalid device pointers.
* Removed the backend-specific period config options, and made it a global option instead.
* Deprecated the refresh config option for the new period_size option.
* Better cleanup of backends when the OpenAL lib is unloaded.
-------------------------------------------------------------------
Tue Jun 9 07:16:51 UTC 2009 - lnussel@suse.de
- new version 1.8.466
* Support for two more effects: AL_EFFECT_EAXREVERB and AL_EFFECT_ECHO
Not all of the EAXREVERB properties will currently affect the output. More
should be supported in the future
* Improved reverb
* Added a PulseAudio backend
* Improved mixer efficiency a bit
* Improved ALSA playback
* Multiple auxiliary slots supported
Default is four, which can be modified with the config file
* Multiple auxiliary sends supported
Default is two per source, which cannot be increased without recompilation.
The amount can be decreased with the config file
-------------------------------------------------------------------
Wed May 6 16:09:16 CEST 2009 - lnussel@suse.de
- new version 1.7.411
* New table-based panning algorithm, allowing the center channel to be included in the mix
* Speaker arrangements are now configurable
* Added a new PortAudio backend
* Some changes to the ALSA device list
Standard enumeration will now only list a single ALSA playback device (for "default"), and there should be no more name clashes preventing a device with the same name from being used
* Low-pass filters now affect multi-channel sources
* Corrections for 6.1 channel placements
* Multi-channel sources are now re-mixed when using a different output mode
This prevents source channels from being lost if there isn't a matching output channel (eg. 5.1 sources on stereo output)
* Multi-channel source gains are now correctly clamped to the source's min/max gains
* The air absorption calculation now uses the correct distance
* The source room rolloff factor can now be set up to 10
* Updated reverb code that better follows the reverb parameters
- add pulseaudio backend from git head and enable by default
-------------------------------------------------------------------
Fri Apr 17 10:13:54 CEST 2009 - lnussel@suse.de
- add shlib policy conform provides for libraries
-------------------------------------------------------------------
Fri Jan 9 13:33:32 CET 2009 - lnussel@suse.de
- new version 1.6.372
* Channel volumes are now ramped from source position changes and when starting playback, to help prevent pops and clicks
* The AL_DOPPLER_FACTOR source property works
* Implemented a new Solaris backend for playback
* The openal-info example will now print EFX information
* More EFX compliance fixes
* Support for non-mmap ALSA capture
* A new low-pass filter, based on the I3DL2 specification
* The ALSOFT_CONF environment variable may be used to specify an additional configuration file
* A completely new reverb effect implementation
* Improved CPU use for the DirectSound backend
-------------------------------------------------------------------
Wed Aug 20 10:00:56 CEST 2008 - lnussel@suse.de
- new version 1.5.304
* reduces buffer size to reduce latency
* installs pkg-config file
* better EFX compliance
* fixes doppler shift
* needs less memory in the mixer
-------------------------------------------------------------------
Thu Jul 17 11:33:26 CEST 2008 - lnussel@suse.de
- backport patch to reduce buffer size from git
- fix mandriva build
-------------------------------------------------------------------
Thu Jun 5 16:05:20 CEST 2008 - lnussel@suse.de
- split package to have libraries in subpackages
-------------------------------------------------------------------
Thu Jun 5 14:39:24 CEST 2008 - lnussel@suse.de
- new package version 1.4.272 based on b-s-a's and ickruis' work

212
openal-soft.spec Normal file
View File

@ -0,0 +1,212 @@
#
# spec file for package openal-soft
#
# Copyright (c) 2022 SUSE LLC
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
# upon. The license for this file, and modifications and additions to the
# file, is the same license as for the pristine package itself (unless the
# license for the pristine package is not an Open Source License, in which
# case the license is the MIT License). An "Open Source License" is a
# license that conforms to the Open Source Definition (Version 1.9)
# published by the Open Source Initiative.
# Please submit bugfixes or comments via https://bugs.opensuse.org/
#
Name: openal-soft
Version: 1.22.2
Release: 0
Summary: Audio library with an OpenGL-resembling API
License: GPL-2.0-or-later AND LGPL-2.1-or-later AND MIT
Group: Development/Libraries/C and C++
URL: https://www.openal-soft.org/
Source0: https://www.openal-soft.org/openal-releases/openal-soft-%{version}.tar.bz2
Source1: libopenalcompat.c
Source3: baselibs.conf
# PATCH-FIX-UPSTREAM openal-no-autospawn.diff
Patch0: openal-no-autospawn.diff
BuildRequires: cmake >= 3.0
BuildRequires: gcc-c++
BuildRequires: pkgconfig
BuildRequires: pkgconfig(Qt5Widgets)
BuildRequires: pkgconfig(alsa)
# BuildRequires: pkgconfig(jack) # undefined reference to `jack_error_callback'
# BuildRequires: pkgconfig(libpipewire-0.3)
BuildRequires: pkgconfig(libmysofa)
BuildRequires: pkgconfig(libpulse)
BuildRequires: pkgconfig(portaudio-2.0)
BuildRequires: pkgconfig(sdl2)
BuildRequires: pkgconfig(zlib)
%description
OpenAL is an audio library designed in the spirit of the OpenGL API.
OpenAL provides capabilities for playing audio in a virtual 3D
environment. Distance attenuation, doppler shift, and directional
sound emitters are among the features handled by the API. More
advanced effects, including air absorption, occlusion, and
environmental reverb, are available through the EFX extension. It
also facilitates streaming audio, multi-channel buffers, and audio
capture.
%package -n libopenal0
Summary: Audio library with an OpenGL-resembling API
License: LGPL-2.1-or-later
Group: System/Libraries
%description -n libopenal0
OpenAL is an audio library designed in the spirit of the OpenGL API.
libopenal.so.0 is just a wrapper around libopenal.so.1 for
compatibility with old software.
%package devel
Summary: Development headers for OpenAL Soft
License: LGPL-2.1-or-later
Group: Development/Languages/C and C++
Requires: glibc-devel
Requires: libopenal1 = %{version}
Provides: openal-devel = %{version}-%{release}
%description devel
OpenAL is an audio library designed in the spirit of the OpenGL API.
This subpackage contains libraries and header files for developing
applications that want to make use of openal-soft.
%package makemhr
Summary: OpenAL Soft HRTF generation utility
License: GPL-2.0-or-later
Group: Productivity/Multimedia/Sound/Utilities
Conflicts: openal-soft-devel < %{version}
Provides: makehrtf = %version-%release
Provides: openal-soft-devel:%{_bindir}/makehrtf
Obsoletes: makehrtf < %version
%description makemhr
OpenAL is an audio library designed in the spirit of the OpenGL API.
This package contains the makemhr utility for creating head-related
transfer functions (HRTF).
%package data
Summary: OpenAL Soft auxiliary data and config
License: LGPL-2.1-or-later
Group: Productivity/Multimedia/Sound/Utilities
Provides: openal-soft = %{version}
Obsoletes: openal-soft <= %{version}
BuildArch: noarch
%description data
OpenAL is an audio library designed in the spirit of the OpenGL API.
This package contains auxiliary data and config files.
%package tools
Summary: OpenAL Soft tools
License: LGPL-2.1-or-later AND MIT
Group: Productivity/Multimedia/Sound/Utilities
Conflicts: openal-soft < %{version}
Provides: openal-soft:%{_bindir}/openal-info
%description tools
OpenAL is an audio library designed in the spirit of the OpenGL API.
This package contains additional tools for OpenAL.
%package -n libopenal1
Summary: Audio library with an OpenGL-resembling API
License: LGPL-2.1-or-later
Group: System/Libraries
Recommends: openal-soft-data
Conflicts: openal-soft < %{version}
%description -n libopenal1
OpenAL is an audio library designed in the spirit of the OpenGL API.
OpenAL provides capabilities for playing audio in a virtual 3D
environment. Distance attenuation, doppler shift, and directional
sound emitters are among the features handled by the API. More
advanced effects, including air absorption, occlusion, and
environmental reverb, are available through the EFX extension. It
also facilitates streaming audio, multi-channel buffers, and audio
capture.
%prep
%autosetup -p1
# License conflict with the rest of the stack, and we don't use it (Android backend)
rm -v alc/backends/opensl.cpp
%build
# jack backend doesn't work due to missing jack_error_callback
#
# ALSOFT_CPUEXT_SSE2 controls -msse2, the other configure flags do not seem
# lead to -m. And everything else (i.e. in source) seems CPUID-guarded.
#
%cmake \
-DCMAKE_BUILD_TYPE=Release \
-DALSOFT_CONFIG=ON \
-DALSOFT_DLOPEN=OFF \
%ifarch %ix86
-DALSOFT_CPUEXT_SSE2:BOOL=OFF \
%endif
-Wno-dev
%make_jobs
gcc -Wall %{optflags} -fPIC -DPIC -Wl,-soname,libopenal.so.0 -shared -Wl,--no-as-needed -L. -lopenal -o libopenal.so.0 %{SOURCE1}
%install
%cmake_install
install -D -m 0644 build/libopenal.so.0 %{buildroot}%{_libdir}/libopenal.so.0
install -D -m 0644 /dev/null %{buildroot}/%{_sysconfdir}/openal/alsoft.conf
%post -n libopenal0 -p /sbin/ldconfig
%postun -n libopenal0 -p /sbin/ldconfig
%post -n libopenal1 -p /sbin/ldconfig
%postun -n libopenal1 -p /sbin/ldconfig
%files tools
%license COPYING
%{_bindir}/openal-info
%{_bindir}/alsoft-config
%{_bindir}/altonegen
%{_bindir}/alrecord
%{_bindir}/alloopback
%files makemhr
%{_bindir}/makemhr
%files data
%license COPYING
%dir %{_sysconfdir}/openal
%ghost %config(noreplace) %attr(0644,root,root) %{_sysconfdir}/openal/alsoft.conf
%dir %{_datadir}/openal
%{_datadir}/openal/alsoftrc.sample
%dir %{_datadir}/openal/hrtf
%{_datadir}/openal/hrtf/Default?HRTF.mhr
%dir %{_datadir}/openal/presets
%{_datadir}/openal/presets/3D7.1.ambdec
%{_datadir}/openal/presets/hexagon.ambdec
%{_datadir}/openal/presets/itu5.1.ambdec
%{_datadir}/openal/presets/itu5.1-nocenter.ambdec
%{_datadir}/openal/presets/presets.txt
%{_datadir}/openal/presets/rectangle.ambdec
%{_datadir}/openal/presets/square.ambdec
%files -n libopenal1
%{_libdir}/libopenal.so.1*
%files -n libopenal0
%{_libdir}/libopenal.so.0
%files devel
%{_libdir}/libopenal.so
%{_libdir}/pkgconfig/openal.pc
%dir %{_libdir}/cmake/OpenAL
%{_libdir}/cmake/OpenAL/OpenAL*.cmake
%dir %{_includedir}/AL
%{_includedir}/AL/al.h
%{_includedir}/AL/alc.h
%{_includedir}/AL/alext.h
%{_includedir}/AL/efx.h
%{_includedir}/AL/efx-creative.h
%{_includedir}/AL/efx-presets.h
%changelog