aboutsummaryrefslogtreecommitdiffstats
path: root/alc/backends
Commit message (Collapse)AuthorAgeFilesLines
* Get rid of a redundant enumChris Robinson2020-03-3033-67/+62
|
* Return the enumerated device names from the backendChris Robinson2020-03-3033-138/+176
| | | | Rather than using an out parameter.
* Inline a couple BackendBase methodsChris Robinson2020-03-302-8/+3
|
* Remove the mutex from the backend baseChris Robinson2020-03-295-12/+17
|
* Remove the QSA backendChris Robinson2020-03-292-979/+0
| | | | | It's been broken for who knows how long, and could really do with a rewrite for the new interface anyway.
* Protect the call to pa_mainloop_quit with the mutexChris Robinson2020-03-291-1/+4
|
* Make some functions private methodsChris Robinson2020-03-281-19/+19
|
* Avoid AL[C]boolean for internal useChris Robinson2020-03-282-7/+7
|
* Make sure prebuf is filled when starting pulseaudio playbackChris Robinson2020-03-271-1/+25
|
* Use "zero-copy" writes with pulseaudio playbackChris Robinson2020-03-261-6/+20
|
* Clear the WASAPI device list when enumeratingChris Robinson2020-03-241-15/+12
|
* Don't send close messages for unopened WASAPI devicesChris Robinson2020-03-241-2/+10
|
* Avoid some pre-C++14 workaroundsChris Robinson2020-03-221-10/+9
|
* Remove the check for stat()Chris Robinson2020-03-212-4/+0
| | | | It's POSIX-2001 standard
* Avoid a function call to get the channel countChris Robinson2020-03-181-1/+1
|
* Rename a method to be clearerChris Robinson2020-03-181-15/+13
|
* Make the pulseaudio enumeration functions class methodsChris Robinson2020-03-181-112/+113
|
* Remove a couple unused methodsChris Robinson2020-03-181-2/+0
|
* Add a helper to wait for the device mixChris Robinson2020-03-031-2/+1
|
* Remove unnecessary locks now that the mixer doesn't require oneChris Robinson2020-02-2617-61/+17
|
* Remove a couple unnecessary type aliasesChris Robinson2020-02-221-2/+0
|
* Fix JACK process callback handlingChris Robinson2020-01-121-50/+48
| | | | | | The callback apparently can't be set after activation, but we can't allocate the ring buffer until after activation when the callback is already getting called. An ugly flag it is, then, I guess.
* Don't allocate the ring buffer for JACK before activationChris Robinson2020-01-111-32/+20
| | | | | | | | | | | | | | It seems the JACK server can send buffer size change events during device reset and wait on it, which causes a failure since the change event can't be processed during a reset. It's otherwise impossible to safely disable the change event callback during a reset since the lock is already held and the callback can be waiting to acquire it. The only guarantee we seem to have is the event callback won't be invoked after jack_activate succeeds. So instead, the buffer size can be queried after jack_activate and the ring buffer allocated then, instead of using an event callback. This does mean the buffer size can change with a start() call, but it's better than a failure to start.
* Make CreateRingBuffer a static RingBuffer methodChris Robinson2020-01-1010-13/+13
|
* Make a duration type to handle WASAPI reference timesChris Robinson2019-12-221-34/+36
|
* Print the unhandled subformatChris Robinson2019-12-221-54/+54
|
* Try harder to find a matching WASAPI configurationChris Robinson2019-12-221-92/+110
| | | | | | As long as the lowest channel bits match the enabled bits for a given configuration, higher bits from any extra channels can be ignored since they can be skipped.
* Handle padding between device sample framesChris Robinson2019-12-2115-36/+58
| | | | | | | | The padding must be constant and sample type aligned (e.g. some fixed multiple of two bytes between the start of two consecutive frames for 16-bit output). The intent is to always have the ability for stereo output with WASAPI even if the device has some other unsupported configuration, as long as front-left and front-right exist.
* Add a config option for custom ALSA capture devicesChris Robinson2019-10-271-18/+16
|
* Gracefully drain the OpenSL capture buffer on disconnectChris Robinson2019-10-101-13/+24
|
* Use one PulseAudio mainloop per deviceChris Robinson2019-10-091-221/+270
| | | | | To help avoid devices blocking on each other when handling asynchronous messages.
* Remove a useless prebuf check with PulseAudioChris Robinson2019-10-091-14/+0
|
* Create the initial PulseAudio stream corkedChris Robinson2019-10-091-1/+2
|
* Don't track the PulseAudio context state in devicesChris Robinson2019-10-091-30/+0
|
* Make C callbacks noexceptChris Robinson2019-10-098-88/+85
| | | | | No telling what would happen if exceptions managed to get back into presumably C-based callers.
* Use smart pointers for ALSA param handlesChris Robinson2019-10-091-132/+128
| | | | And simplify some related error handling
* Never return null from CreateRingBufferChris Robinson2019-10-0810-43/+5
| | | | | Allocation failure would already throw a bad_alloc anyway, now a size overflow throws an exception too.
* Clean up some exception messages and avoid duplicate log messagesChris Robinson2019-10-0814-184/+46
|
* Define some simple wrapper methods inlineChris Robinson2019-10-081-63/+30
|
* Avoid raw lock/unlock callsChris Robinson2019-10-0714-58/+44
|
* Fix BackendVase typoChris Robinson2019-10-071-1/+1
|
* Reduce some indentationChris Robinson2019-10-071-32/+36
|
* Use exceptions for backend open failuresChris Robinson2019-10-0719-542/+514
|
* Make MAX_RESAMPLER_PADDING specify the total paddingChris Robinson2019-09-281-1/+1
|
* Use FastBSinc24 for WASAPI and CoreAudio captureChris Robinson2019-09-282-2/+2
| | | | Given a fixed rate, there's no downside to the fast version.
* Fix a couple more conversion warningsChris Robinson2019-09-221-6/+6
|
* Make the resampler type an enum classChris Robinson2019-09-222-2/+2
|
* Fix some Windows warningsChris Robinson2019-09-182-12/+12
|
* Clean up some more conversion warningsChris Robinson2019-09-161-22/+19
|
* Clean up some more shadowing warningsChris Robinson2019-09-161-8/+6
|