Commit Graph

3591 Commits

Author SHA1 Message Date
Chris Robinson
fa32093906 Remove unused channel labels 2015-10-18 10:25:56 -07:00
Chris Robinson
c4ba9d21dc Use the correct array indices for SSE register components
SSE uses reverse ordering, such that component 0 is the last in memory.
_mm_load_* and _mm_loadu_*, and the corresponding stores, do not change the
memory ordering.
2015-10-17 09:59:26 -07:00
Chris Robinson
d9e9a7b05f Include the fractional part with the source sample/sec offset 2015-10-16 10:52:10 -07:00
Chris Robinson
83b41a7676 Update changelog 2015-10-16 08:22:17 -07:00
Chris Robinson
2730d8e76f Round the calculated stepping value 2015-10-15 15:38:07 -07:00
Chris Robinson
2ff3bf5ab0 Use a constant value for the post-position padding 2015-10-15 15:13:19 -07:00
Chris Robinson
97f53d941c Store the source's previous samples with the voice
This helps avoid different results when looping is toggled within a couple
samples of the loop point, or when a processed buffer is removed while the
source is only a couple samples into the next buffer.
2015-10-15 07:29:25 -07:00
Chris Robinson
3c54ba3901 Fix absolute path detection on Windows 2015-10-14 05:01:34 -07:00
Chris Robinson
f654767395 Silence implicit double-to-float cast MSVC warning 2015-10-14 05:00:11 -07:00
Chris Robinson
98eda6b35b Properly limit the calculated source offset components 2015-10-14 03:23:19 -07:00
Chris Robinson
d386675efe Print the wave type being played 2015-10-14 02:41:39 -07:00
Chris Robinson
9012bcf327 Make the tonegen sampling rate match the device rate by default 2015-10-14 01:54:50 -07:00
Chris Robinson
c18e23477c Add a tone generator test program
Currently used to test the general output, particularly the resampler, by
checking the results with a spectrum analyzer and/or oscilloscope (for example
using PulseAudio's "Monitor of ..." devices feeding an external app).
2015-10-13 11:43:25 -07:00
Chris Robinson
d7ec9d355f Shut GCC up 2015-10-13 11:38:53 -07:00
Chris Robinson
0498a4d35e Rename a couple HRTF Mode combo box entries 2015-10-13 03:21:00 -07:00
Chris Robinson
2fba5c1f5e Properly apply fractional source offsets when a user offset is set 2015-10-13 03:01:34 -07:00
Chris Robinson
be2028ba4a Fix HRTF group box size 2015-10-12 06:42:28 -07:00
Chris Robinson
67455c66a1 Replace the resample_fir6 declaration with resample_fir8 2015-10-12 06:34:55 -07:00
Chris Robinson
db4253d3bd Remove 96khz from the combo box
It can still be entered in manually, as can any value between 8khz and 192khz,
but having it selectable can create the mistaken idea that selecting it is
better than picking 44.1khz or 48khz.
2015-10-12 06:23:50 -07:00
Chris Robinson
b4bc36c4a0 Reorganize the HRTF group box
The three radio buttons are moved to a combo box, which gives a bit more width
for the file list contents.
2015-10-12 05:52:34 -07:00
Chris Robinson
ed0f3bc1b1 Only show certain options that are available at build-time 2015-10-11 23:56:45 -07:00
Chris Robinson
f33d6a5211 Reformat the CPU Extensions' checkboxes 2015-10-11 12:03:50 -07:00
Chris Robinson
b859f1bdc3 Avoid multiple sin, cos, and sqrt calls for filter calculations 2015-10-11 10:21:37 -07:00
Chris Robinson
db22465c1d Update changelog 2015-10-11 07:40:09 -07:00
Chris Robinson
00e419e948 Replace the sinc6 resampler with sinc8, and make SSE versions 2015-10-11 07:37:22 -07:00
Chris Robinson
0211831858 Move the FIR4 from SSE2 to SSE3
SSE3 can avoid the slow _MM_TRANSPOSE_PS4 call thanks to the inclusion of
horizontal adds.
2015-10-11 06:38:00 -07:00
Chris Robinson
75d8e5989f Slightly improve the FIR4 SSE resamplers 2015-10-11 05:31:14 -07:00
Chris Robinson
0149dded34 Use doubles to calculate the Lanczos coefficients 2015-10-09 08:30:33 -07:00
Chris Robinson
34e55c0034 Update changelog 2015-10-08 00:41:40 -07:00
Chris Robinson
4f4cadd756 Allow apps to request a specific HRTF 2015-10-07 03:29:53 -07:00
Chris Robinson
0eef6d9d51 Use the enumerated HRTF list for selecting an HRTF
Also report the proper specifier of the one currently in use.
2015-10-06 06:48:53 -07:00
Chris Robinson
1b51ee8b87 Store the Hrtf struct with the corresponding HrtfEntry
Also store the filename with the Hrtf struct so it can be reused for multiple
HrtfEntry objects.
2015-10-06 04:01:53 -07:00
Chris Robinson
946b3d5746 Try to use the full path for the CWD instead of . 2015-10-06 01:26:15 -07:00
Chris Robinson
a4c378dd00 Enumerate and list HRTFs per-device 2015-10-06 00:23:11 -07:00
Chris Robinson
f590af510d Skip empty data directory entries 2015-10-04 17:24:12 -07:00
Chris Robinson
074983b19c Implement SearchDataFiles for Windows 2015-10-04 16:41:54 -07:00
Chris Robinson
70fbc2b1ff Add a function to get a list of data files
The method takes a marked-up filename (e.g. may include %r for a sample rate,
%% for %, etc), and returns a vector of strings of found filenames that match.
It will search the CWD, the local, and global data directories, in that order.
2015-10-03 20:41:18 -07:00
Chris Robinson
aa10068ca2 Add methods to enumerate and query device HRTFs
Currently just returns a dummy entry.
2015-10-03 19:59:21 -07:00
Chris Robinson
0fcd497796 Combine two arrays 2015-10-01 01:05:08 -07:00
Chris Robinson
07f80eb4e1 Move the resampler stuff to mixer.c where it's used 2015-10-01 00:34:13 -07:00
Chris Robinson
d5675d5395 Search more aggressively for libs needed by SDL_sound 2015-09-30 21:34:30 -07:00
Chris Robinson
da3b9568dd Revert "Only use SDL1 with SDL_sound"
This reverts commit 8883ce1cef.
2015-09-30 18:45:19 -07:00
Chris Robinson
904cdfda32 Avoid double-checks for the stepping mixer loops 2015-09-30 17:25:28 -07:00
Chris Robinson
b68fbe3628 Replace separate vaddq_f32/vmulq_f32 calls with a vmlaq_f32 2015-09-30 13:34:09 -07:00
Chris Robinson
6d53ffdbf3 Remove the --make-tab option from makehrtf
We haven't used a built-in HRTF table for a while now.
2015-09-29 23:09:45 -07:00
Chris Robinson
dc10e56bab Implement a 6-point sinc-lanczos filter 2015-09-29 20:39:12 -07:00
kcat
e13d553aef Merge pull request #21 from aaronmjacobs/master
Fix resample_fir4 link error
2015-09-29 12:39:48 -07:00
Aaron Jacobs
a7084b1051 Fix resample_fir4 link error 2015-09-29 12:34:03 -07:00
Chris Robinson
8883ce1cef Only use SDL1 with SDL_sound 2015-09-28 23:29:52 -07:00
Chris Robinson
848a4a0fcc Auto-replace the "cubic" resampler with "sinc4" 2015-09-28 12:59:52 -07:00