Commit message (Collapse) | Author | Age | Files | Lines | ||
---|---|---|---|---|---|---|
... | ||||||
* | Make and use a bit_cast function | Chris Robinson | 2023-05-04 | 1 | -2/+2 | |
| | | | | Instead of reinterpret_casting between incompatible types | |||||
* | Update ComPtr and use an out_ptr() function | Chris Robinson | 2023-05-04 | 1 | -41/+26 | |
| | ||||||
* | Distinguish a couple log messages | Chris Robinson | 2023-01-30 | 1 | -3/+3 | |
| | | | | And downgrade an ERR to a WARN | |||||
* | Use the correct variable for reading the WASAPI playback rate | Chris Robinson | 2022-12-05 | 1 | -2/+2 | |
| | ||||||
* | Fix WASAPI capture handling the background COM thread | Chris Robinson | 2022-11-19 | 1 | -18/+30 | |
| | ||||||
* | Use the correct frame size for WASAPI resampling | Chris Robinson | 2022-11-13 | 1 | -2/+2 | |
| | ||||||
* | Change a function to a static method | Chris Robinson | 2022-11-13 | 1 | -3/+4 | |
| | ||||||
* | Add a config option to prevent WASAPI from using a resampler | Chris Robinson | 2022-11-12 | 1 | -1/+5 | |
| | ||||||
* | Add a resampler to WASAPI output | Chris Robinson | 2022-11-12 | 1 | -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 thread | Chris Robinson | 2022-11-12 | 1 | -86/+117 | |
| | ||||||
* | Add preliminary support for 7.1.4 output modes | Chris Robinson | 2022-11-03 | 1 | -2/+20 | |
| | | | | | | | | 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. | |||||
* | Match exactly 5.1 Rear in WASAPI | Chris Robinson | 2022-06-16 | 1 | -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 WASAPI | Chris Robinson | 2022-06-14 | 1 | -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). | |||||
* | Check and handle 5.1 Rear with WASAPI capture | Chris Robinson | 2022-06-07 | 1 | -3/+23 | |
| | ||||||
* | Trace the WASAPI device mix format | Chris Robinson | 2022-06-07 | 1 | -0/+1 | |
| | ||||||
* | Track 5.1 Rear with WASAPI playback | Chris Robinson | 2022-06-07 | 1 | -3/+14 | |
| | ||||||
* | Use the mix format if IsFormatSupported fails for WASAPI capture | Chris Robinson | 2022-05-17 | 1 | -1/+6 | |
| | ||||||
* | Handle 3D7.1 as a separate channel configuration | Chris Robinson | 2022-04-26 | 1 | -1/+5 | |
| | | | | | | | It's treated as 5.1 + 2 aux channels. This allows AL_DIRECT_CHANNELS_SOFT to behave better, not forwarding rear left/right channel inputs to lower front and upper rear, and allows reporting a more appropriate output mode to the app instead of 7.1. | |||||
* | Make a couple more operator bools explicit | Chris Robinson | 2022-02-20 | 1 | -1/+1 | |
| | ||||||
* | Don't change the requested format when it's usable with WASAPI | Chris Robinson | 2021-10-25 | 1 | -19/+53 | |
| | ||||||
* | Use a flag to indicate headphone-like output | Chris Robinson | 2021-10-23 | 1 | -2/+1 | |
| | ||||||
* | Properly check the channel count for WASAPI capture | Chris Robinson | 2021-08-23 | 1 | -1/+2 | |
| | ||||||
* | Don't store "OpenAL Soft on " in WASAPI device names | Chris Robinson | 2021-08-22 | 1 | -21/+39 | |
| | | | | It's still prepended for enumeration, just not part of the name in the DevMap. | |||||
* | Avoid 5.1Rear as its own channel configuration | Chris Robinson | 2021-07-30 | 1 | -15/+4 | |
| | | | | | | It messes with 5.1 sources using direct channels, and the surround channels are supposed to map to the side labels. Individual backends can deal with the channel order/label differences, as they already do to a degree. | |||||
* | Update include headers | Chris Robinson | 2021-04-27 | 1 | -3/+3 | |
| | | | | Don't add alc/ to the include paths. | |||||
* | Use the DeviceBase for the backend | Chris Robinson | 2021-04-24 | 1 | -4/+4 | |
| | ||||||
* | Move some more sources to core | Chris Robinson | 2021-04-24 | 1 | -1/+1 | |
| | ||||||
* | Move helpers.cpp to core | Chris Robinson | 2021-04-22 | 1 | -1/+1 | |
| | ||||||
* | Don't activate the WASAPI device when initially opening it | Chris Robinson | 2021-03-17 | 1 | -17/+2 | |
| | ||||||
* | Avoid returning objects with a reference parameter | Chris Robinson | 2021-03-16 | 1 | -13/+13 | |
| | ||||||
* | Check that CoCreateInstance succeeds | Chris Robinson | 2021-03-16 | 1 | -13/+17 | |
| | ||||||
* | Move the ComPtr wrapper to a common header | Chris Robinson | 2021-03-08 | 1 | -63/+1 | |
| | ||||||
* | Allow calling BackendBase::open multiple times on playback devices | Chris Robinson | 2021-03-08 | 1 | -132/+130 | |
| | | | | | | | | | | | It will not be called while the device is running. If the first call succeeds, a subsequent call that happens to fail must leave the existing device state as it was so it can be resumed. This is a rough first pass. It will fail when trying to re-open the same device which can only be opened once (for instance, with direct hardware access, on hardware that doesn't do its own mixing). Some backends won't guarantee the new device is usable until the reset() or start() call. | |||||
* | Make PopCount and CountTrailingZeros more standard-like | Chris Robinson | 2021-01-22 | 1 | -1/+2 | |
| | ||||||
* | Use a standard bitset for bitfield flags | Chris Robinson | 2021-01-22 | 1 | -2/+2 | |
| | ||||||
* | Move alexcpt to core | Chris Robinson | 2020-12-24 | 1 | -1/+0 | |
| | ||||||
* | Avoid AL/ALC types in the backends | Chris Robinson | 2020-12-17 | 1 | -17/+17 | |
| | ||||||
* | Don't use ALC error enums for the backend error code | Chris Robinson | 2020-12-17 | 1 | -7/+11 | |
| | ||||||
* | Don't return an enum from captureSamples | Chris Robinson | 2020-12-17 | 1 | -9/+6 | |
| | | | | It's always no_error | |||||
* | Move logging to core | Chris Robinson | 2020-12-17 | 1 | -1/+1 | |
| | ||||||
* | Use inline functions for popcnt and ctz instead of macros | Chris Robinson | 2020-10-13 | 1 | -1/+1 | |
| | ||||||
* | Be more robust with to-mono channel conversions | Chris Robinson | 2020-10-05 | 1 | -16/+52 | |
| | ||||||
* | Fix a variable name | Chris Robinson | 2020-10-05 | 1 | -53/+53 | |
| | ||||||
* | Round (and clamp) the reftime instead of ceiling it | Chris Robinson | 2020-09-12 | 1 | -3/+3 | |
| | ||||||
* | Avoid repeating string literals | Chris Robinson | 2020-09-11 | 1 | -5/+7 | |
| | ||||||
* | Use an RAII wrapper to manage COM object references | Chris Robinson | 2020-09-05 | 1 | -87/+111 | |
| | ||||||
* | Avoid duplicate WASAPI devices by matching GUIDs | Chris Robinson | 2020-09-04 | 1 | -33/+31 | |
| | ||||||
* | Use a wait predicate instead of a while loop | Chris Robinson | 2020-08-12 | 1 | -2/+1 | |
| | ||||||
* | Change a couple functions into member functions | Chris Robinson | 2020-08-07 | 1 | -6/+6 | |
| | ||||||
* | Set channel labels from WFX channel masks | Chris Robinson | 2020-06-15 | 1 | -13/+11 | |
| |