Chris Robinson
790aa68621
Reduce indentation for CalcSourceParams
2009-10-19 13:25:40 -07:00
Chris Robinson
6d1d61026d
Be context-agnostic in the effect Create functions
...
This allows the effect Update functions to handle the playback frequency being
changed. By default the effects assume a maximum frequency of 192khz, however,
it can go higher at the cost of the sample buffers being cleared and the risk
of an abort() if reallocation fails
2009-10-19 07:46:53 -07:00
Chris Robinson
a4e3ca933b
EINTR is not a fatal write error
2009-10-19 00:33:00 -07:00
Chris Robinson
1fb58f9f8e
Fix OSS and Solaris playback loop check
2009-10-17 22:17:59 -07:00
Chris Robinson
86e0b9386d
Remove duplicate check in ALSA mmap playback
2009-10-16 10:57:58 -07:00
Chris Robinson
c7c4cf221a
Make the dry buffer part of the device
2009-10-09 01:06:33 -07:00
Chris Robinson
d6e439244a
Rename SetALCError for consistency
2009-10-07 04:32:14 -07:00
Chris Robinson
5ff225fa1b
Add missing ) in pulseaudio backend
2009-10-02 07:34:49 -07:00
Chris Robinson
2a77e840cc
Fix type casts for 7.1 output
2009-09-30 16:02:49 -07:00
Chris Robinson
00272883f6
Fallback to 16-bit or 8-bit, or mono, if ALSA doesn't accept the request
2009-09-27 08:35:10 -07:00
Chris Robinson
bd6f3b1273
Report disconnect if the device fails to reset
2009-09-27 04:58:42 -07:00
Chris Robinson
4e9767bb22
Don't store the ALSA format
2009-09-27 04:03:11 -07:00
Chris Robinson
1d54b7a266
Fix capture, too
2009-09-27 03:57:19 -07:00
Chris Robinson
c9506d939a
Make sure ALSA properly loads, and fix the thread stop condition
2009-09-27 01:12:42 -07:00
Chris Robinson
21217824b7
Avoid duplicate error handling
2009-09-27 00:58:11 -07:00
Chris Robinson
8024df2991
Load backend libs on-demand
2009-09-27 00:21:40 -07:00
Chris Robinson
8d29d25d60
Condense some local variables
2009-09-24 14:51:40 -07:00
Chris Robinson
af8e7ab984
Check the source start position in alSourcePlayv instead of the mixer
2009-09-24 12:24:10 -07:00
Chris Robinson
4289d5de7d
Parse the attribute list and reset the device before creating the context
2009-09-24 11:31:01 -07:00
Chris Robinson
83734aff0e
Slightly improve the multi-channel mixing loops
2009-09-24 08:52:51 -07:00
Chris Robinson
617b6728d3
Remove the state callbacks and watch for changes synchronously
2009-09-24 00:26:41 -07:00
Chris Robinson
7a8fd6cb20
Get rid of unnecessary messages from pulseaudio
2009-09-23 08:34:15 -07:00
Chris Robinson
55da339586
Properly clean up the pulse device
2009-09-23 08:19:00 -07:00
Chris Robinson
774eae0f2f
Silence unused parameter warning
2009-09-23 07:10:23 -07:00
Chris Robinson
201b108a54
Attempt to reload backend libs when probing, if they didn't initially load
2009-09-23 01:33:58 -07:00
Chris Robinson
bdbdbcea26
Update in properly-sized chunks for PulseAudio
2009-09-23 01:24:10 -07:00
Chris Robinson
f6c1a21cf0
Properly flip the backend entries when sorting the device list
2009-09-22 04:42:46 -07:00
Chris Robinson
c953072a15
Fix reset condition check
2009-09-22 00:16:21 -07:00
Chris Robinson
93f3e9357b
(Re)allocate and clear the stereo-to-binaural filter as needed
2009-09-21 23:52:59 -07:00
Chris Robinson
8ea8b49464
Avoid locking a NULL context when a device is disconnected
2009-09-21 23:31:04 -07:00
Chris Robinson
62cef44dcb
Reinitialize the stereo-to-binaural filter after resetting the device
2009-09-21 23:25:26 -07:00
Chris Robinson
a2edc95207
Properly set the number of sends requested by the app
2009-09-21 23:18:39 -07:00
Chris Robinson
b641f993ac
Hide the wave writer device if no output file is set
2009-09-21 05:03:40 -07:00
Chris Robinson
e2905b6bc9
Properly handle forced 32-bit float output with DSound
2009-09-21 02:57:17 -07:00
Chris Robinson
e11b59a80f
Return imediately if trying to set an unknown format
2009-09-21 02:53:33 -07:00
Chris Robinson
0ae02e8ad4
Support floating point capture for backends that can handle it
2009-09-21 02:31:33 -07:00
Chris Robinson
2cbdffab86
Create the ALSA capture ring buffer with the proper size
2009-09-21 02:14:32 -07:00
Chris Robinson
86eefdb2a8
Mix all pending periods at once instead of one at a time
2009-09-20 00:44:39 -07:00
Chris Robinson
750399ccd7
Let verify_state restore from an ALSA underrun
2009-09-20 00:40:23 -07:00
Chris Robinson
fb97ca6022
Remove left-over backend-specific period options
2009-09-16 23:29:32 -07:00
Chris Robinson
cbcaa54173
Store the number of periods in the device instead of the buffer size
...
Also keep all the fields in sync
2009-09-16 22:58:54 -07:00
Chris Robinson
94e3fca702
Remove unnecessary parameters, and rename methods
2009-09-16 00:24:44 -07:00
Chris Robinson
ffff104554
Restore the device frequency using the stream info
2009-09-16 00:08:11 -07:00
Chris Robinson
307a9dd1b2
Update the frequency with what the stream actually got set with
2009-09-15 23:14:14 -07:00
Chris Robinson
5dff8ea820
Properly terminate PortAudio when closing
2009-09-15 22:45:27 -07:00
Chris Robinson
49648fe22d
Make a GetConfigValueBool function and use it
2009-09-15 22:18:13 -07:00
Chris Robinson
9f037e8980
Pass the device to aluMixData
2009-09-15 19:30:27 -07:00
Chris Robinson
12f81bcbb9
Move the stereo-to-binaural filter to the device
2009-09-15 19:06:47 -07:00
Chris Robinson
6636131d3b
Pass the frame count to aluMixData
2009-09-15 18:19:00 -07:00
Chris Robinson
eeea9631ce
Split the source mixing loop into a separate function
...
Helps reduce the function size and indentation levels
2009-09-15 17:56:31 -07:00