Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | Remove DEF_NEWDEL | Chris Robinson | 2023-12-16 | 1 | -2/+0 |
| | | | | | C++17 provides alignment-aware allocators for us, so we don't need to use our own to make sure classes/structs are properly aligned. | ||||
* | Mostly finish cleanup for backends | Chris Robinson | 2023-12-11 | 1 | -1/+2 |
| | | | | Except CoreAudio and Solaris backends | ||||
* | Clean up some more clang-tidy warnings | Chris Robinson | 2023-12-08 | 1 | -3/+3 |
| | |||||
* | Replace a global function with a member function | Chris Robinson | 2023-12-03 | 1 | -1/+1 |
| | |||||
* | Use a string_view for the backend open method | Chris Robinson | 2023-08-06 | 1 | -9/+9 |
| | |||||
* | Rename threads.cpp/h to alsem.cpp/h | Chris Robinson | 2023-06-01 | 1 | -1/+1 |
| | |||||
* | Move althrd_setname to its own source | Chris Robinson | 2023-06-01 | 1 | -0/+1 |
| | |||||
* | Avoid using al::vector unnecessarily | Chris Robinson | 2023-05-12 | 1 | -2/+3 |
| | |||||
* | Clean up some more includes | Chris Robinson | 2023-05-12 | 1 | -2/+2 |
| | |||||
* | Remove custom stuff for standard | Chris Robinson | 2023-05-04 | 1 | -1/+1 |
| | |||||
* | Make and use a bit_cast function | Chris Robinson | 2023-05-04 | 1 | -2/+3 |
| | | | | Instead of reinterpret_casting between incompatible types | ||||
* | Use macros for the likely/unlikely attributes | Chris Robinson | 2023-03-01 | 1 | -2/+2 |
| | | | | | The syntax parser for GCC 8 (and earlier?) fails when these attributes are in certain places. | ||||
* | clang-tidy cleanups (#800) | Rosen Penev | 2023-01-15 | 1 | -1/+1 |
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * clang-tidy: use bool literals Found with modernize-use-bool-literals Signed-off-by: Rosen Penev <[email protected]> * clang-tidy: replace std::bind with lambdas Found with modernize-avoid-bind Signed-off-by: Rosen Penev <[email protected]> * clang-tidy: use data() instead of pointer stuff Found with readability-container-data-pointe Signed-off-by: Rosen Penev <[email protected]> * clang-tidy: use empty() Found with readability-container-size-empty Signed-off-by: Rosen Penev <[email protected]> * clang-tidy: remove static in anon namespace Found with readability-static-definition-in-anonymous-namespace Signed-off-by: Rosen Penev <[email protected]> * clang-tidy: remove const return Found with readability-const-return-type Signed-off-by: Rosen Penev <[email protected]> Signed-off-by: Rosen Penev <[email protected]> | ||||
* | Don't explicitly try to spawn servers by default | Chris Robinson | 2023-01-14 | 1 | -1/+1 |
| | |||||
* | Avoid extraneous temporaries when filling vectors | Chris Robinson | 2022-12-15 | 1 | -4/+9 |
| | |||||
* | Avoid using a macro to wrap standard attributes | Chris Robinson | 2022-12-06 | 1 | -2/+2 |
| | |||||
* | Avoid LIKELY/UNLIKELY macros | Chris Robinson | 2022-12-05 | 1 | -2/+2 |
| | |||||
* | Simplify connecting JACK ports | Chris Robinson | 2021-07-25 | 1 | -13/+11 |
| | |||||
* | Use a unique_ptr to auto-free the jack ports list | Chris Robinson | 2021-06-12 | 1 | -20/+24 |
| | |||||
* | Set the JACK output ports as terminal | Chris Robinson | 2021-06-12 | 1 | -1/+1 |
| | | | | Since there are no input ports associated with the output. | ||||
* | Give a name to a lambda | Chris Robinson | 2021-06-11 | 1 | -7/+7 |
| | |||||
* | Improve name duplication handling with JACK | Chris Robinson | 2021-06-10 | 1 | -26/+63 |
| | | | | | If a custom device pattern matches an existing one, its name will be replaced. A separate loop is used to check and handle duplicate display names. | ||||
* | Add an option to mix directly in the JACK callback | Chris Robinson | 2021-06-08 | 1 | -31/+80 |
| | |||||
* | Update include headers | Chris Robinson | 2021-04-27 | 1 | -4/+4 |
| | | | | Don't add alc/ to the include paths. | ||||
* | Use the DeviceBase for the backend | Chris Robinson | 2021-04-24 | 1 | -2/+2 |
| | |||||
* | Move helpers.cpp to core | Chris Robinson | 2021-04-22 | 1 | -1/+1 |
| | |||||
* | Allow calling BackendBase::open multiple times on playback devices | Chris Robinson | 2021-03-08 | 1 | -15/+16 |
| | | | | | | | | | | | 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. | ||||
* | Add enumeration to the JACK backend | Chris Robinson | 2021-02-13 | 1 | -35/+84 |
| | | | | | | | | Port names seem to be structured as <device_name:channel_name> or <app_name:channel_name>. I'm not sure if this is always the case, but it seems some other apps expect something like this. Also fix the port selection to exclude MIDI ports and allow non-physical ports. | ||||
* | Remove an unnecessary semicolon | Chris Robinson | 2021-01-22 | 1 | -1/+1 |
| | |||||
* | 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 | -10/+10 |
| | |||||
* | Don't use ALC error enums for the backend error code | Chris Robinson | 2020-12-17 | 1 | -7/+9 |
| | |||||
* | Move logging to core | Chris Robinson | 2020-12-17 | 1 | -1/+1 |
| | |||||
* | Allow JACK to enumerate custom devices | Chris Robinson | 2020-09-10 | 1 | -4/+75 |
| | | | | Each device being associated with a port name pattern it'll try connecting to. | ||||
* | Change a couple functions into member functions | Chris Robinson | 2020-08-07 | 1 | -2/+2 |
| | |||||
* | Add an option to auto-connect JACK ports | Chris Robinson | 2020-08-05 | 1 | -11/+14 |
| | |||||
* | Use std::array instead of some C-style arrays | Chris Robinson | 2020-08-05 | 1 | -23/+22 |
| | |||||
* | Move a couple related functions to the backend base | Chris Robinson | 2020-06-12 | 1 | -1/+1 |
| | |||||
* | Don't return a bool from the backend start method | Chris Robinson | 2020-04-28 | 1 | -15/+8 |
| | |||||
* | Use standard attribute declarations | Chris Robinson | 2020-04-13 | 1 | -0/+1 |
| | |||||
* | Clean up some more unnecessary uses of AL types | Chris Robinson | 2020-04-08 | 1 | -1/+1 |
| | |||||
* | Get rid of a redundant enum | Chris Robinson | 2020-03-30 | 1 | -3/+3 |
| | |||||
* | Return the enumerated device names from the backend | Chris Robinson | 2020-03-30 | 1 | -8/+9 |
| | | | | Rather than using an out parameter. | ||||
* | Remove the mutex from the backend base | Chris Robinson | 2020-03-29 | 1 | -2/+4 |
| | |||||
* | Avoid AL[C]boolean for internal use | Chris Robinson | 2020-03-28 | 1 | -5/+5 |
| | |||||
* | Remove unnecessary locks now that the mixer doesn't require one | Chris Robinson | 2020-02-26 | 1 | -4/+2 |
| | |||||
* | Fix JACK process callback handling | Chris Robinson | 2020-01-12 | 1 | -50/+48 |
| | | | | | | The callback apparently can't be set after activation, but we can't allocate the ring buffer until after activation when the callback is already getting called. An ugly flag it is, then, I guess. | ||||
* | Don't allocate the ring buffer for JACK before activation | Chris Robinson | 2020-01-11 | 1 | -32/+20 |
| | | | | | | | | | | | | | | It seems the JACK server can send buffer size change events during device reset and wait on it, which causes a failure since the change event can't be processed during a reset. It's otherwise impossible to safely disable the change event callback during a reset since the lock is already held and the callback can be waiting to acquire it. The only guarantee we seem to have is the event callback won't be invoked after jack_activate succeeds. So instead, the buffer size can be queried after jack_activate and the ring buffer allocated then, instead of using an event callback. This does mean the buffer size can change with a start() call, but it's better than a failure to start. | ||||
* | Make CreateRingBuffer a static RingBuffer method | Chris Robinson | 2020-01-10 | 1 | -2/+2 |
| | |||||
* | Handle padding between device sample frames | Chris Robinson | 2019-12-21 | 1 | -2/+4 |
| | | | | | | | | The padding must be constant and sample type aligned (e.g. some fixed multiple of two bytes between the start of two consecutive frames for 16-bit output). The intent is to always have the ability for stereo output with WASAPI even if the device has some other unsupported configuration, as long as front-left and front-right exist. |