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
Chris Robinson
c543611897
Add some casts
2012-01-11 00:55:02 -08:00
Chris Robinson
d88596e13c
There's no need to pass a buffer to avio_alloc_context
2012-01-11 00:43:24 -08:00
Chris Robinson
c59bbe7c22
Handle a couple of special AVSEEK_ seek modes
2012-01-11 00:32:16 -08:00
Chris Robinson
d4670faafd
Fix compiling the example program, and support AL_SOFT_buffer_samples with it
2012-01-10 02:12:54 -08:00
Chris Robinson
e772fb7d0e
Finalize AL_SOFT_buffer_samples
2012-01-10 01:14:02 -08:00
Chris Robinson
29ba8f9f1a
Remove the unnecessary AL_MULAW_SOFT, AL_ALAW_SOFT, and AL_IMA4_SOFT defines
2012-01-10 00:59:10 -08:00
Chris Robinson
61af4d715c
Append _SOFT to the AL_SOFT_buffer_samples enums
2012-01-10 00:41:05 -08:00
Chris Robinson
535091e36c
Make LockDevice, LockContext, etc, inline
2012-01-09 23:37:03 -08:00
Chris Robinson
5b7f8c1816
Check earlier for ffmpeg
2012-01-02 11:52:20 -08:00
Chris Robinson
18216ab1a9
Remove the warning when a context being released is globally current
...
Just about every implementation allows this, and there's no direct harm caused
by it. However, leave the warnings for when it's still current on specific
threads, as this can cause issues.
2012-01-01 15:36:31 -08:00
Chris Robinson
5500ed9209
Use the device lock when removing the context from the device's list
2012-01-01 15:22:58 -08:00
Chris Robinson
886f874ff3
Use a proper typedef for handling atomic pointer swaps
2012-01-01 15:00:03 -08:00
Chris Robinson
466cac328f
Add an example program that streams audio using ffmpeg
2012-01-01 12:36:41 -08:00
Chris Robinson
06caac2619
Update some config option descriptions
2011-12-20 01:45:29 -08:00
Chris Robinson
2691c33b55
Use a string to specify the resampler config option
2011-12-20 01:36:01 -08:00
Chris Robinson
7f6844e48d
Use a struct to associate channel enums and their angles
2011-12-20 01:17:11 -08:00
Chris Robinson
a5a929ff72
Restore the old FPU mode if the effects fail to update with new device parameters
2011-12-20 00:35:32 -08:00
Chris Robinson
84b5311257
Use an explicit 0 for the "no error" enums
2011-12-03 08:27:51 -08:00
Chris Robinson
6a97f6a327
Reset the ALSA device if the number of available samples grows too large
2011-11-28 10:24:24 -08:00
Chris Robinson
dfd02817fa
Make ALSA XRUN when the number of available samples exceeds the buffer size
2011-11-28 09:12:30 -08:00
Chris Robinson
222d2363cd
Don't fail to insert a map entry when the key exists and the limit is reached
2011-11-26 03:52:07 -08:00
Chris Robinson
14c117ffd3
Initialize listener matrix to identity
2011-11-26 03:37:37 -08:00
Chris Robinson
d5df2ad3ce
Define TlsDestructor for Windows static builds, too
2011-11-12 16:00:37 -08:00
Chris Robinson
c56b2734fd
Use loops to write reverb output
2011-11-02 08:15:10 -07:00
Chris Robinson
5eebe73f79
Use a loop to write the modulator effect output
2011-11-01 17:12:56 -07:00
Chris Robinson
21d400e3c6
Use panning for echo instead of specifying discrete channels
2011-11-01 17:03:11 -07:00
Chris Robinson
d270188578
Append _SOFT to the ALC loopback format enums
2011-11-01 16:00:47 -07:00
Chris Robinson
fcf9034c2b
Calculate the listener matrix when a new orientation is specified
...
This is so the matrix isn't derived each time a source is updated, and it will
make supporting user-defined matrices easier.
2011-10-30 08:27:24 -07:00
Chris Robinson
956e6f95ec
Don't translate the listener velocity
2011-10-30 05:49:17 -07:00
Chris Robinson
50913948a0
Don't transform/translate vectors with an invalid listener orientation
2011-10-30 05:47:14 -07:00
Chris Robinson
a5c02556e6
Add a work-around for cross-compiling with MinGW
2011-10-27 21:22:00 -07:00
Chris Robinson
319f40462f
Initialize/Uninitialize COM as needed
2011-10-24 22:11:16 -07:00