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
Chris Robinson
b4b492c417
Improve checks for supported output formats from ALSA
2012-02-09 22:26:16 -08:00
Chris Robinson
a98e381c8e
Ensure ALbyte3 and ALubyte3 are the proper size
2012-02-07 08:05:01 -08:00
Chris Robinson
18f87b97d5
Always use the default speaker layout for loopback devices
2012-02-07 07:29:34 -08:00
Chris Robinson
c211f1d3fe
Don't enable BS2B for loopback devices
2012-02-07 07:06:38 -08:00
Chris Robinson
deb84cfdac
Improve a couple error messages with the full ALSA device control name
2012-02-07 07:04:33 -08:00
Chris Robinson
7ad1b45d11
Change the default stereo speaker positions to match the stereo channel positions
...
A separate "headphones" configuration may be nice to add for -90,+90, however
not many audio APIs can detect this. Ideally HRTF would be used with
headphones too, which largely ignores the speaker positions, however there
could be situations where this is unfeasible or unwanted.
2012-02-04 10:29:19 -08:00
Chris Robinson
47161150d7
Check for a 32-bit x86 processor before using MSVC's asm intrinsics
2012-02-03 19:34:06 -08:00
Chris Robinson
8e6832407a
Only use fast float-to-int GCC assembly for x86 and x86_64 targets
2012-02-03 17:40:21 -08:00
Chris Robinson
9166432ccf
Fix typo in the "CarpetedHallway" reverb preset
2012-02-01 16:31:37 -08:00
Chris Robinson
0107e74986
Use an enum for static const values
2012-01-31 03:43:52 -08:00
Chris Robinson
c605e06e07
Make the EFX preset values explicit floats
2012-01-31 02:57:22 -08:00
Chris Robinson
15a8e58225
Implement capture for the DirectSound backend
...
Based on a patch by Jeffrey Knockel <jeff250.at.gmail.com>
2012-01-31 01:47:59 -08:00
Chris Robinson
4393b6b05f
Only initialize the default reverb effect when a slot is available
2012-01-29 22:49:17 -08:00
Chris Robinson
ed037698fd
Reorder a couple effect presets
2012-01-29 22:16:39 -08:00
Chris Robinson
e870c22f87
av_find_stream_info is also deprecated, in favor of avformat_find_stream_info
2012-01-29 20:06:30 -08:00
Chris Robinson
fd6f03cf74
Use AVMEDIA_TYPE_AUDIO instead of the deprecated CODEC_TYPE_AUDIO
2012-01-29 16:21:57 -08:00
Chris Robinson
706f407ed5
Add some more reverb presets
2012-01-27 23:15:16 -08:00
Chris Robinson
dd3abd0f16
Use sizeof(ALfloat) when finding the max stepping value
...
The mixer always reads from floats, so the size of the storage type is
unimportant.
2012-01-26 22:33:36 -08:00
Chris Robinson
3fda804217
Pass the uncompressed sample count to LoadData and ConvertData for IMA4
2012-01-26 16:53:21 -08:00
Chris Robinson
1d1440ac64
Make sure context attributes are specified for loopback devices
2012-01-26 16:31:46 -08:00
Chris Robinson
119768001c
Make sure InitializeEffect on the default slot doesn't set a context error
2012-01-26 14:46:52 -08:00
Chris Robinson
3ee92a2b33
Return the error code from UpdateDeviceParams
2012-01-25 20:00:34 -08:00
Chris Robinson
f87b607a53
Make sure the attributes list specifies a format for loopback devices
2012-01-25 19:54:55 -08:00
Chris Robinson
b4ba83ec34
Avoid a bit of code duplication
2012-01-25 19:32:10 -08:00
Chris Robinson
d807c4bf87
Don't process a default device slot if it doesn't exist
2012-01-25 18:48:26 -08:00
Chris Robinson
423f89c908
Fix a typo
2012-01-24 15:11:23 -08:00
Chris Robinson
8d07bc41c9
Some cleanups for the reverb list
2012-01-24 13:29:33 -08:00
Chris Robinson
86ef115e21
Set the source's slot send parameter to NULL if it's the AL_EFFECT_NULL type
2012-01-23 06:29:03 -08:00
Chris Robinson
1dd8aa9b6f
Link with AudioToolbox.framework for the CoreAudio backend if it's found
2012-01-23 03:45:04 -08:00
Chris Robinson
f520257463
Avoid duplicating some initialization code
2012-01-20 16:23:15 -08:00
Chris Robinson
00dc3088c8
Honor the disabled effects for the default reverb
2012-01-20 15:56:32 -08:00
Chris Robinson
e52e4b1a8c
Not all devices will have a default effect slot
2012-01-20 12:53:41 -08:00
Chris Robinson
0ef3a30b84
Fix WaveIn shutdown for real
...
The processing thread must be messaged when shutting down, and depending on the
state of the device, waveInReset may not do it. Additionally, all buffers must
be removed from the device before they can be unprepared and the device closed.
2012-01-20 12:36:23 -08:00
Chris Robinson
b375897374
Remove an unnecessary else statement
2012-01-20 12:20:24 -08:00
Chris Robinson
2b2ce8bf3b
Always message the WinMM processing thread when a buffer is done
...
So the processing thread can keep track of completed buffers when shutting
down, too.
2012-01-20 12:06:31 -08:00
Chris Robinson
47c8c15878
Fix a possible race condition when shutting down WinMM devices
...
If the processing threads are interrupted between the shutdown check and re-
adding the buffer back to the device, the device can be left with a buffer that
will get unprepared and freed while in use.
2012-01-20 03:02:21 -08:00
Chris Robinson
fa36435290
Add a default-reverb config option, and rename __ALSOFT_FORCE_REVERB to match
2012-01-20 01:51:27 -08:00
Chris Robinson
4b83123cb8
Install efx-presets.h
2012-01-19 22:30:12 -08:00
Chris Robinson
37b17c8c78
Add the ability to specify a preset for forced reverb
2012-01-19 20:02:57 -08:00
Chris Robinson
51e81f4867
Add a global option to apply a reverb effect on source send 0
...
A special slot on the device is created and processed, so it can be shared
across all contexts on the device. Sources that don't have a slot set on send 0
will use this special slot instead.
2012-01-19 19:30:03 -08:00
Chris Robinson
ae7b61b040
Avoid printing messages about device parameter changes in the backends
2012-01-17 16:38:58 -08:00
Chris Robinson
5a2a534240
Report parameter request changes in UpdateDeviceParams
2012-01-17 15:55:37 -08:00
Chris Robinson
09258ca5c1
Change the default output format to 32-bit float
2012-01-17 15:38:36 -08:00
Chris Robinson
e0966d99a1
Retry opening the PortAudio device with 16-bit short if 32-bit float output fails
2012-01-17 15:26:22 -08:00
Chris Robinson
66a700729b
Retry opening the DSound device with 16-bit short if 32-bit float output fails
2012-01-17 12:38:47 -08:00
Chris Robinson
a7266442c2
Retry opening the WinMM device with 16-bit short if 32-bit float output fails
2012-01-17 12:21:52 -08:00
Chris Robinson
cf34b9c04e
Support 32-bit float in the WinMM backend
2012-01-17 12:17:41 -08:00
Chris Robinson
530597347c
Safely insert the new context into the list
2012-01-12 06:13:24 -08:00