3729 Commits

Author SHA1 Message Date
Chris Robinson
3ee42d9826 Avoid an extra sample of delay in the reverb modulator 2016-02-05 15:39:31 -08:00
Chris Robinson
c533060875 Remove an unnecessary variable and move duplicate code to a common spot 2016-02-05 14:21:02 -08:00
Chris Robinson
127c7e3b8c Don't explicitly check for LFE
It's going to be set to 0 gain anyway
2016-02-05 11:06:10 -08:00
Chris Robinson
3cac4dff95 Boost the direct-pan reverb to better match the expected volume
Hopefully. Would be nice to have a reference implementation for this style of
reverb to compare with.
2016-02-05 09:55:08 -08:00
Chris Robinson
301d4c158b Update a couple outdated comments 2016-02-05 09:42:43 -08:00
Chris Robinson
538f2839d1 Apply the early and late reverb gains with the panning gains 2016-02-05 08:43:51 -08:00
Chris Robinson
8627a92ea8 Better organize the reverb code into separate labeled sections 2016-02-05 08:14:41 -08:00
Chris Robinson
b8e74c88cf Separate early and late reverb output for standard reverb too 2016-02-05 07:46:33 -08:00
Chris Robinson
305ef3215d Modify how the four output reverb points are calculated
For HRTF and B-Format output, the points no longer move but instead scale based
on the desired panning direction.
2016-02-05 07:34:31 -08:00
Chris Robinson
d315ca4139 Try to map reverb outputs directly to output channels
HRTF and B-Format output still need to use virtual panning directions, but the
reverb works better when it outputs directly to an output channel. Ambient and
directional panning is used to properly mask and attenuate each output channel.

Note that currently the "direct panning" output is quieter than it should be.
Work is underway to attenuate the early reflections and late reverb better.
2016-02-01 22:24:40 -08:00
Chris Robinson
b4a9b40d68 Apply the main reverb gain with the panning 2016-02-01 01:45:16 -08:00
Chris Robinson
46cae36ef9 Fix an out of date comment 2016-01-31 09:39:07 -08:00
Chris Robinson
7f908d90af Rename ComputeBFormatGains to ComputeFirstOrderGains 2016-01-31 09:00:23 -08:00
Chris Robinson
d69dd6dc7a Make the source's buffer queue a singly-linked list 2016-01-31 00:42:58 -08:00
Chris Robinson
063ef9c2fc Properly silence the LFE input channel gain on the source sends 2016-01-30 07:13:07 -08:00
Chris Robinson
729f213c09 Fix scaling for effect sends of B-Format sources 2016-01-30 07:10:36 -08:00
Chris Robinson
7111322526 Make the modulator effect multichannel 2016-01-29 23:44:43 -08:00
Chris Robinson
a046a951e9 Use separate modulator functions only for the waveform 2016-01-29 23:28:38 -08:00
Chris Robinson
3ac786c6af Convert the equalizer effect to multichannel 2016-01-29 07:26:19 -08:00
Chris Robinson
210b4c1fcd Make the compressor effect multichannel 2016-01-28 02:49:40 -08:00
Chris Robinson
c1f87414c5 Mix to multichannel for effects
This mixes to a 4-channel first-order ambisonics buffer. With ACN ordering and
N3D scaling, this makes it easy to remain compatible with effects that only
care about mono input since channel 0 is an unattenuated mono signal.
2016-01-28 00:02:46 -08:00
Chris Robinson
2fa3ae85c9 Pass a pointer to the input samples array for effect processing 2016-01-27 08:16:47 -08:00
Chris Robinson
fd387beda1 Avoid passing the device to SetChannelMap 2016-01-27 04:44:21 -08:00
Chris Robinson
f547ef6d39 Separate calculating ambisonic coefficients from the panning gains 2016-01-25 06:11:51 -08:00
Chris Robinson
79e0f3e747 Don't write one byte at a time for the wave writer on big endian 2016-01-25 01:49:28 -08:00
Chris Robinson
0189b923a2 Release 1.17.2 2016-01-24 19:12:39 -08:00
Chris Robinson
4fb2526779 Fix "signed and unsigned type in conditional expression" warning 2016-01-24 02:29:26 -08:00
Chris Robinson
5761aa9400 Remove unneeded check for io.h 2016-01-24 01:51:43 -08:00
Chris Robinson
ddc885604d Clear SSE3 switch before testing if one's recognized 2016-01-24 01:35:09 -08:00
Chris Robinson
7de8db2960 Replace multiple fputc calls with one fwrite 2016-01-23 21:47:43 -08:00
Chris Robinson
5d552980a4 Move a couple extern inline declarations to the others 2016-01-23 18:19:19 -08:00
Chris Robinson
94816d0073 Reorder filterstate properties 2016-01-23 03:38:15 -08:00
Chris Robinson
352d9afd64 Inline a couple filterstate methods 2016-01-23 01:22:08 -08:00
Chris Robinson
87b6c30932 Reorder some cmake checks 2016-01-21 21:51:20 -08:00
Chris Robinson
fb599b5b83 Lower the _POSIX_C_SOURCE and _XOPEN_SOURCE version requirements 2016-01-21 17:18:08 -08:00
Chris Robinson
26f5d385d5 Only set cmake policy CMP0042 if it's valid 2016-01-21 06:18:54 -08:00
Chris Robinson
0a9e9858f9 Always define _XOPEN_SOURCE if _POSIX_C_SOURCE is too 2016-01-21 06:08:18 -08:00
Chris Robinson
8f26ad4ba2 Avoid using scandir/alphasort
They require POSIX 2008, which is a bit too "new" for my current liking. We can
do well enough with opendir/readdir/closedir and qsort.
2016-01-21 04:42:22 -08:00
Chris Robinson
bb0ac26ce1 Explicit check if pthread_setname_np accepts only one parameter 2016-01-21 02:33:45 -08:00
Chris Robinson
9c05a16c9a Fix for systems that don't have strnlen 2016-01-21 02:09:32 -08:00
Chris Robinson
bbd2876afb Improve the OSS enumeration code 2016-01-21 01:05:29 -08:00
Chris Robinson
3395b361fa Silence a CMake warning on OSX about MACOSX_RPATH 2016-01-20 18:42:23 -08:00
Chris Robinson
0eb18e9711 Update ChangeLog 2016-01-17 22:38:27 -08:00
Chris Robinson
0bb838bbaf Add an option to static-link libgcc
Mainly just for MinGW to make OpenAL32.dll not rely on libgcc_s_sjlj-1.dll.
2016-01-17 15:45:42 -08:00
kcat
1930ee3e5f Merge pull request #29 from olesalscheider/master
Allow to override the share install dir
2015-12-20 03:26:20 -08:00
Chris Robinson
3dc5f0bf76 Merge branch 'master' of github.com:/kcat/openal-soft 2015-12-19 14:26:00 -08:00
kcat
78ca33a0c7 Merge pull request #27 from kdhp/master
Added device enumeration support for OSSv4
2015-12-19 14:22:36 -08:00
Niels Ole Salscheider
d93398a361 Allow to override the share install dir
This is needed for multiarch layouts where the prefix is /usr/${host} but
where arch-independet files are installed to /usr/share.
2015-12-19 17:54:47 +01:00
Keegan Drake H.P
5a73aa2502 Added a check for an empty path 2015-12-17 20:05:21 -06:00
Keegan Drake H.P
df2ee7ba87 Add device enumeration support for OSSv4 2015-12-17 19:20:08 -06:00