600 Commits

Author SHA1 Message Date
Chris Robinson
90e0c74721 Implement an SSE linear resampler 2012-09-14 04:48:53 -07:00
Chris Robinson
7635afcb52 Use a source param for the resampler and move them to the mixer source 2012-09-14 04:13:18 -07:00
Chris Robinson
ff809f2271 Move a couple methods to where they're used 2012-09-12 07:57:50 -07:00
Chris Robinson
3f97af4c8c Don't use count-specific functions to write to the output buffer 2012-09-11 06:41:24 -07:00
Chris Robinson
4c5cb2189b Use a non-interleaved DryBuffer 2012-09-11 06:32:42 -07:00
Chris Robinson
2bf1979d4a Move the target effect slot to the SendParams struct 2012-09-08 22:32:30 -07:00
Chris Robinson
89cab3cd39 Remove STACK_DATA_SIZE in favor of BUFFERSIZE 2012-09-08 22:09:34 -07:00
Chris Robinson
6723d27e06 Remove some unused code 2012-09-08 21:53:04 -07:00
Chris Robinson
1c03025090 Separate the resampling and mixing steps 2012-09-08 21:34:36 -07:00
Chris Robinson
0865db564f Move the device lock into the backend function table
For backend-specific implementations: this should hold the audio mixer loop for
playback devices, and provide recursive mutex behavior.
2012-08-18 15:58:04 -07:00
Chris Robinson
8304fc1bef Handle the scalar values a bit better 2012-08-11 06:20:24 -07:00
Chris Robinson
d6fd52a0e5 Add an option for wide stereo sources
Replaces the old stereodup option
2012-08-09 05:38:07 -07:00
Chris Robinson
6bd535bed0 Use wrappers for float-typed math functions 2012-06-29 02:12:36 -07:00
Chris Robinson
583dc8dbca Don't use all caps for enum value names 2012-06-28 18:49:49 -07:00
Chris Robinson
bc6751237c Clamp the Y position before trying to get the elevation 2012-06-28 17:26:00 -07:00
Chris Robinson
010a66487d Use 2 chained one-pole filters for the wet path 2012-04-30 09:33:00 -07:00
Chris Robinson
aed35fd811 Use ComputeAngleGains for multi-channel sources and remove the unused lookup table stuff 2012-04-29 05:04:46 -07:00
Chris Robinson
8d9838012d Remove the stereodup option
There's better ways to do it now with "wide" sound sources.
2012-04-29 04:44:53 -07:00
Chris Robinson
febc2a50cb Use ComputeAngleGains for 3D sounds 2012-04-28 13:06:16 -07:00
Chris Robinson
267d38cf20 Flip the parameters to aluCart2LUTpos, so it behaves a bit more like atan2 2012-04-28 03:58:58 -07:00
Chris Robinson
2484c44db0 Apply the listener gain with the filter 2012-04-28 03:13:37 -07:00
Chris Robinson
a8a13fcbd8 Move the HrtfParams into the DirectParams 2012-04-28 02:23:53 -07:00
Chris Robinson
0a193c5645 Move the direct and send params into separate different types 2012-04-28 01:32:52 -07:00
Chris Robinson
2450ee1723 Use separate methods for the dry and wet mixing loops 2012-04-27 23:46:51 -07:00
Chris Robinson
549d542a31 Reorganize some ALsource fields 2012-04-27 01:36:13 -07:00
Chris Robinson
5c70cacc13 Fixup some comments in ALu.c 2012-04-26 00:59:17 -07:00
Chris Robinson
b023dbe7b8 Remove hungarian notation from the device and context structs 2012-04-19 22:50:11 -07:00
Chris Robinson
125b743e5c Remove hungarian notation from sources 2012-04-19 21:46:29 -07:00
Chris Robinson
5d08563975 Handle very small speed of sound values 2012-03-18 08:20:08 -07:00
Chris Robinson
adb83ad3c0 Avoid converting positions to meters 2012-03-18 08:09:59 -07:00
Chris Robinson
2d0e028993 Base the initial reverb decay on the source's dry path attenuation 2012-03-18 08:06:21 -07:00
Chris Robinson
7fbcb4b9e6 Use the actual distance from the ref distance for air absorption and initial reverb decay 2012-03-14 22:45:52 -07:00
Chris Robinson
b5ed2a5351 Pass a device to the effect update functions 2012-03-13 14:49:58 -07:00
Chris Robinson
560f34e3df Channel angle is already in radians, not degrees 2012-03-12 18:29:46 -07:00
Chris Robinson
335232207d With DirectChannels enabled, don't try to mix channels that have no matching output 2012-03-12 18:27:25 -07:00
Chris Robinson
f5f519aa80 Properly make the source velocity relative to the listener velocity 2012-03-09 23:53:45 -08:00
Chris Robinson
7db29a2332 Clamp the upper and lower bound of the doppler velocity scale more like the original 2012-03-09 22:38:26 -08:00
Chris Robinson
6e70ae9958 The listener velocity is specified in world coordinates, too 2012-03-08 18:27:05 -08:00
Chris Robinson
e190fc9416 Refactor the doppler shift calculations 2012-03-08 18:19:15 -08:00
Chris Robinson
487d05a73e Invert a nested loop 2012-03-03 10:31:27 -08:00
Chris Robinson
91ed077eba Handle BS2B cross-feed right after click removal 2012-03-03 09:41:16 -08:00
Chris Robinson
58316a97d5 Override the resampler as needed right after calculating the step value 2012-02-20 20:08:45 -08:00
Chris Robinson
cc2cb1142b Remove unused variables 2012-02-17 12:32:43 -08:00
Chris Robinson
75aa96a4a6 Silence an MSVC warning 2012-02-17 01:29:23 -08:00
Chris Robinson
1140b3ae83 Support signed and unsigned 32-bit int output 2012-02-14 11:44:57 -08:00
Chris Robinson
e394d14cda Use more proper enum names for the resampler 2012-02-12 08:45:19 -08:00
Chris Robinson
61be01efc1 Rename SpeakerGain to ChannelGain 2012-02-10 00:29:47 -08:00
Chris Robinson
23bda38be0 Match the 7.1 channel angles with the speakers 2012-02-09 23:59:24 -08:00
Chris Robinson
e6a0dd10a9 Pre-scale the channel angles 2012-02-09 23:52:20 -08:00
Chris Robinson
ef68aa39f8 Rename non_virtual_channels to direct_channels 2012-02-09 23:35:17 -08:00