6047 Commits

Author SHA1 Message Date
Chris Robinson
d713f5f828 Clean up some AmbiUpsampler initialization 2019-02-19 01:59:30 -08:00
Chris Robinson
69ab36cc14 Avoid a temp buffer for the distance compensation delay 2019-02-17 00:43:10 -08:00
Chris Robinson
c95d6a5d8c Apply phase correction to the ambisonic decoder HRIRs
This preserves the original phase of the HRIR frequencies for decoding the
ambisonic signal. This should help prevent extra coloration from the band-
splitter used to scale the HF response.
2019-02-16 22:57:38 -08:00
Chris Robinson
69f6f56160 Avoid using internal AL[u]int64 types 2019-02-11 12:16:58 -08:00
Chris Robinson
2fc8461c14 Don't check for __int64 2019-02-11 11:44:35 -08:00
Chris Robinson
dac609b29a Move some more functions to alnumeric.h 2019-02-11 11:31:31 -08:00
Chris Robinson
21aaa18c50 Get rid of the FAM_SIZE macro 2019-02-11 11:14:34 -08:00
Chris Robinson
995c9649cb Move some number-related stuff to a separate header 2019-02-11 11:07:06 -08:00
Chris Robinson
69d8c6546d Use std::arrays for HRIR coeffs and values 2019-02-07 08:38:49 -08:00
Chris Robinson
b371862fb2 Simply setting a couple indices 2019-02-04 22:17:28 -08:00
Chris Robinson
05cdc2cb30 Use relaxed memory ordering for initializing atomic_flags 2019-02-04 21:28:37 -08:00
Chris Robinson
e104f580b3 Use a unique_ptr to store the loaded HrtfEntry 2019-02-04 21:22:43 -08:00
Chris Robinson
b7b4cfae2b Fixed alffplay underrun recovery timing 2019-02-04 21:22:43 -08:00
kcat
367191cbfb
Merge pull request #269 from gongminmin/FixForVS2019
Fix compiling problems on VS2019 with vc142 toolset
2019-02-04 21:22:16 -08:00
Minmin Gong
41b9d473a2 Fix compiling problems on VS2019 with vc142 toolset
Msvc142 in VS2019 preview 2 doesn't allow std::atomic_flag to be initialized by a bool. Call test_and_set in the constructors instead.
2019-02-04 20:03:18 -08:00
Chris Robinson
c25433986a Add missing include 2019-01-29 14:14:52 -08:00
Chris Robinson
613145e900 Calculate the correct evidx for the HRTF B-Format decoder 2019-01-29 03:52:28 -08:00
Chris Robinson
44d72942fb Load and use all available HRTF fields 2019-01-29 00:42:18 -08:00
Chris Robinson
4c740636c2 Pass the distance to GetHrtfCoeffs 2019-01-28 22:22:34 -08:00
Chris Robinson
2d93a9cdb1 Collect HRTF field info into a struct 2019-01-28 20:43:34 -08:00
Chris Robinson
df5d238e3d Clean up calculating HRIR indices to blend 2019-01-28 19:39:45 -08:00
Chris Robinson
b3fe540c49 Don't normalize HRIRs per-field 2019-01-27 15:50:02 -08:00
Chris Robinson
e55f9b42e9 Partially handle ambisonics in alffplay
This is currently really only applicable to Opus-encoded files. It assumes
AmbiX (SN3D normalization, ACN ordering) and only comes into play when the
channel layout is blank. FFmpeg/libavcodec doesn't have a way to detect
B-Format input or what normalization and ordering it uses. Note in particular
.amb files do not play correctly (libavcodec seems to apply a default channel
layout for 4-channel wav-type files, regardless of its channel mask value).
2019-01-27 14:53:46 -08:00
Chris Robinson
d7af17ab87 Round the calculated field distance in makehrtf 2019-01-27 14:35:58 -08:00
Chris Robinson
f98a24fb8a Don't try to clean up the async ringbuffer if it isn't allocated 2019-01-26 19:29:26 -08:00
Chris Robinson
f5e17bafea Fix applied scalars for B-Format source mixing 2019-01-26 17:33:57 -08:00
Chris Robinson
8eab75f312 Update a function comment 2019-01-24 17:05:13 -08:00
Chris Robinson
b5569d8455 Slight cleanup for NfcFilterCreate4 2019-01-24 10:22:38 -08:00
Chris Robinson
98be1d1bf5 Make IncRef and DecRef member functions 2019-01-24 10:05:37 -08:00
Chris Robinson
7757789590 Clean up the NFC filters a bit 2019-01-23 16:32:53 -08:00
Chris Robinson
ebb46cf4cf Rename a header
To workaround an apparent MSVC error
2019-01-23 15:09:11 -08:00
Chris Robinson
1ec8686407 Add missing includes 2019-01-23 13:46:43 -08:00
Chris Robinson
ce3acf4d1b Make hrtf_inc.cpp a proper header 2019-01-23 12:33:18 -08:00
Chris Robinson
8429770c3f Use template declarations for the HRTF mixers 2019-01-23 12:23:05 -08:00
Chris Robinson
d3842a632d Use template declarations for the normal mixing functions 2019-01-23 11:21:03 -08:00
Chris Robinson
23179d0bcd Use a template declaration for the resampler functions 2019-01-23 11:11:41 -08:00
Chris Robinson
e332ac8528 Use the farthest of multi-field HRTFs 2019-01-22 21:36:40 -08:00
Chris Robinson
3ab4bc5186 Don't install utilities that aren't built 2019-01-22 17:34:45 -08:00
Chris Robinson
5c0dcd1f24 Fix building makehrtf and sofa-info on Windows 2019-01-22 13:17:21 -08:00
Chris Robinson
ecafa19bcf Support loading sofa files in makehrtf
The makehrtf utility now requires libmysofa to build. This isn't necessay for
the OpenAL Soft library itself.
2019-01-22 11:24:57 -08:00
Chris Robinson
b4a2532ffc Partially allow loading of multi-field HRTFs
Only the first field actually gets used, but all the data is processed when
loading.
2019-01-22 10:27:04 -08:00
Chris Robinson
1565d7e276 Add a sofa-info utility to check sofa files 2019-01-21 10:23:17 -08:00
Chris Robinson
c239ae44f8 Add a FindMySOFA cmake module 2019-01-21 10:21:13 -08:00
Chris Robinson
d1a8607515 Handle a missing default WASAPI device ID 2019-01-18 17:23:46 -08:00
Chris Robinson
40c6f74bb7 Add front and back methods to FlexArray 2019-01-17 02:23:57 -08:00
Chris Robinson
101be788e1 Replace a couple more C math calls 2019-01-14 22:30:18 -08:00
Chris Robinson
867161d55f Constify some parameters 2019-01-12 21:08:34 -08:00
Chris Robinson
5b382a69b6 Avoid implicit conversions from signed to unsigned 2019-01-12 18:08:43 -08:00
Chris Robinson
d64eaba322 Use a flexible array for DirectHrtfState and ALvoice 2019-01-12 01:25:33 -08:00
Chris Robinson
ab16671466 Use a flexible array for HrtfHandle and SampleConverter 2019-01-11 22:09:57 -08:00