Commit Graph

1632 Commits

Author SHA1 Message Date
Chris Robinson 82244f298c Add reference counting to the ALC contexts 2011-08-28 15:44:03 -07:00
Chris Robinson 3ab20d4ccb Print an error for invalid speaker layout keys 2011-08-28 10:25:40 -07:00
Chris Robinson ccc2644e6b Free the WaveIn buffers' data after unpreparing them all 2011-08-25 11:33:13 -07:00
Chris Robinson 7e2155d937 Return an ALC error enum from the OpenCapture backend method 2011-08-24 14:44:15 -07:00
Chris Robinson c696d4dbb2 Return an ALC error enum from the OpenPlayback backend method 2011-08-24 14:24:48 -07:00
Chris Robinson f5195ee4f2 Remove the Buffer field from the source 2011-08-23 09:55:22 -07:00
Chris Robinson 9f25ad42c1 Explicitly set BufferListStart's prev field 2011-08-23 09:27:35 -07:00
Chris Robinson 1d4dc7d7a9 Add AL_SOFTX_deferred_updates to the context's extension list 2011-08-22 18:57:28 -07:00
Chris Robinson 65d42083e1 Prevent source and effect slot updates from occuring while updates are deferred 2011-08-22 17:13:03 -07:00
Chris Robinson 6992a67dd9 Remove some g_ prefixes 2011-08-22 07:50:08 -07:00
Chris Robinson 922f5fa081 Rename a couple variables 2011-08-22 07:44:22 -07:00
Chris Robinson 199df253ca Always use the thunk functions to get object IDs 2011-08-22 07:40:14 -07:00
Chris Robinson c1f435cc18 Don't use the thunk array for object lookups 2011-08-22 07:22:02 -07:00
Chris Robinson 858592832f Defer source offset changes requested by the app 2011-08-21 00:49:04 -07:00
Chris Robinson a97211b572 Use -1 to mark an invalid source offset instead of 0 2011-08-21 00:35:37 -07:00
Chris Robinson f196a9fc67 Defer source state changes from alSourcePlay/Pause/Stop/Rewind calls 2011-08-20 23:59:24 -07:00
Chris Robinson 7ea71d8bfa Use a separate function to set the source state 2011-08-20 06:31:10 -07:00
Chris Robinson 9b615a0add Remove some spaces 2011-08-20 04:58:50 -07:00
Chris Robinson 4540034039 Move the GUID initialization to the helper 2011-08-20 04:55:11 -07:00
Chris Robinson 29d58f3d84 Set the loopback backend functions first 2011-08-20 04:43:47 -07:00
Chris Robinson 5290c820b4 Print the ALC_DEFAULT_ALL_DEVICES_SPECIFIER when available 2011-08-20 04:16:22 -07:00
Chris Robinson 22ad15e1f1 Move some functions into a separate helper source file 2011-08-20 04:01:07 -07:00
Chris Robinson 80b8abb0ec Don't enumerate "PulseAudio Default" in the ALL_DEVICES list 2011-08-20 03:00:38 -07:00
Chris Robinson 529ff3197a Don't expose "DirectSound Default" in the ALL_DEVICES list
This is under the assumption that one of the devices in ALL_DEVICES corresponds
to the default. This is not true for all backends (eg, ALSA).
2011-08-20 02:49:15 -07:00
Chris Robinson b036bc9e04 More closely emulate pthread_once in Windows 2011-08-20 01:07:27 -07:00
Chris Robinson 9989f33fc2 Move backend sources to a separate sub-directory 2011-08-20 00:41:47 -07:00
Chris Robinson ba4456d24a Use the proper variable type 2011-08-19 23:05:54 -07:00
Chris Robinson 00718ca03f Use the string ID instead of numeral index to reference the ALSA card
The index has a habit of changing, where the ID should be more consistent.
2011-08-19 20:47:08 -07:00
Chris Robinson 6b8475b435 Add options to specify alternate ALSA device prefixes 2011-08-19 04:02:36 -07:00
Chris Robinson e51295c79e Don't scale the wet send by the number of channels
Each channel should be treated as a distinct audio source, so multiple channels
should act as multiple sources.
2011-08-19 03:59:57 -07:00
Chris Robinson b40aa8636b Remove a couple unneeded variables 2011-08-19 03:01:57 -07:00
Chris Robinson b3645df56f Delete the mutex if the device fails to open 2011-08-19 02:58:21 -07:00
Chris Robinson 711f0a29ec Make sure there's a valid backend before trying to open a device 2011-08-19 02:55:36 -07:00
Chris Robinson e8e1286572 Remove the "via *" portion of the enumerated devices 2011-08-19 01:59:03 -07:00
Chris Robinson 3d722b9ba0 Don't remove backends that fail to initialize 2011-08-19 01:54:55 -07:00
Chris Robinson 4ac0a507e0 Use only the first available backend for playback or capture devices
This should help cut down on the number of duplicate devices when enumerating
on a system that supports multiple backends. It will also avoid the problem of
backends that don't play well with others (eg, PulseAudio).
2011-08-19 01:41:16 -07:00
Chris Robinson d54908d946 Attempt to connect a context when pulseaudio initializes 2011-08-19 01:40:16 -07:00
Chris Robinson 6ba5128f72 Use separate lists for playback and capture backends 2011-08-19 00:30:05 -07:00
Chris Robinson c96a6c2b1b Remove a typedef 2011-08-18 23:58:00 -07:00
Chris Robinson 0b0588cc37 Load backend libs on init 2011-08-18 23:56:11 -07:00
Chris Robinson 742bb12498 Make DSoundLoad return a boolean 2011-08-18 01:17:42 -07:00
Chris Robinson f00017c8c1 Avoid some LP types 2011-08-18 00:31:44 -07:00
Chris Robinson d976d02936 Only attempt to load MMDevApi and DSound once, on init 2011-08-18 00:13:43 -07:00
Chris Robinson 45f0886eba Set the proper union member to 0 2011-08-17 20:44:05 -07:00
Chris Robinson 057fef88ae Remove backends that fail to initialize 2011-08-17 06:15:43 -07:00
Chris Robinson 8148626ba3 Allow the backend init functions to return failure 2011-08-17 06:05:26 -07:00
Chris Robinson 14ffb8bd9b Coalesce some mixer sample converters 2011-08-17 02:33:25 -07:00
Chris Robinson 2f8510db31 Avoid reading some more source parameters multiple times when updating 2011-08-17 01:54:09 -07:00
Chris Robinson 38a4d9a6c5 Get rid of the remaining min/max usage 2011-08-16 18:53:04 -07:00
Chris Robinson 9f5bf5f930 Rename minF/maxF/clampF to minf/maxf/clampf for consistency 2011-08-16 18:40:21 -07:00