Chris Robinson
a48f362d28
Start a MIDI interface extension
2013-11-28 01:53:05 -08:00
Chris Robinson
182b08d8bc
Create and use a MidiSynth on playback devices
2013-11-27 18:52:56 -08:00
Chris Robinson
80ea801204
Add a macro for GCC to ensure stack alignment
2013-11-25 17:29:39 -08:00
Chris Robinson
10dbb1bc9b
Remove the Lock and Unlock methods from BackendFuncs
...
All backends that still use the old interface use the default locking methods,
which is also used by the ALCbackend base.
2013-11-04 23:34:18 -08:00
Chris Robinson
d3c70e63b4
Use C99 inline in more places
2013-11-04 13:44:46 -08:00
Chris Robinson
692ab1085d
Only set device functions when needed
2013-11-04 10:52:03 -08:00
Chris Robinson
94aeb5f52e
Use a unique backend type for loopback
2013-11-04 10:51:22 -08:00
Chris Robinson
9760a592b2
Rename VCALL and VCALL0 to V and V0
2013-11-02 17:30:28 -07:00
Chris Robinson
a1a3f51be2
Convert the OSS backend to the new interface
2013-11-02 15:42:45 -07:00
Chris Robinson
ddf521eddc
Make LockContext and UnlockContext inline again
2013-11-02 12:05:02 -07:00
Chris Robinson
7142e3828f
Rename alcGetLatency to ALCdevice_GetLatency
2013-11-02 12:01:58 -07:00
Chris Robinson
779eb4b82b
Convert the PulseAudio backend to the new interface
2013-10-29 14:44:07 -07:00
Chris Robinson
d2b3615943
Convert the loopback backend to the new interface
2013-10-29 10:38:55 -07:00
Chris Robinson
3c65c946d4
Fix capture with the new backend interface
2013-10-28 22:03:54 -07:00
Chris Robinson
16d5d5760c
Convert ALSA to the new backend interface
2013-10-28 21:56:14 -07:00
Chris Robinson
a407d57639
Rename the support method to querySupport
2013-10-28 17:23:19 -07:00
Chris Robinson
6fd857739c
Support capture backends with the new interface
2013-10-28 17:04:44 -07:00
Chris Robinson
21f1e54cb9
Create and use a backend wrapper for capture
2013-10-28 14:38:55 -07:00
Chris Robinson
20bcb68ad6
Move ALCbackend base stuff to a separate file
2013-10-28 12:30:57 -07:00
Chris Robinson
f24cb44781
Move the device mutex to the backend
2013-10-28 12:05:33 -07:00
Chris Robinson
034935b2e1
Modify how VCALL is handled
...
Now instead of specifying the arguments as a third argument to the macro, like
VCALL(object,function,(arg1, arg2));
they are specified separately after the macro, like
VCALL(object,function)(arg1, arg2);
Also, VCALL_NOARGS has been removed in favor of VCALL0, which behaves like
above but expects an empty argument list (a separate macro is needed to work
around preprocessor limitations).
2013-10-28 11:06:04 -07:00
Chris Robinson
c1cdd3095b
Convert the Null backend to the ALCbackend style
2013-10-28 08:29:19 -07:00
Chris Robinson
c8603092d3
Add a default getLatency to ALCbackend
...
And make sure the backend is properly deleted.
2013-10-28 05:57:07 -07:00
Chris Robinson
f065700ef9
Move the lock/unlock methods to the backend
2013-10-28 05:10:28 -07:00
Chris Robinson
3ed425d7ef
Move the ALCdevice handle to the ALCbackend base
2013-10-27 16:20:47 -07:00
Chris Robinson
af8be56f17
Use an ALCbackend object to access playback backends
...
This is the start of a backend redesign. Currently, a wrapper object is used to
avoid having to redo all the backends at once, but they should slowly be
converted to derive from ALCbackend instead. The ALCbackend interface can
change as needed.
2013-10-27 14:24:55 -07:00
Chris Robinson
1518895e15
Use an UNUSED macro instead of void-tagging unused parameters
2013-10-07 07:44:09 -07:00
Chris Robinson
ba52ac9bcd
Finalize AL_SOFT_deferred_updates
2013-10-05 06:14:04 -07:00
Chris Robinson
ead8573aaf
Add some more missing enums
2013-10-03 07:57:54 -07:00
Chris Robinson
41175ec84c
Implement the Compressor effect
2013-10-03 07:55:12 -07:00
Chris Robinson
b9fd3f9eb4
Add missing enum to the list
2013-10-03 07:32:01 -07:00
Chris Robinson
a5471ce0a4
Better handle spaces between string list entries
2013-06-16 15:44:41 -07:00
Chris Robinson
68898dad1e
Don't open the log file with both 'truncate' and 'append' flags
2013-06-07 03:38:09 -07:00
Chris Robinson
a371de080b
Silence some clang warnings
2013-06-05 01:52:49 -07:00
Chris Robinson
0e0f70b288
Avoid a NULL dereference
2013-06-04 17:36:54 -07:00
Chris Robinson
7257aa3ed2
Allow enabling HRTF through a context creation attribute
2013-05-31 19:29:32 -07:00
Chris Robinson
69e0c19767
Start an extension that can query the status of HRTF rendering
2013-05-31 16:03:59 -07:00
Chris Robinson
764e3aa496
Fix up the naming convention of effect methods
2013-05-29 11:17:45 -07:00
Chris Robinson
9e84f38a46
Use generic VCALL[_NOARGS] macros instead of type-specific wrappers
2013-05-27 11:48:29 -07:00
Chris Robinson
38a9e642df
Check for SSE2 and set the denormals-are-zero bit for mixing if available
2013-05-22 17:04:37 -07:00
Chris Robinson
0a07ed14c2
Rename DELETE to DELETE_OBJ
...
Because Windows.
2013-05-21 23:42:40 -07:00
Chris Robinson
604726c639
Add a DELETE macro to help destroy objects
2013-05-21 13:27:27 -07:00
Chris Robinson
eaccaa5028
Rename the effect state's Destroy method to Destruct
2013-05-21 13:02:56 -07:00
Chris Robinson
a5d94f5d09
Use factories to create and destroy effect states
2013-05-21 12:47:18 -07:00
Chris Robinson
78e7c1c27b
Implement distortion and equalizer effects
...
Code provided by Mike Gorchak
2013-05-18 01:33:01 -07:00
Chris Robinson
d237410d1d
Add a QSA backend for QNX
2013-03-14 01:29:20 -07:00
Chris Robinson
3fd0f23e48
Add Chorus and Flanger effects
...
Code provided by Mike Gorchak
2013-03-13 23:31:12 -07:00
Chris Robinson
e51574c764
Trace the list of supported backends
2012-12-04 13:46:51 -08:00
Chris Robinson
1fb9311d82
Lock the device before calling aluHandleDisconnect
...
PulseAudio causes an assert if being relocked inside a callback on the worker
thread, where aluHandleDisconnect is called. We can assume it's already locked
there, so just make sure the device is locked before being calling it.
2012-12-02 11:30:23 -08:00
Chris Robinson
dd34daed42
Trace the opened device name in alcCaptureOpenDevice
2012-12-02 06:37:34 -08:00