aboutsummaryrefslogtreecommitdiffstats
path: root/Alc/backends
Commit message (Collapse)AuthorAgeFilesLines
* Append "on OpenAL Soft" to mmdevapi, dsound, and winmm device namesChris Robinson2015-09-103-32/+46
| | | | | Would be nicer to have a more backend-agnostic method of doing this, Perhaps even also only when the router is being used.
* Specify the pa_channel_map directly instead of through a stringChris Robinson2015-09-041-30/+43
|
* Use the correct device name for PulseAudio tooChris Robinson2015-09-031-10/+24
| | | | | Like mmdevapi. duplicate device names will have a '#2' or such appended, so the device's reported name may be incorrect.
* Replace another vector loop with VECTOR_FIND_IFChris Robinson2015-09-031-14/+11
|
* Use the correct device name when opening a device by nameChris Robinson2015-09-031-2/+8
| | | | | Duplicate device names will have a '#2' or such appended, so the device's reported name may be incorrect.
* Allow for device-specific config valuesChris Robinson2015-08-287-22/+22
|
* Set the WAVEFORMATEX cbSize field for mmdevapi captureChris Robinson2015-08-181-0/+1
|
* Fix handling of PulseAudio devices that have the same descriptionChris Robinson2015-08-141-10/+44
|
* Wait for the OpenSL buffer queue to empty when stoppingChris Robinson2015-08-131-1/+10
|
* Check for duplicate device names in the mmdevapi backendChris Robinson2015-06-301-1/+27
|
* Use the lockless ringbuffer for mmdevapi captureChris Robinson2015-06-301-8/+9
| | | | | The backend's capture funcs are already called while under a lock, so multiple threads shouldn't be able to read from it at once.
* Double check the mmdevapi capture formatChris Robinson2015-06-071-1/+23
| | | | | This isn't a real solution, but it should get IAudioClient_IsFormatSupported to stop failing.
* Add a macro to simplify allocating and constructing an objectChris Robinson2015-05-1811-117/+17
|
* Convert the solaris backend to the new APIChris Robinson2015-05-172-77/+134
|
* Add a note to the JACK backend about a (minor) race conditionChris Robinson2015-02-071-0/+14
|
* Clean up another vector iterator loopChris Robinson2015-02-071-12/+12
|
* Signal the mixer thread outside of the mutex lockChris Robinson2015-02-031-1/+5
|
* Don't try to spawn a JACK server by defaultChris Robinson2015-02-031-6/+6
| | | | And don't print an error if one couldn't be started when not requested.
* Always use the JACK server buffer size as the update sizeChris Robinson2015-02-031-12/+15
| | | | | The buffer-size config option now only specifies an additional mix ahead to keep ready for audio requests, rather than a pretend period size.
* Ensure PulseAudio's mixing loop is signaled when stoppingChris Robinson2015-01-211-0/+8
|
* Remove a couple unused variablesChris Robinson2015-01-201-3/+0
|
* Fix X7DOT1_NARROW name to X7DOT1_WIDEChris Robinson2015-01-151-3/+3
|
* Accept a "narrow" layout for 7.1 with mmdevapiChris Robinson2015-01-151-2/+3
|
* Fix the flags typeChris Robinson2015-01-111-1/+2
|
* Update a commentChris Robinson2014-12-241-2/+2
|
* Don't update the channel format if all JACK ports were allocatedChris Robinson2014-12-231-9/+11
|
* Try the device-specified channel configuration firstChris Robinson2014-12-231-3/+15
| | | | | This does basically no checking that the channel config is correct, but should be good enough for when non-stereo modes are requested.
* Use the custom ringbuffer instead of JACK'sChris Robinson2014-12-231-41/+20
|
* Don't set unused pointers to NULL, don't try to write 0 samplesChris Robinson2014-12-231-7/+8
|
* At least measure the ringbuffer size for JACK's latencyChris Robinson2014-12-231-1/+17
| | | | | | We should also add the port latency, but there's currently no way to ensure it's synchronized with the ringbuffer (the ringbuffer will update before the port latency gets updated).
* Add an option to prevent spawning a JACK serverChris Robinson2014-12-221-2/+6
|
* Add an option for an increased ringbuffer size with JACKChris Robinson2014-12-221-2/+10
|
* Fill out the JACK playback backendChris Robinson2014-12-221-15/+326
| | | | | | | | | | | | | | | | | | | | | | | | A few notes about it: The OpenAL device's requested buffer metrics are ignored, and instead the device will keep one JACK-sized buffer's worth of audio prepared for JACK's next process request. Output is restricted to 32-bit float stereo. Part of this is because JACK requires a buffer size that's a power of 2 (measured in samples), and the ringbuffer requires a buffer size that's a power of 2 (measured in bytes). A channel count of 6 (5.1) or 7 (6.1) will not work without causing a sample to split over the edge of the ringbuffer. Additioanlly, JACK doesn't provide information about what channel configuration a device or set of ports has, so there's no way to know what ports 3 and up map to (even the first two ports are unknown, but assuming stereo seems to work well enough). There is no device latency measurement (for AL_SOFT_source_latency) due to the non-atomicity between the ringbuffer's read size and port latency. A method is needed to ensure the ringbuffer's read size and port latency can both be measured between the end of a JACK update cycle (when the port latency has been updated with the newly-retrieved audio) and the following ringbuffer read update.
* Add a skeleton backend for JACKChris Robinson2014-12-212-0/+262
|
* Trace lparam and wparam message valuesChris Robinson2014-12-211-1/+1
|
* Check the PROPVARIANT type before useChris Robinson2014-12-211-2/+8
|
* Use VECTOR_FOR_EACH instead of a manual loopChris Robinson2014-12-211-9/+7
|
* Use a macro for the record thread nameChris Robinson2014-12-213-3/+3
|
* Support capture with mmdevapiChris Robinson2014-12-191-1/+551
|
* Set a couple pulse callbacks to NULL during reset, and minor cleanupsChris Robinson2014-12-171-9/+9
|
* Don't kill pulseaudio's mixer thread if it's already killedChris Robinson2014-12-171-1/+1
|
* Check mmdevice endpoint for being headphonesChris Robinson2014-11-271-1/+31
|
* Avoid unnecessary uses of ALCdevice_Lock and ALCdevice_UnlockChris Robinson2014-11-271-8/+8
|
* Set headphones when dsound reports headphonesChris Robinson2014-11-271-1/+3
|
* Support B-Format output with the wave file writerChris Robinson2014-11-257-1/+33
|
* Require at least pulse client 0.9.16Chris Robinson2014-11-241-48/+8
|
* Trace PulseAudio's active portChris Robinson2014-11-241-2/+5
|
* Set headphones when pulse reports using the headphones portChris Robinson2014-11-231-0/+3
|
* Don't force UpdateSize to a multiple of 4 after buffer metrics were setChris Robinson2014-11-171-2/+0
|
* Always get the pulseaudio sink info on device resetChris Robinson2014-11-171-16/+14
|