Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | Add an extension to request stereo UHJ output | Chris Robinson | 2021-11-08 | 1 | -8/+32 |
| | |||||
* | Use a tri-state optional for the stereo output mode | Chris Robinson | 2021-10-24 | 1 | -15/+26 |
| | |||||
* | Pass a parameter to aluInitRenderer to specify UHJ output | Chris Robinson | 2021-10-23 | 1 | -1/+13 |
| | |||||
* | Use a flag to indicate headphone-like output | Chris Robinson | 2021-10-23 | 1 | -0/+14 |
| | |||||
* | Reduce the JACK and ALSA backend priority | Chris Robinson | 2021-08-14 | 1 | -6/+6 |
| | | | | | | | | | | | | | With the increased use of PipeWire, which offers JACK compatibility, the JACK backend has a higher potential to be auto-selected for users. However, due to the backend's inability to auto-configure output to the device format, this creates a less optimal out-of-the-box experience. Unfortunately this also means the JACK backend won't be used automatically when a real JACK server is running along with PulseAudio. While not ideal, this is probably the better of the two options, to have the user explicitly configure the library to use JACK when they really want to use it, instead of unwantingly selecting JACK because of PipeWire. | ||||
* | Implement PipeWire playback | Chris Robinson | 2021-08-06 | 1 | -1/+1 |
| | | | | | Not yet an auto-selected backend. This doesn't yet support enumeration, or matching the AL device format to the output. | ||||
* | Start a PipeWire backend | Chris Robinson | 2021-08-02 | 1 | -0/+6 |
| | | | | It's just a copy of the Null backend to start with | ||||
* | Use an optional bool instead of two tri-state enums | Chris Robinson | 2021-07-31 | 1 | -9/+9 |
| | |||||
* | Avoid 5.1Rear as its own channel configuration | Chris Robinson | 2021-07-30 | 1 | -9/+2 |
| | | | | | | 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. | ||||
* | Add wrapper methods for getting device config values | Chris Robinson | 2021-06-23 | 1 | -23/+19 |
| | |||||
* | Allow querying ALC_ALL_DEVICES_SPECIFIER from loopback devices | Chris Robinson | 2021-06-22 | 1 | -1/+3 |
| | | | | | They only return the default/driver name, since loopback devices don't have a canonical name. | ||||
* | Rename alcontext.h and move some functions to context.cpp | Chris Robinson | 2021-04-27 | 1 | -431/+57 |
| | |||||
* | Move some functions to a more appropriate place | Chris Robinson | 2021-04-27 | 1 | -49/+0 |
| | |||||
* | Rename alcmain.h to device.h | Chris Robinson | 2021-04-27 | 1 | -1/+1 |
| | |||||
* | Move BufferStorage and Voice to core | Chris Robinson | 2021-04-27 | 1 | -1/+1 |
| | |||||
* | Move ContextBase and VoiceChange to core | Chris Robinson | 2021-04-27 | 1 | -1/+1 |
| | |||||
* | Partially implement an extension to hold sources on disconnect | Chris Robinson | 2021-04-26 | 1 | -0/+5 |
| | | | | | | | | Rather than stopping voices/sources when the device becomes disconnected, the context can be set to leave them alone. As a consequence, their state will remain as playing and they'll keep their last known sample offset indefinately. For applications mindful of this behavior, it will allow resetting or reopening the device to reconnect and automatically resume where it left off. | ||||
* | Move bformatdec to core | Chris Robinson | 2021-04-25 | 1 | -2/+2 |
| | |||||
* | Move async_event.h to core | Chris Robinson | 2021-04-25 | 1 | -1/+1 |
| | |||||
* | More include cleanup | Chris Robinson | 2021-04-24 | 1 | -1/+1 |
| | |||||
* | Don't bother with al string types | Chris Robinson | 2021-04-24 | 1 | -3/+3 |
| | |||||
* | Move the DeviceBase declaraction to core | Chris Robinson | 2021-04-24 | 1 | -11/+5 |
| | |||||
* | Create a base the ALCdevice and ALCcontext structs | Chris Robinson | 2021-04-24 | 1 | -43/+56 |
| | | | | | A base that contains the API-agnostic data, with ALCdevice and ALCcontext being for AL-specific data. | ||||
* | Move hrtf.cpp/h to core | Chris Robinson | 2021-04-22 | 1 | -1/+1 |
| | |||||
* | Avoid using config methods in hrtf.cpp | Chris Robinson | 2021-04-22 | 1 | -9/+22 |
| | |||||
* | Move helpers.cpp to core | Chris Robinson | 2021-04-22 | 1 | -1/+1 |
| | |||||
* | Move declarations to a more appropriate header | Chris Robinson | 2021-04-22 | 1 | -6/+0 |
| | |||||
* | Print an error when starting the backend fails | Chris Robinson | 2021-04-20 | 1 | -0/+4 |
| | |||||
* | Lower RLIMIT_RTTIME to allow RTKit to give RT priority | Chris Robinson | 2021-04-20 | 1 | -0/+5 |
| | |||||
* | Make an inverted atomic flag type and use it | Chris Robinson | 2021-04-15 | 1 | -6/+6 |
| | | | | | | | | The inverted atomic flag replaces test_and_set+clear with test_and_clear+set, essentially inverting the flag status. This makes more logical sense for flagging dirty state, which is less confusing than flagging clean state. The one caveat is ATOMIC_FLAG_INIT (or default construction in C++20) initializes the state to true rather than false. | ||||
* | Log the reset exception error | Chris Robinson | 2021-04-07 | 1 | -0/+1 |
| | |||||
* | Advertise the in-progress AL_SOFT_UHJ extension | Chris Robinson | 2021-04-01 | 1 | -1/+12 |
| | |||||
* | Rename Uhj2Encoder to UhjEncoder | Chris Robinson | 2021-04-01 | 1 | -3/+3 |
| | |||||
* | Combine some duplicate code | Chris Robinson | 2021-03-30 | 1 | -48/+1 |
| | |||||
* | Move the UHJ phase shifter to a common header | Chris Robinson | 2021-03-28 | 1 | -1/+1 |
| | |||||
* | Load/convert samples from all channels at once for mixing | Chris Robinson | 2021-03-19 | 1 | -3/+5 |
| | | | | | | | This uses a bit more memory (each voice needs to hold buffers for the deinterleaved samples of each channel, instead of just one buffer for the current channel being mixed on the device), but it will allow for handling formats that need or prefer their channels decoded together. | ||||
* | Avoid shadowing variable names | Chris Robinson | 2021-03-11 | 1 | -6/+6 |
| | |||||
* | Declare the attribute counts closer to where they are | Chris Robinson | 2021-03-10 | 1 | -25/+30 |
| | |||||
* | Prevent querying the capture device name from a playback device | Chris Robinson | 2021-03-09 | 1 | -3/+16 |
| | | | | And vice-versa. | ||||
* | Don't verify and hold a device reference in alcRenderSamplesSOFT | Chris Robinson | 2021-03-09 | 1 | -5/+4 |
| | | | | | | | | | | | | NULL devices are still checked, but invalid non-NULL device handles will invoke undefined behavior, as will attempting to close the device while the function is being executed (modifying the device state while the function is being called was inadvertently already UB, and will now remain so). This change is solely so alcRenderSamplesSOFT can be used in a buffer callback, and other places that need functions to be real-time safe. The verification requires locking to access the device list, which isn't allowed in a real-time callback. | ||||
* | Add a function/extension to reopen a playback device | Chris Robinson | 2021-03-09 | 1 | -25/+102 |
| | |||||
* | Export EFX functions from the router | Chris Robinson | 2021-01-27 | 1 | -0/+11 |
| | |||||
* | Ignore SI-style configuration strings for device names | Chris Robinson | 2021-01-27 | 1 | -0/+5 |
| | |||||
* | Store buffer info in the queue entry | Chris Robinson | 2021-01-24 | 1 | -2/+7 |
| | |||||
* | Make PopCount and CountTrailingZeros more standard-like | Chris Robinson | 2021-01-22 | 1 | -7/+8 |
| | |||||
* | Use a standard bitset for bitfield flags | Chris Robinson | 2021-01-22 | 1 | -39/+41 |
| | |||||
* | Avoid global constexpr arrays | Chris Robinson | 2021-01-21 | 1 | -2/+2 |
| | |||||
* | Move cpu_caps and fpu_ctrl to core | Chris Robinson | 2020-12-31 | 1 | -2/+2 |
| | |||||
* | Combine multiple functions into one | Chris Robinson | 2020-12-28 | 1 | -8/+2 |
| | |||||
* | Use a unique_ptr to hold DistanceComp data | Chris Robinson | 2020-12-27 | 1 | -1/+1 |
| |