aboutsummaryrefslogtreecommitdiffstats
path: root/alc
Commit message (Collapse)AuthorAgeFilesLines
* Make B-Format rotation more robustChris Robinson2019-12-011-34/+203
| | | | | This should now handle higher orders, and can be easily extended to non-FuMa layouts and scalings.
* Add an index map for 2D FuMa channelsChris Robinson2019-12-012-1/+12
|
* Store the ambisonic order for the voiceChris Robinson2019-12-011-0/+2
| | | | | Currently only first-order B-Format is possible for a buffer/source, but this will begin to allow for higher orders with an appropriate extension.
* Update the second-order decoder for HRTFChris Robinson2019-11-301-57/+45
| | | | | This uses fewer virtual speakers to help with clarity. The fewer speakers used for the response, the less destructive phase interference there should be.
* Clear the resampler after useChris Robinson2019-11-291-8/+11
|
* Store HRTF delays with some fractional precisionChris Robinson2019-11-291-13/+23
| | | | | | | | Since the delays get bilinearly filtered before use, maintaining a bit of extra precision can help accuracy even if it ultimately gets rounded to the nearest integer before use. This should help with resampled HRTFs, which need to scale the delays that are already rounded, and can also be leveraged by an updated MHR format.
* Avoid a shadow declaration warningChris Robinson2019-11-291-3/+3
|
* Use unsigned for array indicesChris Robinson2019-11-294-49/+40
|
* Fix sorting of loaded HRTFsChris Robinson2019-11-291-14/+12
|
* Remove an unnecessary aliasChris Robinson2019-11-281-6/+5
|
* Rename the default HRTFChris Robinson2019-11-281-6/+6
|
* Also scale the HRTF delays for different ratesChris Robinson2019-11-281-0/+5
|
* Add an option to limit the HRTF's IR sizeChris Robinson2019-11-283-9/+17
|
* Don't keep a resampled default HRTFChris Robinson2019-11-281-7/+0
|
* Resample HRIRs when loadingChris Robinson2019-11-284-44/+56
|
* Store HRIR coefficients using HrirArrayChris Robinson2019-11-282-21/+15
|
* Rework HRTF enuemration so the loaded HRTFs are separateChris Robinson2019-11-285-143/+103
|
* Rename HrtfEntry to HrtfStoreChris Robinson2019-11-285-35/+35
|
* Apply the full HRIR length for the B-Format decoderChris Robinson2019-11-211-5/+5
|
* Rename a couple struct fieldsChris Robinson2019-11-211-24/+22
|
* Allocate storage for full HRTF coefficient lengthsChris Robinson2019-11-211-11/+19
|
* Add a first-order ambisonic decoder for HRTFChris Robinson2019-11-181-20/+49
|
* Simplify some pi statementsChris Robinson2019-11-161-26/+29
|
* Use wrappers to distinguish elevation and azimuth valuesChris Robinson2019-11-163-31/+33
|
* Improve precision of the HRTF ambisonic decoder matrixChris Robinson2019-11-131-54/+56
|
* Clear the whole response HRIR before blendingChris Robinson2019-11-101-1/+1
|
* Limit HRTF ambisonic decoding to second-orderChris Robinson2019-11-091-33/+28
| | | | | | The generated third-order matrix has incorrect first-order coefficients, indicating a wonky decoder. The generated second-order matrix looks more stable.
* EFX: Add explicit cast to a square functionRaulshc2019-11-091-1/+1
| | | | | MSVC 2015 and above returns the expression according to its datatype. In this case, returns 4294967295 instead of -1.
* Avoid holding HRTF accumulation samples per-sourceChris Robinson2019-11-039-83/+44
| | | | | | It notably simplifies things to mix HRTF sources into an accumulation buffer together, which the Dry buffer's Ambisonic-to-HRTF decode is then added to, before being mixed to the Real output.
* Use rotate to reorder the default list entryChris Robinson2019-10-281-18/+8
|
* Add a config option for custom ALSA capture devicesChris Robinson2019-10-271-18/+16
|
* Convert HRTF field distances to meters when creating storageChris Robinson2019-10-271-11/+11
|
* Change a few more really small gain values to 0Chris Robinson2019-10-261-8/+8
|
* Avoid static constexpr for arrays iterated over at run-timeChris Robinson2019-10-255-18/+18
|
* Don't dereference the end iteratorChris Robinson2019-10-241-46/+42
|
* Don't trace twice for a new HRTF data fileChris Robinson2019-10-241-4/+6
|
* Print the found file entries after sortingChris Robinson2019-10-241-7/+15
|
* Report the real ambisonic order set for HRTF renderingChris Robinson2019-10-241-5/+6
|
* Use a 26-point Lebedev grid for the HRTF ambisonic decodeChris Robinson2019-10-231-39/+51
|
* Fix azimuth limitChris Robinson2019-10-221-1/+1
|
* Increase the max elevation and azimuth count for HRTFsChris Robinson2019-10-211-2/+2
|
* More sanely handle the voice state when mixingChris Robinson2019-10-142-19/+13
|
* Use better types for some specific sizesChris Robinson2019-10-132-23/+24
|
* Gracefully drain the OpenSL capture buffer on disconnectChris Robinson2019-10-101-13/+24
|
* Use one PulseAudio mainloop per deviceChris Robinson2019-10-091-221/+270
| | | | | To help avoid devices blocking on each other when handling asynchronous messages.
* Remove a useless prebuf check with PulseAudioChris Robinson2019-10-091-14/+0
|
* Create the initial PulseAudio stream corkedChris Robinson2019-10-091-1/+2
|
* Don't track the PulseAudio context state in devicesChris Robinson2019-10-091-30/+0
|
* Make C callbacks noexceptChris Robinson2019-10-098-88/+85
| | | | | No telling what would happen if exceptions managed to get back into presumably C-based callers.
* Use smart pointers for ALSA param handlesChris Robinson2019-10-091-132/+128
| | | | And simplify some related error handling