aboutsummaryrefslogtreecommitdiffstats
path: root/core
Commit message (Collapse)AuthorAgeFilesLines
* Make the device clock members atomicChris Robinson2023-12-032-2/+19
| | | | | | Even though they're protected by a SeqLock of sorts, it's still UB to read and write non-atomic vars from different threads. It's fine to do relaxed reads and writes given the lock though, to help alleviate the cost.
* fix printf format for MinGW (#942)Rosen Penev2023-12-033-6/+6
| | | | | | With gcc, mingw uses gnu_printf. With clang, printf is used as it does not support gnu_printf. Use the internal header to match this properly. Signed-off-by: Rosen Penev <[email protected]>
* Handle systems that don't support std::cyl_bessel_iChris Robinson2023-11-181-2/+44
|
* Fix definition typesChris Robinson2023-11-181-7/+7
|
* Support 32-bit int sample storageChris Robinson2023-11-154-0/+12
|
* Remove some explicit template parametersChris Robinson2023-11-101-117/+117
|
* Use the C++ standard's regular modified Bessel functionChris Robinson2023-11-081-33/+4
|
* Remove an unnecessary struct memberChris Robinson2023-11-041-5/+4
|
* Don't apply the UHJ all-pass's first segment in the time domainChris Robinson2023-10-282-57/+33
| | | | | Increases the delay by 128 samples, but replaces a time-domain convolution with a frequency-domain one.
* Use a byte for the channel indexChris Robinson2023-10-221-9/+9
|
* Don't keep setting and reloading a struct member in a loopChris Robinson2023-10-201-2/+3
|
* Remove the output delay on the UHJ and SuperStereo IIR decodersChris Robinson2023-10-182-38/+53
|
* Remove an unnecessary getterChris Robinson2023-10-171-11/+3
|
* Remove an unnecessary c_str() callChris Robinson2023-10-161-1/+1
|
* Properly align a buffer given to PFFFTChris Robinson2023-10-151-4/+5
|
* Use a span for a known array length instead of a raw pointerChris Robinson2023-10-152-6/+5
|
* Ensure some variables are the sameChris Robinson2023-10-151-20/+25
| | | | And clean up some comments
* Don't use an iterator where a pointer is expectedChris Robinson2023-10-141-1/+1
|
* Use a split filter for the FIR-based UHJ encodersChris Robinson2023-10-142-13/+200
| | | | | | | | This applies the all-pass filter in two steps, first as a relatively short time-domain FIR filter, then as a series of frequency domain convolutions (using complex multiplies). Time-domain convolution scales poorly, so larger convolutions benefit from being done in the frequency domain (though the first part is still done in the time domain, to avoid longer delays).
* Add convolution effect properties to rotate ambisonic responsesChris Robinson2023-10-121-0/+6
|
* Mark some functions as maybe_unusedChris Robinson2023-10-081-0/+2
| | | | For non-SSE-capable targets
* Avoid inline assembly for getting/setting SSE stateChris Robinson2023-10-051-20/+49
|
* Constify some pointers to indicate they won't changeChris Robinson2023-09-252-2/+2
|
* Avoid casting an integer literalChris Robinson2023-09-224-7/+7
|
* Add a SampleConverter method to convert planar buffer linesChris Robinson2023-09-212-0/+93
|
* Preliminary implementation of WASAPI spatial audio playbackChris Robinson2023-09-201-0/+5
|
* Store channel positions as vectors instead of anglesChris Robinson2023-09-141-2/+2
| | | | To avoid extraneous conversions between angles and vectors
* Precalculate some square factorsChris Robinson2023-09-041-7/+2
|
* Use a variant instead of a union+flagChris Robinson2023-09-032-39/+47
|
* Slightly improve some all-pass filter coefficientsChris Robinson2023-08-281-6/+6
|
* disable unavailable functionality on xbox (#887)Max Bachmann2023-07-261-1/+1
| | | | | * disable unavailable functionality on xbox * use not std version of getenv on xbox
* Fix some typos (#872)Dirk Stolle2023-07-042-2/+2
|
* Add a function to set a callback for log messagesChris Robinson2023-07-022-25/+82
|
* Don't pass the file handle to al_printChris Robinson2023-07-012-10/+20
|
* Use inline variables instead of functions with static variablesChris Robinson2023-06-143-132/+93
|
* Avoid explicit definitions of some IIDsChris Robinson2023-06-051-4/+0
|
* Use inline variables to avoid separate definitionsChris Robinson2023-06-032-7/+2
|
* Clean up some unnecessary includesChris Robinson2023-06-031-22/+9
|
* Rename threads.cpp/h to alsem.cpp/hChris Robinson2023-06-011-1/+1
|
* Improve wasapi backend UWP support (#853)Deal(一线灵)2023-05-313-6/+22
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * Improve wasapi, support uwp build * Fix compile errors * [UWP] Support ReadALConfig from app roaming * [UWP] Post disconnect event when default device changed * [UWP] Fix appveyor ci * [WIN32] Default device change notification support * Fix warnings * Add event to notify the app when the default device changes - Event type: AL_EVENT_TYPE_DEFAULT_DEVICE_CHANGED_SOFT=0x19A7 - Event callback parameters: void _onALSoftEvent(ALenum eventType, ALuint object, // dataFlow: 0(render), 1(capture) ALuint param, // 0 ALsizei length, // 0 const ALchar* message, // Default device changed:<deviceId> void* userParam); * Fix warnings * Fire default device changed event in mixerProc thread * Fix compile warning * [UWP] Improve cmake * Revert changes * Notify default device change by system event callback * Revert insignificant change * Remove duplicate call
* Be a bit more safe with type manglingChris Robinson2023-05-243-8/+12
|
* Avoid using al::vector unnecessarilyChris Robinson2023-05-124-32/+32
|
* Clean up some more includesChris Robinson2023-05-123-11/+9
|
* Remove some old compatibility codeChris Robinson2023-05-121-28/+4
|
* Clean up some unnecessary includes and typesChris Robinson2023-05-121-11/+3
|
* Use a variant for AsyncEventChris Robinson2023-05-083-53/+59
|
* Make a function constexprChris Robinson2023-05-081-1/+1
|
* Mark some global constexpr variables inlineChris Robinson2023-05-071-9/+9
|
* Use more appropriate types for some enumsChris Robinson2023-05-061-3/+4
|
* Use some more standard functionsChris Robinson2023-05-052-5/+5
|