aboutsummaryrefslogtreecommitdiffstats
path: root/Alc/backends/mmdevapi.c
Commit message (Collapse)AuthorAgeFilesLines
* Rename the mmdevapi backend to wasapiChris Robinson2018-03-091-2054/+0
|
* Ensure at least the specified ringbuffer size is writableChris Robinson2018-03-021-1/+1
| | | | | | Previously, all but one of the specified size could be written (so for a size of n, only n-1 was guaranteed writable). All users pretty much compensated for this, but it makes more sense to fix it at the source.
* Add an option to limit the write size of the ringbufferChris Robinson2018-03-011-1/+2
|
* Provide more descriptive messages to disconnection eventsChris Robinson2018-02-031-5/+5
|
* Don't bother with an explicit stop backend methodChris Robinson2018-01-291-55/+29
|
* Call the backend close method in the destructorChris Robinson2018-01-281-0/+10
|
* Properly cast some parameters for MSVCChris Robinson2018-01-161-5/+5
|
* Use atomic variables in place of volatileChris Robinson2018-01-111-16/+17
|
* Define a function where it's usedChris Robinson2018-01-111-0/+7
|
* Move the ringbuffer declarations to a separate headerChris Robinson2018-01-111-0/+1
| | | | And rename alcRing.c to ringbuffer.c for consistency.
* Add casts to silence MSVCChris Robinson2017-06-291-1/+1
|
* Trace the message name in the message handler loopChris Robinson2017-06-261-1/+14
|
* Clean up some messy rounding codeChris Robinson2017-06-261-7/+9
|
* Ensure the mmdevapi capture buffer is at least 100msChris Robinson2017-06-261-0/+4
|
* Improve traces for the mmdevapi capture conversionsChris Robinson2017-06-231-10/+8
|
* Trace the capture converter formats for mmdevapiChris Robinson2017-06-221-0/+6
|
* Store the ambisonic order separate from the channel enumChris Robinson2017-04-121-9/+6
|
* Use the converters to enable mmdevapi captureChris Robinson2017-04-111-42/+171
|
* Rename al_string_* functions to alstr_*Chris Robinson2017-04-041-23/+23
|
* Always lock the device backend before calling aluMixDataChris Robinson2017-02-181-2/+2
|
* Avoid using some LP typesChris Robinson2017-01-101-5/+5
|
* Include wtypes.h for defining Windows' property keysChris Robinson2016-10-041-0/+1
|
* Recognize Headset formfactors as headphonesChris Robinson2016-09-211-1/+3
|
* Simplify mmdevapi's device name searchChris Robinson2016-09-071-17/+33
| | | | | Avoids converting each enumerated devid from WSTR to UTF-8, and instead just converts the device name from UTF-8 to WSTR once if needed.
* mmdevapi: Allow specifying output device by it's audio endpoint GUID or by ↵Dmytry Lavrov2016-09-061-8/+45
| | | | the device id string (Oculus VR api requires you to play back on a specific device).
* Remove DevFmtBFormat3D, which is covered by DevFmtAmbi1Chris Robinson2016-07-311-2/+0
|
* Add a config to output first-, second-, or third-order ambisonicsChris Robinson2016-07-291-0/+6
| | | | | | | | | Currently incomplete, as second- and third-order output will not correctly handle B-Format input buffers. A standalone up-sampler will be needed, similar to the high-quality decoder. Also, output is ACN ordering with SN3D normalization. A config option will eventually be provided to change this if desired.
* Combine VECTOR_RESIZE and VECTOR_RESERVEChris Robinson2016-07-261-6/+2
|
* Change the backend getLatency method to return the clock time tooChris Robinson2016-05-281-4/+11
| | | | | | This will also allow backends to better synchronize the tracked clock time with the device output latency, without necessarily needing to lock if the backend API can allow for it.
* Properly pluralize some messagesChris Robinson2016-05-221-3/+4
|
* Shorten VECTOR_ITER_ macros to VECTOR_Chris Robinson2016-04-151-3/+3
|
* Replace some CreateEvent calls with CreateEventWChris Robinson2016-02-071-6/+6
|
* Reformat Windows device name dressingChris Robinson2015-12-041-12/+13
|
* Add another cast for MSVCChris Robinson2015-11-061-1/+1
|
* Disable mmdevapi capture and update changelogChris Robinson2015-09-181-1/+6
| | | | | | | Unfortunately mmdevapi does not do channel remixing or resampling, even for capture, so the device can only be opened in the mode it's configured for. For now, fallback to dsound or winmm to get the conversion until we can do it ourselves.
* Append "on OpenAL Soft" to mmdevapi, dsound, and winmm device namesChris Robinson2015-09-101-4/+13
| | | | | Would be nicer to have a more backend-agnostic method of doing this, Perhaps even also only when the router is being used.
* 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.
* Set the WAVEFORMATEX cbSize field for mmdevapi captureChris Robinson2015-08-181-0/+1
|
* 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-181-12/+2
|
* 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
|
* 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-211-1/+1
|