Repository navigation
[2024-01-24] makemhr-0376c6a
Pre-release
Pre-release
Commits
- 4b67a1f: Don't prematurely change ALCdevice::BufferSize (Chris Robinson)
- 3b838bc: Avoid overriding main with SDL (Chris Robinson)
- cbcb140: Avoid returning an array for constexpr tables (Chris Robinson)
- 9bf67c7: Use complex floats for convolution reverb FFTs (Chris Robinson)
- f176484: Use the existing common FFT functions in makemhr (Chris Robinson)
- 77f8571: Add missing device_clock/source_latency enums for querying (Chris Robinson)
- 5c7b842: Add more formats for displaying in examples (Chris Robinson)
- 59f3424: Fix building with PipeWire 0.3.49 and earlier (Chris Robinson)
- 73df39b: Use the correct variable for reading the WASAPI playback rate (Chris Robinson)
- df6d61d: Use standard likely/unlikely attributes when available (Chris Robinson)
- 4de5c7d: Avoid some uses of the LIKELY/UNLIKELY macros (Chris Robinson)
- c55d6d8: Avoid LIKELY/UNLIKELY macros (Chris Robinson)
- 25a6814: Don't warn for attributes being in a later standard (Chris Robinson)
- 4d75706: Avoid using a macro to wrap standard attributes (Chris Robinson)
- 3ff61b5: Avoid setting PipeWire stream properties with separate calls (Chris Robinson)
- 4c2a96e: Limit voice update fading length to 64 samples (Chris Robinson)
- b0be3bf: Rename a potentially confusing member function (Chris Robinson)
- 7c3f201: Implement an al::unreachable wrapper/helper (Chris Robinson)
- 42090e9: Avoid manually specifying FFT template parameters (Chris Robinson)
- c40e1bc: Better handle span sources from iterators (Chris Robinson)
- fcf4e60: Define a destructor as default instead of empty (Chris Robinson)
- e1f3d5c: Include the router in the github actions archive (Chris Robinson)
- 522a09c: Build with PipeWire in GitHub CI (Chris Robinson)
- 2bd11ba: Fix paths for creating the archive (Chris Robinson)
- 8b806c0: Avoid extraneous temporaries when filling vectors (Chris Robinson)
- 84cfef8: Avoid inlining certain exception functions (Chris Robinson)
- d281ffa: Use a bitset for the enabled event flags (Chris Robinson)
- ab19694: Rework reverb fading to toggle between pipelines (Chris Robinson)
- 25796a0: Clear the old reverb pipeline buffer when it's done (Chris Robinson)
- ee3ba83: Avoid inlining LoadedHrtf's destructor (Chris Robinson)
- b53fea6: Create debug Windows builds with GitHub CI (Chris Robinson)
- 465ee8a: Include the build type in the CI job names (Chris Robinson)
- 14d7809: Change the order of compiler checks in assume_aligned (Chris Robinson)
- b4e281e: Revert "Change the order of compiler checks in assume_aligned" (Chris Robinson)
- 6753601: Avoid unreachable() in assume_aligned (Chris Robinson)
- a0d5cc0: Use a size_t for the reverb decay fade count (Chris Robinson)
- 775d9ac: Remove a redundant comment (Chris Robinson)
- bbc35ff: Turn a static member function into a lambda where it's used (Chris Robinson)
- e87623c: Clean up some reverb mixing loops (Chris Robinson)
- 860fa9c: Make sure to update the input filters with partial updates (Chris Robinson)
- 465df3e: Include the reverb delay times in the fade sample count (Chris Robinson)
- 17f725d: Avoid duplicate code to update the reverb delay lines (Chris Robinson)
- f177f62: Avoid some macros for checking property sizes and values (Chris Robinson)
- 4fe6eba: Avoid using a macro to set a context error and return (Chris Robinson)
- 5340e32: Constify some parameters (Chris Robinson)
- 38b1030: Avoid a manual loop to find a buffer queue entry (Chris Robinson)
- 980665a: Add macros to prevent declaring API functions (Chris Robinson)
- 98ba092: Update some header comments (Chris Robinson)
- beaffdd: Use a simple spinlock to protect the current global context (Chris Robinson)
- fa52cea: Simplify constructing the process path and executable name (Chris Robinson)
- cba526e: Display the device sample rate in openal-info (Chris Robinson)
- 073f970: Avoid some explicit casts and references (Chris Robinson)
- b959aa9: Swap the order of some checks to simplify voice setup (Chris Robinson)
- 2e98295: Handle UHJ better with convolution reverb (Chris Robinson)
- 7cd9bf1: Fix a comment (Chris Robinson)
- 52224f8: Multiply by the inverse instead of divide (Chris Robinson)
- 8054ccd: Combine multiple al_printf definitions (Chris Robinson)
- e38413a: Handle negative offset starts for callback buffers (Chris Robinson)
- 078b50e: Simplify handling effect output for spatial effects (Chris Robinson)
- 58a18ab: Add a simple wrapper to call the mixer function (Chris Robinson)
- 23c8a35: Add and use mixers that process one input and output channel (Chris Robinson)
- 6d613b3: Combine some duplicate code to mix each channel (Chris Robinson)
- d61376e: Rename some lambda parameters to avoid shadowing warnings (Chris Robinson)
- 3f8a3af: Disable MSVC warning C5051 (Chris Robinson)
- ec30a30: Avoid using a reversed all-pass for the front stablizer (Chris Robinson)
- 625e64c: Get device config options earlier in a device update (Chris Robinson)
- 9a91682: Update some config comments (Chris Robinson)
- 0ed70ec: Update alsoft-config (Chris Robinson)
- 716f537: Better handle negative sample rate values (Chris Robinson)
- 79ee6a8: Simplify void_t (Chris Robinson)
- fb4300a: Add an option to mix on PipeWire's non-RT thread (Chris Robinson)
- d2cb630: Update a comment (Chris Robinson)
- d9c1ce8: Fix handling the ALC_HRTF_SOFT attribute (Chris Robinson)
- 04fc167: Handle the stereo-encoding option for loopback devices too (Chris Robinson)
- 89c09f6: Don't rely on mRateMatch while waiting for PipeWire timing info (Chris Robinson)
- 6bd541d: Update alsoft-config with the new settings (Chris Robinson)
- a82c29b: Rename some struct members (Chris Robinson)
- 05d934c: Use a span instead of a count+pointer (Chris Robinson)
- 155d27d: Remove the FFT'd resampler from makemhr (Chris Robinson)
- a55c4b1: Fix RingBuffer crash in OpenSL backend (kcat#807) (IamSN0WBALL)
- 976049f: Rename some members for clarity (Chris Robinson)
- 97f2c28: Use cmake's visibility attributes (Chris Robinson)
- 974d1b9: Avoid unnecessary uses of make_optional (Chris Robinson)
- c67064b: Avoid single-use static class method wrappers (Chris Robinson)
- 4bf9461: Avoid inlining the base_exception destructor (Chris Robinson)
- 63921a9: Avoid a dead store (Chris Robinson)
- f601638: Write proper samples when starting the PulseAudio stream (Chris Robinson)
- 3e5ea76: Avoid using a non-0 span length over nullptr (Chris Robinson)
- dd2f72c: Try to handle cmake custom targets better (Chris Robinson)
- e11cae3: Ensure the mixer helpers are properly inlined (Chris Robinson)
- cec6305: Don't use doubles for upsampling B-Format transforms (Chris Robinson)
- 5ef7bed: Don't include the array definition with bin2h (Chris Robinson)
- d9d4457: Don't explicitly try to spawn servers by default (Chris Robinson)
- 0526ecd: clang-tidy cleanups (kcat#800) (Rosen Penev)
- 88796d2: Fix closing parenthesis (Chris Robinson)
- eef886b: Precalculate reused scale factors (Chris Robinson)
- ec2bea8: Use an 8-bit type to hand the HrtfStore IR size (Chris Robinson)
- 8e9833c: Check for nullptr before constructing a new object (Chris Robinson)
- 3d00147: Change a couple macros to constexpr variables (Chris Robinson)
- bb751eb: Fix debug logging on Windows non-release buuilds (Chris Robinson)
- c5d42ce: Use a better frequency bin target for pitch shifting (Chris Robinson)
- 4171f94: Make a variable for a reused value (Chris Robinson)
- 3f2e621: Use a variable to handle a long value definition (Chris Robinson)
- bbf4940: Use constexpr variables instead of macros (Chris Robinson)
- a56b373: Limit pitch shifter pitch between 0.5 and 2. (Chris Robinson)
- 28d1cd0: Slightly improve phase wrapping in the pitch shifter (Chris Robinson)
- 23cbd18: Don't return a large-ish array on the stack (Chris Robinson)
- 5069f04: Improve the output scaling of the pitch shifter (Chris Robinson)
- d6e79c9: Minor code refactor for the frequency shifter effect (Chris Robinson)
- f80470b: Increase the pitch shifter oversample factor to 8 (Chris Robinson)
- c18bf15: Don't force an update if there is no aux slot being replaced (Chris Robinson)
- 5ae38ef: Remove some unused members (Chris Robinson)
- 952446e: Remove a redundant struct member (Chris Robinson)
- 1ca27df: Use a span instead of pointer+count (Chris Robinson)
- fa71a87: Use a vector of arrays for a multi-dimensional array (Chris Robinson)
- f3b45f0: Replace a couple more pointer+count with a span (Chris Robinson)
- 748f725: Increase the default mhr truncation size to 64 (Chris Robinson)
- 0c75ab9: Use the object serial ID from PipeWire when available (Chris Robinson)
- cc20bd0: Use explicit arrays for the remix table target mixes (Chris Robinson)
- cca1301: Transpose the ambisonic voice mixing matrix (Chris Robinson)
- 60e5b67: Transpose the ambisonic rotation matrix and helper coefficients (Chris Robinson)
- 3f6e0e3: Combine multiple similar functions into one (Chris Robinson)
- dc61e7c: Change the default resampler to cubic (Chris Robinson)
- 02ec1e1: Update the readme (Chris Robinson)
- 75276a4: Clamp the biquad filter gain value to 0.00001 (Chris Robinson)
- 5d73cbe: Add a comment to check into an out-of-range value later (Chris Robinson)
- 9aef941: Slight clarification for the readme instructions (Chris Robinson)
- d4b5202: Capitalization and puctuation (Chris Robinson)
- ca39bd7: Avoid using to_address on an end iterator (Chris Robinson)
- ab142bd: Change the IS_VALID_CONTAINER macro to a constexpr bool (Chris Robinson)
- c79b633: Use std::pointer_traits::to_address when available (Chris Robinson)
- a719f0f: Don't pass an unnecessarily large alignment to allocator::rebind (Chris Robinson)
- 0985abc: Distinguish a couple log messages (Chris Robinson)
- c8ad642: Try to fix has_to_address (Chris Robinson)
- a461d5f: Don't try to use std::pointer_traits::to_address (Chris Robinson)
- 4021ccc: Try -Wno-c++20-extensions if -Wno-c++20-attribute-extensions fails (Chris Robinson)
- 58c8f57: Make sure a variable is set before use (Chris Robinson)
- 70c14cd: Release 1.23.0 (Chris Robinson)
- d7cabd2: Don't set an EAX version by default for sources (Chris Robinson)
- baa3418: Use a cubic resampler for the reverb modulator offset (Chris Robinson)
- ff530e9: Improve performance calculating reverb panning (Chris Robinson)
- 0de7ea4: Avoid using auto for lambda parameters (Chris Robinson)
- da845dd: Use an interpolated FIR filter for cubic resampling (Chris Robinson)
- ba0f592: Rename the bsinc table variables (Chris Robinson)
- 996a742: Make a table constexpr (Chris Robinson)
- e181b3b: Use better panning positions for the chorus effect (Chris Robinson)
- 233d3f8: Use better panning positions for the frequency shifter effect (Chris Robinson)
- 8695aa4: Check for the existence of the file that's depended on (Chris Robinson)
- 3ce537d: Allow finding index file when built as a submodule (kcat#819) (Aoife Fey)
- cf8c599: Properly mark the cubic coefficients and deltas as restrict (Chris Robinson)
- 1564cfe: Rename some variables for consistency (Chris Robinson)
- eb5e48f: Use a span to hold the cubic table reference (Chris Robinson)
- ca419e2: Assume 'frac' is less than 1 (Chris Robinson)
- 74d7d60: Don't require samplesToDo > forwardSamples for decoders (Chris Robinson)
- 38a4f3a: Check for the voice being beyond the loop end point earlier (Chris Robinson)
- 31a94ca: Always write samples to the destination when resampling (Chris Robinson)
- 44b6ac7: Explicitly cast a size_t to double (Chris Robinson)
- 2001d93: Check a string for NULL before calling strtoull (Chris Robinson)
- 63f840d: Separate decoding and mixing from resampling (Chris Robinson)
- 68e8f2f: The decoders don't need space for resampling (Chris Robinson)
- ac28273: Use to_address to pass a pointer-like iterator as a real pointer (Chris Robinson)
- b22f941: Explicitly cast a constexpr value to passify MSVC (Chris Robinson)
- d0910e4: Pass a boolean for the decoder to update its state (Chris Robinson)
- c10df8a: Simplify copying the all-pass filter state (Chris Robinson)
- d0c28c6: Support IMA4 ADPCM as a mixing voice format (Chris Robinson)
- a84efdc: Don't convert IMA4 samples on load (Chris Robinson)
- 5c8855b: Support MSADPCM samples in the mixer (Chris Robinson)
- 1b3c8f6: Don't convert MS ADPCM on load (Chris Robinson)
- fcfe027: Fix write offset for loading FmtIMA4 samples (Chris Robinson)
- 8106905: Add comments describing the MSADPCM decode (Chris Robinson)
- 6ca1af8: Remove unused decoder functions (Chris Robinson)
- 38535a4: Rename some variables for clarity (Chris Robinson)
- 6381fc1: Skip ADPCM samples in a separate loop before writing (Chris Robinson)
- 67415a2: Combine and simplify some loops (Chris Robinson)
- f424d7f: Decode IMA4 blocks with fewer loops (Chris Robinson)
- 4e53db8: Support loading as float or ADPCM in alplay (Chris Robinson)
- 3e26402: Set the proper block align for callback buffers (Chris Robinson)
- 8b930f5: Handle Int16 and ADPCM formats in alstreamcb (Chris Robinson)
- 08bfbaa: Cleanup the examples' loading functions slightly (Chris Robinson)
- 7e00d4a: Support float and ADPCM formats in alstream (Chris Robinson)
- 9f49f6c: Track the callback buffer base separately (Chris Robinson)
- d66107e: Don't start with fading for negative offsets (Chris Robinson)
- dbea4ac: Clamp the MS ADPCM block predictor to the correct size (Chris Robinson)
- 097fac3: Set the C/C++ standard version properties manually (Chris Robinson)
- 0b70028: Add formats for UHJ with muLaw, and ADPCM for 2-channel UHJ (Chris Robinson)
- 2fd52d5: Add AL_SOFT_UHJ_ex to the extension list (Chris Robinson)
- bb1f61a: Add aLaw formats to AL_SOFT_UHJ_ex (Chris Robinson)
- 8e5db6e: Remove a [[likely]] that confuses some versions of GCC (Chris Robinson)
- ec9c421: Remove another gratuitous [[likely]] (Chris Robinson)
- fde7445: Use macros for the likely/unlikely attributes (Chris Robinson)
- ef45ecc: Remove a couple unused variables (Chris Robinson)
- 442cfdd: Make sure the fmt chunk is large enough (Chris Robinson)
- 28ec3af: Fix compiling examples with an older libsndfile (Chris Robinson)
- 1e5af1e: Report the current buffer ID of a streaming source (Chris Robinson)
- 3184ab5: Don't get the front element of an empty queue (Chris Robinson)
- f11313c: Don't assume the max property size unchecked for user pointers (Chris Robinson)
- ed6b823: Add queries for the buffer byte/sample/sec length (Chris Robinson)
- a1bd887: Avoid duplicate parameter validation (Chris Robinson)
- c6c8a13: Make the resampler enum a byte (Chris Robinson)
- e4b2054: Don't use "hardware" for automatic buffer storage (Chris Robinson)
- 8697789: Support aLaw samples for UHJ (Chris Robinson)
- 5b3c27e: Store the per-version EAX effect state in the base class (Chris Robinson)
- 1ea8f7a: Add a type indicator to EaxEffectProps (Chris Robinson)
- f7d051f: Have the null effect inherit from EaxEffect4 (Chris Robinson)
- 605fa78: Update the effect EAX version only after setting a property (Chris Robinson)
- 8c3948c: Rework EAX effect handling (Chris Robinson)
- 5aeeffe: Use a macro for when __has_cpp_attribute is unsupported (Chris Robinson)
- c9bedb1: Convert EAX chorus and flanger effects (Chris Robinson)
- f85bf6f: Convert the EAX Compressor effect (Chris Robinson)
- 1d112ee: Convert the EAX Autowah and Compressor effects (Chris Robinson)
- 64ead7d: Convert the EAX Echo and Equalizer effects (Chris Robinson)
- 1e226fd: Don't commit EAX updates in applyAllUpdates (Chris Robinson)
- 0bda22a: Convert the EAX Frequency Shifter effect (Chris Robinson)
- 96b3d98: Simplify committing EAX effect properties (Chris Robinson)
- 028e7ef: Convert the remaining EAX effects (Chris Robinson)
- 86d4a77: Rename some struct members for clarity (Chris Robinson)
- 167feb3: Remove an unused function (Chris Robinson)
- 368b3db: Remove some more unnecessary clamps (Chris Robinson)
- 3f45b3c: Avoid copying to a temporary (Chris Robinson)
- a9319a7: Update the EAX version after setting fx slot properties (Chris Robinson)
- 20ab764: Don't set a default EAX version for fx slots (Chris Robinson)
- e7610b9: Check the correct ID value for clearing the deferred flag (Chris Robinson)
- c7da169: Rename some class members for styling consistency (Chris Robinson)
- 01521b6: Don't change the context's EAX version on every set/get call (Chris Robinson)
- 9fd9fee: Don't allow queueing a buffer with no format (Chris Robinson)
- 4c89d76: Set a default version for EAX source properties (Chris Robinson)
- ff62041: Fix the format check for queueing buffers (Chris Robinson)
- 24685b5: Allow Oboe to resample when requesting a sample rate (Chris Robinson)
- a4b1986: Recognize I24 and I32 formats from Oboe (Chris Robinson)
- ef53736: Commit deferred EAX properties in alcProcessContext (Chris Robinson)
- 24508c3: Rename some member functions and variables for consistency (Chris Robinson)
- 186a29b: Add a compat option to restore AL_SOFT_buffer_sub_data (Chris Robinson)
- f53b31b: Simplify some samples-to-bytes conversions (Chris Robinson)
- d4bfb62: Remove the separate UserFmt types (Chris Robinson)
- ac01cbf: Log the buffer format when queueing mismatched buffers (Chris Robinson)
- 0b3dde9: Allow using a negative offset with callback buffers (Chris Robinson)
- d82d30c: Make sure delayed-start voices are properly stopped (Chris Robinson)
- 3e4a2a1: Don't check for backend packages that aren't wanted (Chris Robinson)
- dfd8f11: Finalize AL_SOFT_source_start_delay (Chris Robinson)
- b59b80f: Hold the buffer sample pointer separate from the vector (Chris Robinson)
- cce910d: Support the AL_EXT_STATIC_BUFFER extension (Chris Robinson)
- 2c82778: Remove a duplicate function (Chris Robinson)
- 9062721: Simplify effect state buffer handling some (Chris Robinson)
- 1803278: Scale B-Format panning coefficients only when needed (Chris Robinson)
- 7c94fc2: Remove an unused variable (Chris Robinson)
- 3853e31: Reorder some struct fields for consistency (Chris Robinson)
- 31f3336: Add a version script for non-Windows/macOS systems (Chris Robinson)
- d3875f3: Release 1.23.1 (Chris Robinson)
- 055b710: Always enumerate devices on open. (John Preston)
- 0376c6a: Allow opening devices by UID on macOS. (John Preston)