[2024-08-03] makemhr-f67c3ea
Pre-release
Pre-release
·
989 commits
to master
since this release
Commits
- edfd2d5: Replace an array with a switch (Chris Robinson)
- 1b50e79: Store the filter table directly in the cubic filter object (Chris Robinson)
- 5381eba: Make better use of cache lines for the ringbuffer indices (Chris Robinson)
- b57fde3: Allow using the total capacity of the RingBuffer (Chris Robinson)
- 3f09148: Properly use std::hardware_destructive_interference_size (Chris Robinson)
- d4e5dbf: Fix a bug that playback via portaudio does not work at all (kcat#975) (tyan0) #975
- 4594ea3: Rename some variables for clarity (Chris Robinson)
- 119be32: Check that writeAdvance and readAdvance don't over/underflow (Chris Robinson)
- 6b2df6a: Calculate the ending mix counter value earlier (Chris Robinson)
- 5be62e2: Pass a span to ApplyDistanceComp (Chris Robinson)
- 6eae94c: Check if a file exists instead of relying on an exception (Chris Robinson)
- 1dd3dc4: Explicitly use load and store for atomics (Chris Robinson)
- 764ffa2: Fix cubic_tables.h includes (Chris Robinson)
- 67f1220: Collapse some nested ifs (Chris Robinson)
- cf9957b: Check when resampling to do a simple copy (Chris Robinson)
- bb4956f: Use a proper type for the resampler padding length (Chris Robinson)
- 83c66ae: Add voice properties to do left-right panning (Chris Robinson)
- 7668c35: Make mSampleData an array of floats instead of an array of arrays (Chris Robinson)
- bb74cce: Reduce the depth of some branches (Chris Robinson)
- e0f7ed6: Use the correct return type for subspan (Chris Robinson)
- cb26649: Use spans for preparing samples from buffers (Chris Robinson)
- 216ad8d: Fix some clang-tidy complaints (Chris Robinson)
- 379d9cf: Use spans for PPhaseResampler::process (Chris Robinson)
- d6520c4: Fix PFFFT compilation for PowerPC (kcat#955) (Darryl Pogue) #955
- 3da6ad5: Move storage format definitions to a separate file (Chris Robinson)
- 3e19942: Fix up some includes (Chris Robinson)
- 2907118: Add the _SOFT suffix to the I32 UHJ formats (Chris Robinson)
- 25aa7b3: Add an in-progress extension for panning sources (Chris Robinson)
- 976ba8e: Give names to unnamed structs (Chris Robinson)
- 313318e: Iterate over the async events directly (Chris Robinson)
- 7821288: Use an iterator to iterate over the channel orders (Chris Robinson)
- 1330785: Rename some 'pan's to 'gain's for clarity (Chris Robinson)
- 13e4418: Fix buffer load size for negative buffer offsets (Chris Robinson)
- 07cd865: Use spans more for voice processing (Chris Robinson)
- 33781dd: Use spans instead of raw pointers for the filters' output (Chris Robinson)
- e0be6e5: Remove const from a return type (Chris Robinson)
- 4a6a081: Avoid some more raw pointers (Chris Robinson)
- ded3f69: Use a span for the distance compensation buffer (Chris Robinson)
- 1845789: Use span's iterators for FlexArray (Chris Robinson)
- bed0fc8: Simplify generating IDs (Chris Robinson)
- baa75fa: Fix ringbuffer overflow check (Chris Robinson)
- e5108cf: Use a subspan instead of pointer manipulation (Chris Robinson)
- 0b8d7d7: Recognize the system device name for PipeWire and PulseAudio (Chris Robinson)
- 9018fe3: Avoid some pointer arithmetic (Chris Robinson)
- 59cafb9: Avoid using preexisting enum values (Chris Robinson)
- 8402823: Make sure a needed header is included (Chris Robinson)
- 95d07ac: Mark a function maybe_unused that's only used in asserts (Chris Robinson)
- 7c3f3da: Move some function definitions to a more appropriate source (Chris Robinson)
- f197e34: Use exceptions to handle buffer errors (Chris Robinson)
- cb0f00a: Use exceptions for effect slot errors (Chris Robinson)
- ee8de61: Handle AL errors more consistently (Chris Robinson)
- 43913b1: Use more consistent parameter names (Chris Robinson)
- eab5c63: Avoid some pointer arithmetic (Chris Robinson)
- d84601f: Avoid some more direct pointer manipulation (Chris Robinson)
- 24a37b9: Make another global variable inline (Chris Robinson)
- e906f40: Don't pass an iterator where a pointer is expected (Chris Robinson)
- 28f7b53: Workaround libc++ defining __cpp_lib_hardware_interference_size (Chris Robinson)
- c118daf: Add a pointer wrapper for al::span's iterators (Chris Robinson)
- 44f691e: Mark some conditionally-used parameters as maybe_unused (Chris Robinson)
- 7b67108: Avoid some more direct pointer manipulation (Chris Robinson)
- e513019: Make a span's contents const (Chris Robinson)
- a920150: Avoid pointers for calculating B-Format upsampler matrix (Chris Robinson)
- bc7cb17: Clean up some more raw pointer arithmetic (Chris Robinson)
- ff1183f: Use spans a bit more in place of pointers (Chris Robinson)
- 4a74b22: Recognize _M_ARM64 in PFFFT for MSVC NEON support (Chris Robinson)
- a8ead85: Avoid raw pointers in uhjdecoder/uhjencoder (Chris Robinson)
- 692d7cb: Don't over-allocate the active effect slot array (Chris Robinson)
- 535972d: Protect effect slot state changes with the effect slot lock (Chris Robinson)
- 47c1158: Avoid pointer arithmetic in sofa-info and makemhr (Chris Robinson)
- 3430d04: Remove unused getopt (Chris Robinson)
- bcf4d6b: Use a more appropriate type for an array offset (Chris Robinson)
- ed33eb1: Fix uhjencoder's fallback channel IDs (Chris Robinson)
- f7c5237: Avoid pointer arithmetic with near-field filter mixing (Chris Robinson)
- 3e117dc: Avoid pointer arithmetic with HRTF storage (Chris Robinson)
- 68b135a: Simplify calculating the 90-degree phase shift FIR filter (Chris Robinson)
- a0e9da2: Remove an unused initializer (Chris Robinson)
- 94a6230: Don't try to sort an empty list (Chris Robinson)
- 7af672e: Change a couple string literals to string_view literals (Chris Robinson)
- 937b9e7: Fix value truncation warning (Chris Robinson)
- 756b50b: Suppress warnings about using hardware_interference_size (Chris Robinson)
- d60a9f9: Return a vector of strings for enumeration from the backends (Chris Robinson)
- 10a8756: Make an operator bool explicit (Chris Robinson)
- 7dcb770: Avoid repeating the return type (Chris Robinson)
- 3d4f537: Support mono input files in uhjencoder (Chris Robinson)
- d000c0b: Use the proper size for the spans in uhjencoder (Chris Robinson)
- 5979f18: Process 4 samples at a time in PhaseShifterT::process (Chris Robinson)
- 5b6e0df: Do 4 samples at a time in PhaseShifterT::process for NEON (Chris Robinson)
- 0552559: Add an aldirect example for the Direct extension (Chris Robinson)
- 5bc09d3: Minor clean up of some std::generate calls (Chris Robinson)
- e95c370: Assert for out-of-bounds subspans instead of throwing (Chris Robinson)
- e2d4f88: Remove some unnecessary RESTRICT uses (Chris Robinson)
- 361ed79: Pass spans to the mixer functions instead of pointers (Chris Robinson)
- 739670e: Pass spans to the HRTF mixer functions instead of pointers (Chris Robinson)
- ee54760: Inline a couple more globals (Chris Robinson)
- 51fd195: Remove a couple inferred template parameters (Chris Robinson)
- 55af572: Round up the HRIR length for the SIMD HRTF filter (Chris Robinson)
- f1606c4: Use spans in place of some pointer and iterator manipulation (Chris Robinson)
- 7f0a625: Be a bit safer and less explicit with spans (Chris Robinson)
- d74ffef: Avoid more raw pointer manipulation in uhjfilter (Chris Robinson)
- f09d9ae: Fix implicit signedness conversion warnings on 32-bit (Chris Robinson)
- 54ccfd1: Pass spans to the resamplers instead of pointers to arrays (Chris Robinson)
- 3ad68aa: Rename the cubic resampler to gaussian (Chris Robinson)
- fdd1643: (Re-)add a cubic spline resampler (Chris Robinson)
- 2538d6e: Allow specify other channel counts for PortAudio playback (Chris Robinson)
- 4f1cc80: Add enumeration to the PortAudio backend (Chris Robinson)
- 9ecf3d0: Update AppVeyor to VS 2022 (Chris Robinson)
- 6fc04e9: Remove extra '; almalloc.h (kcat#986) (Trung Lê) #986
- 111397c: Avoid calling std::max in alignas (Chris Robinson)
- 4dce817: Clean up some temporary span definitions (Chris Robinson)
- 49da29d: Remove unnecessary NOLINT comments (Chris Robinson)
- 89ef242: Simplify sorting new elements (Chris Robinson)
- da17048: Replace a set of ifs with a switch (Chris Robinson)
- 7f94f6f: Simplify PortAudio device enumeration (Chris Robinson)
- 9fcc3af: Clean up some asserts and add an alassert (Chris Robinson)
- 83719b6: Clarify a log message (Chris Robinson)
- 7dcfe0f: Disable SndIO by default on non-BSD systems (Chris Robinson)
- ad5519b: Rename FindSoundIO.cmake to FindSndIO.cmake (Chris Robinson)
- 1f85c86: Rename SoundIO to SndIO (Chris Robinson)
- 09cf896: Add missing include (Chris Robinson)
- 617de33: Fix an implicit array-to-pointer decay (Chris Robinson)
- eb76953: Use spans more in the reverb effect (Chris Robinson)
- 16d7413: Reduce the number of mutable variables in the reverb all-passes (Chris Robinson)
- 37f9dbc: Remove an undesireable cast (Chris Robinson)
- 9647432: Replace a loop with a couple algorithms (Chris Robinson)
- 48c1bdd: Fixed compilation as a subdirectory with MinGW (kcat#991) (Dominik) #991
- 82682fa: Avoid interlaced mixing for the non-RT JACK mixing (Chris Robinson)
- cec43b6: Use a span to register JACK ports (Chris Robinson)
- db3420f: Ensure the context is connected when probing PulseAudio devices (Chris Robinson)
- 47aff89: Use std::transform in the mixers instead of loops (Chris Robinson)
- 660668b: Replace a couple loops with algorithms (Chris Robinson)
- a44a3f8: Fix reverb main delay fading (Chris Robinson)
- b4c081d: Convert a few more loops to algorithms (Chris Robinson)
- c05fc02: Handle a public private enum value in the ALSA backend (Chris Robinson)
- 7e6074c: Avoid fixed-length paths in the router (Chris Robinson)
- 394e133: Check ALROUTER_ACCEPT/REJECT for dlls to accept/reject (Chris Robinson)
- d2ab4fa: Declare variables closer to where they're used (Chris Robinson)
- eaf824f: Use std::unordered_map for the handle->index map (Chris Robinson)
- ef33e89: Clean up some clang-tidy warnings in the router (Chris Robinson)
- c93f045: Use unsigned indices for the iface maps (Chris Robinson)
- c547df0: Don't include empty names for the router to accept/reject (Chris Robinson)
- 8240fa5: Properly check for empty paths (Chris Robinson)
- bf4413a: Reduce the amount of macro hackery for loading functions (Chris Robinson)
- c86085d: Make sure DriverIface is not copyable (Chris Robinson)
- 64f8e83: Clean up some clang-tidy header warnings (Chris Robinson)
- 258bec8: Make the function pointer order consistent with the declarations (Chris Robinson)
- 8844f7d: Add missing include (Chris Robinson)
- 8a522c2: Avoid reference-to-function template parameters (Chris Robinson)
- 0317ce3: Fix some clang-tidy warnings in the WASAPI backend (Chris Robinson)
- d330bac: Fix more clang-tidy warnings in the dsound and winmm backends (Chris Robinson)
- aa5954f: Fix narrowing conversion warning for Win32 semaphores (Chris Robinson)
- 26a06ed: Make some struct methods const (Chris Robinson)
- 369c2bb: Fix some missing and unnecessary includes (Chris Robinson)
- 0036434: Remove some explicit inlines (Chris Robinson)
- 216d99f: Fix some signed/unsigned comparison warnings with MSVC (Chris Robinson)
- 470b51f: Don't define _POSIX_C_SOURCE or _XOPEN_SOURCE (Chris Robinson)
- beef249: Remove some RESTRICT uses (Chris Robinson)
- d39f1e1: Don't check for __restrict in CMake (Chris Robinson)
- 8032217: Avoid some unnecessary tmp vars (Chris Robinson)
- 4b49141: Remove an unused cmakedefine (Chris Robinson)
- 13025e4: Remove unused HAVE_MALLOC_H check (Chris Robinson)
- b938cce: Remove unused HAVE_INITGUID_H check (Chris Robinson)
- 1b03e21: Avoid declaring some "C-style arrays" (Chris Robinson)
- 283b753: Remove a couple unnecessary includes (Chris Robinson)
- f75cd35: Use a vector instead of a unique_ptr of an array (Chris Robinson)
- 6ef4186: Fix includes for uhjfilter (Chris Robinson)
- 6083d9f: Don't inline PhaseShifterT
::process (Chris Robinson) - 1df283d: Fix vmorpher effect includes (Chris Robinson)
- 4f32de7: Pass small trivially-copyable types by value (Chris Robinson)
- 82ccc4f: Use QStringLiteral to avoid extraneous QString copies (Chris Robinson)
- e8daa5b: Don't use Qt keywords (Chris Robinson)
- 6b4bbcc: Handle AL effect properties with a variant (Chris Robinson)
- d24fc10: Use algorithms in place of some loops (Chris Robinson)
- 44a6fce: Shorten some long lines (Chris Robinson)
- 857e300: Fill the whole cubic filter table used by reverb and chorus (Chris Robinson)
- 4f038c0: Reduce the chorus effect output gain (Chris Robinson)
- 523e73a: Return the calculated delays from Modulation::calcDelays (Chris Robinson)
- cab5eed: Remove some unnecessary assumes (Chris Robinson)
- 2143641: Remove some unnecessary enums (Chris Robinson)
- 6397d1c: Better check EAXReverb support in the alreverb example (Chris Robinson)
- 10a8f30: Use a variant to select between temp source handle storage (Chris Robinson)
- 41e7f27: Make sure struct members are initialized (Chris Robinson)
- 606622c: Remove an unneeded include (Chris Robinson)
- 5511923: Avoid unnecessary templates (Chris Robinson)
- 7e5ac15: Remove some more unnecessary includes (Chris Robinson)
- b8b992c: Add bottom speaker labels (Chris Robinson)
- 6fa3560: Add support for 7.1.4.4 (Chris Robinson)
- 4ddfec9: Prevent copying polymorphic base classes (Chris Robinson)
- 844c2d7: Remove a couple unused macros (Chris Robinson)
- 7ccf46d: Make sure a struct is properly copied (Chris Robinson)
- 4953c23: Remove some unneeded templates and macros (Chris Robinson)
- af27f0e: Exception types need to be copyable (Chris Robinson)
- bf5fe65: Include a more appropriate header for PipeWire (Chris Robinson)
- b33366a: EaxException should be copyable too (Chris Robinson)
- a0e238f: Don't require the effect slot to be stopped to set a buffer (Chris Robinson)
- 2719ce2: Remove the effect slot play/stop functions (Chris Robinson)
- 2604ffa: Return an appropriate type from a copy assignment operator (Chris Robinson)
- 22c9b2d: Clean up some includes (Chris Robinson)
- 6d5d9a8: Adjust the commented defaults in the alsoft config sample (Chris Robinson)
- fddfbb6: Don't lock the device state when preparing a new effect state (Chris Robinson)
- e72f76a: Replace a couple loops with algorithms (Chris Robinson)
- e8191a1: Replace some more for loops with algorithms (Chris Robinson)
- dcfc09a: Update some includes (Chris Robinson)
- f21e916: Recognize EAX5 flags when setting them (Chris Robinson)
- 5916ec1: Use std::to_address if available (kcat#1002) (Yuriy Chernyshov) #1002
- aca1d42: Define ALSOFT_EAX using target_compile_definitions instead of config.h (Chris Robinson)
- 61ff213: Use std::string for the disconnect event message (Chris Robinson)
- 510a0c3: Double the async event queue size (Chris Robinson)
- f91c044: Do a checked span truncation (Chris Robinson)
- 3c9cb48: Return *this from an assignment operator (Chris Robinson)
- 895e38a: Don't redeclare the same spans (Chris Robinson)
- ac2983f: Declare some deprecated but exported functions (Chris Robinson)
- 1f672eb: Flip the sign for the super stereo phase shift components (Chris Robinson)
- ae19ff2: Fix reading uints from PropVariant (Chris Robinson)
- ef13491: Workaround an alignment issue for 32-bit MinGW targets (Chris Robinson)
- 0134982: Add
EXCLUDE_FROM_ALLproperty when adding Oboe from source (kcat#1014) (Hugo Hromic) #1014 - d1af692: Update (timeester3648)
- c410017: Update (timeester3648)
- 7d8bb35: Update submodule (timeester3648)
- 919ccec: Update submodule (timeester3648)
- 7855041: Update (timeester3648)
- 683f408: Update (timeester3648)
- 71d3c81: Redirect cubic to spline when loading alsoft.ini (kcat#1018) (Andrew Lamontagne) #1018
- 9fbffd7: Construct a string in a try block (Chris Robinson)
- 6e82f31: Properly get a span from an array (Chris Robinson)
- 9ed03c4: Add I32 for B-Format buffer formats to AL_EXT_32bit_formats (Chris Robinson)
- 0ee47a1: Update alsoft-config's "cubic" fallback (Chris Robinson)
- a77a395: Remove identity casts (Chris Robinson)
- 142cf53: Fix some iterator and span uses (Chris Robinson)
- baba766: Update submodule (timeester3648)
- 59b275a: Trace the ambisonic output format (Chris Robinson)
- a707e9a: Use a hexagon for first-order 2D upsampling (Chris Robinson)
- aafaf6c: Recreate the PortAudio stream when resetting (Chris Robinson)
- 3b10c6f: Add a LAF file player example (Chris Robinson)
- a93915c: Use std::accumulate instead of std::reduce (Chris Robinson)
- a3dff1d: Fix max enable bit check (Chris Robinson)
- 6dc6669: Add a byteswap method (Chris Robinson)
- f83b054: Support big-endian targets in allafplay (Chris Robinson)
- cca3d47: Check for AL_EXT_FLOAT32 support before using it (Chris Robinson)
- 1318bea: Support 24-bit LAF files (Chris Robinson)
- 0b528bc: Be more robust when looking for LAF files' HEAD marker (Chris Robinson)
- efd2e8f: Reopen the SDL device when resetting it (Chris Robinson)
- 6f9db5c: Set the device name when opening the default device with SDL2 (Chris Robinson)
- 7b26a76: Update some github action versions (Chris Robinson)
- a546042: Replace a couple for_each uses to workaround a MSVC 2019 bug (Chris Robinson)
- a217938: Pass a span to Compressor::process (Chris Robinson)
- b49ab7c: Allow sample-accurate start times (Chris Robinson)
- 105f885: Correctly get the NFC sample buffer (Chris Robinson)
- a56689d: Use a loop in ApplyCoeffs for NEON (Chris Robinson)
- 9e799a1: Use the correct type to offset an iterator (Chris Robinson)
- f67c3ea: Update (timeester3648)