aboutsummaryrefslogtreecommitdiffstats
path: root/alc/backends
Commit message (Collapse)AuthorAgeFilesLines
* Avoid single-use static class method wrappersChris Robinson2023-01-131-81/+46
|
* Avoid unnecessary uses of make_optionalChris Robinson2023-01-131-2/+4
|
* Fix RingBuffer crash in OpenSL backend (#807)IamSN0WBALL2023-01-121-1/+1
| | | Co-authored-by: IamSN0WBALL <[email protected]>
* Don't rely on mRateMatch while waiting for PipeWire timing infoChris Robinson2023-01-091-5/+2
|
* Add an option to mix on PipeWire's non-RT threadChris Robinson2023-01-081-14/+14
|
* Avoid some explicit casts and referencesChris Robinson2023-01-012-13/+15
|
* Avoid inlining certain exception functionsChris Robinson2022-12-162-7/+17
|
* Avoid extraneous temporaries when filling vectorsChris Robinson2022-12-152-8/+18
|
* Avoid setting PipeWire stream properties with separate callsChris Robinson2022-12-061-12/+11
|
* Avoid using a macro to wrap standard attributesChris Robinson2022-12-064-27/+27
|
* Avoid LIKELY/UNLIKELY macrosChris Robinson2022-12-053-16/+16
|
* Use standard likely/unlikely attributes when availableChris Robinson2022-12-052-11/+11
|
* Use the correct variable for reading the WASAPI playback rateChris Robinson2022-12-051-2/+2
|
* Fix building with PipeWire 0.3.49 and earlierChris Robinson2022-12-021-0/+19
|
* Don't prematurely change ALCdevice::BufferSizeChris Robinson2022-11-221-7/+11
|
* Fix WASAPI capture handling the background COM threadChris Robinson2022-11-191-18/+30
|
* Avoid a use-after-free in the ALSA backendChris Robinson2022-11-161-12/+12
|
* Use the correct frame size for WASAPI resamplingChris Robinson2022-11-131-2/+2
|
* Change a function to a static methodChris Robinson2022-11-132-4/+5
|
* Add a config option to prevent WASAPI from using a resamplerChris Robinson2022-11-121-1/+5
|
* Add a resampler to WASAPI outputChris Robinson2022-11-121-10/+75
| | | | | | | This allows mixing at various samples rates that WASAPI doesn't otherwise support. This is mostly helpful for users that have unnecessarily high device rates (96 or 192khz), and lets the ALC_FREQUENCY attribute or frequency config option set a lower mixing rate for more efficient processing.
* Dynamically start/stop the WASAPI message threadChris Robinson2022-11-121-86/+117
|
* Try to detect the update and buffer size from PipeWireChris Robinson2022-11-081-4/+45
|
* Make sure sio_write and sio_read return valid valuesChris Robinson2022-11-071-5/+12
|
* Add preliminary support for 7.1.4 output modesChris Robinson2022-11-0310-4/+88
| | | | | | | | I don't know how different sound APIs handle 7.1.4 ("Atmos" or "Auro3D") output, but currently it simply specifies the additional channels with the height channel labels. This isn't likely how it works for a virtualized channel bed, for playing over other with-height configurations (7.1.2, 5.1.4, etc), but this should be an okay start.
* Remove unnecessary includes and forward declarationsChris Robinson2022-09-231-7/+0
|
* Remove an unnecessary includeChris Robinson2022-09-221-1/+0
|
* Use PulseAudio's threaded mainloop instead of a custom oneChris Robinson2022-09-221-141/+160
|
* Fix the ringbuffer write sizeChris Robinson2022-08-181-1/+1
|
* Use an intermediate buffer for writing to the ringbufferChris Robinson2022-08-181-26/+11
| | | | | It doesn't seem as though AudioUnitRender likes being given two buffers to render/capture samples into segmented memory.
* Pass the action flags to AudioUnitRender from the callbackChris Robinson2022-08-171-3/+2
|
* Pass the bus number to AudioUnitRender from the callbackChris Robinson2022-08-161-2/+2
|
* Add media class for Audio/Source/Virtual as a valid node (#747)Eir W2022-08-021-1/+6
|
* Declare variables closer to where they're usedChris Robinson2022-07-181-4/+2
|
* Define PW_KEY_NODE_RATE when neededChris Robinson2022-06-241-0/+5
|
* Fix the PipeWire version checkChris Robinson2022-06-241-1/+2
| | | | | | PW_CHECK_VERSION checks if the header version is equal to or newer than the values specified, it can't be used to check if the library version is equal to or newer than the header version.
* Match exactly 5.1 Rear in WASAPIChris Robinson2022-06-161-2/+2
| | | | | So 7.1 and other configurations like it aren't detected as 5.1 Rear despite having side channels.
* Handle a blank channel mask from WASAPIChris Robinson2022-06-141-10/+18
| | | | | | | Without a channel mask, the channels are treated as "raw" or unknown. Auto- detection will only go up to stereo (assuming the first two channels are front- left and front-right), while explicit requests will work as long as there are enough channels (the user is responsible for ensuring a correct setup).
* Handle 5.1 Rear with DSound playbackChris Robinson2022-06-081-42/+44
|
* Check and handle 5.1 Rear with WASAPI captureChris Robinson2022-06-071-3/+23
|
* Trace the WASAPI device mix formatChris Robinson2022-06-071-0/+1
|
* Track 5.1 Rear with WASAPI playbackChris Robinson2022-06-071-3/+14
|
* Use a ringbuffer for Oboe captureChris Robinson2022-05-281-66/+23
|
* Fix requeueing logic for OpenSLCapture::captureSamplesChris Robinson2022-05-281-17/+29
| | | | | | | | | | | | | | The write vector represents the chunks queued for OpenSL, and the write pointer only increments when OpenSL fills in more samples. So requeueing from the start of the write vector is requeueing chunks that are already queued, which is obviously wrong. It instead needs to queue chunks that become available as they're read. Because the ring buffer holds more elements than can be written to at a givem time, the read vector does not represent the next writable chunks to queue. Advancing the read pointer increases the number of writable elements, so instead of queueing from the read vector or the start of the write vector, queue from the end of the write vector given the number of chunks read.
* Use the mix format if IsFormatSupported fails for WASAPI captureChris Robinson2022-05-171-1/+6
|
* Keep some variables local to where they're neededChris Robinson2022-05-131-26/+21
|
* Use pw_buffer::requested in newer PipeWire versionsChris Robinson2022-05-131-16/+26
|
* Remove a couple unnecessary castsChris Robinson2022-05-131-3/+3
|
* Fix the CoreAudio output element valueChris Robinson2022-05-101-1/+1
|
* More agressively hide PipeWire and SDL header warningsChris Robinson2022-05-092-2/+17
|