Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | Remove void from empty parameter lists | Chris Robinson | 2023-12-12 | 3 | -15/+21 |
| | | | | Also convert some functions to trailing return types and remove (void) casts. | ||||
* | Make some global and static member variables inline | Chris Robinson | 2023-09-11 | 3 | -24/+5 |
| | | | | | This also seems to work around the problematic MinGW code generation, so the indirection to access it can be removed. | ||||
* | Fix a type conversion warning | Chris Robinson | 2023-06-01 | 1 | -2/+1 |
| | |||||
* | Improve wasapi backend UWP support (#853) | Deal(一线灵) | 2023-05-31 | 1 | -2/+2 |
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * Improve wasapi, support uwp build * Fix compile errors * [UWP] Support ReadALConfig from app roaming * [UWP] Post disconnect event when default device changed * [UWP] Fix appveyor ci * [WIN32] Default device change notification support * Fix warnings * Add event to notify the app when the default device changes - Event type: AL_EVENT_TYPE_DEFAULT_DEVICE_CHANGED_SOFT=0x19A7 - Event callback parameters: void _onALSoftEvent(ALenum eventType, ALuint object, // dataFlow: 0(render), 1(capture) ALuint param, // 0 ALsizei length, // 0 const ALchar* message, // Default device changed:<deviceId> void* userParam); * Fix warnings * Fire default device changed event in mixerProc thread * Fix compile warning * [UWP] Improve cmake * Revert changes * Notify default device change by system event callback * Revert insignificant change * Remove duplicate call | ||||
* | Make the router API functions noexcept | Chris Robinson | 2023-05-22 | 2 | -28/+28 |
| | |||||
* | Fix router not loading on Creative's hardware OpenAL (#773) | Felipe | 2022-11-16 | 1 | -12/+22 |
| | | | | | | | | | | | | | | | According to the programming guide and the specification, those functions may be used by extensions. However, Creative's hardware OpenAL chose to not implement stub functions for those that they do not use. Currently they use only alBufferi for X-RAM related functions. Other implementations, such as OpenAL Soft and wrap_oal implement stub functions for those methods therefore they work. This commit turns those functions optional, just like they were in the old FOSS router. Consumers of the router will receive a nullptr as expected for not implemented methods if they load them using alGetProcAddress, which I believe is the correct way to do so. That is, the context must be current before loading al* functions. | ||||
* | Add EFX functions back to the router | Chris Robinson | 2022-06-18 | 4 | -75/+237 |
| | | | | | They're necessary for proper exports whem building the router. And if there's ever a spec update that standardizes them, they'll be needed anyway. | ||||
* | Forward the DriverIface constructor's name | Chris Robinson | 2022-02-26 | 1 | -4/+6 |
| | |||||
* | Don't handle EFX functions in the router | Chris Robinson | 2022-02-26 | 4 | -140/+3 |
| | | | | | | Creative's wrapper driver doesn't handle them through alcGetProcAddress, at least with a null device. For this to work properly, they'd have to be loaded per-context instead of per-driver. | ||||
* | Work around a MinGW thread_local bug | Chris Robinson | 2021-12-20 | 4 | -15/+31 |
| | | | | | | | | | | MinGW-w64 generates bad code when accessing extern thread_local objects. Wrapper functions are used to ensure it only accesses them from the same place they're defined. This unfortunately adds a bit of overhead for what should be a relatively simple thing. These functions are inlined for non-MinGW targets, avoiding the overhead on non-affected targets. | ||||
* | Export EFX functions from the router | Chris Robinson | 2021-01-27 | 4 | -1/+141 |
| | |||||
* | Use a recursive_mutex for the router enumeration lock | Chris Robinson | 2020-09-05 | 1 | -38/+34 |
| | |||||
* | Fix up some more uses of [AL[C]]void | Chris Robinson | 2020-04-28 | 3 | -15/+15 |
| | |||||
* | Silence some warnings from GCC in the router | Chris Robinson | 2019-10-01 | 1 | -4/+4 |
| | |||||
* | Use al::getenv to get the router env vars | Chris Robinson | 2019-10-01 | 1 | -42/+40 |
| | |||||
* | Cleanup some router warnings | Chris Robinson | 2019-09-20 | 1 | -19/+19 |
| | |||||
* | Add and use custom string types and functions | Chris Robinson | 2019-09-16 | 1 | -1/+2 |
| | |||||
* | Remove the UNUSED macro | Chris Robinson | 2019-07-28 | 2 | -13/+1 |
| | |||||
* | Fix an MSVC warning | Chris Robinson | 2018-12-12 | 1 | -1/+1 |
| | |||||
* | Simplify some binary search lookups | Chris Robinson | 2018-11-26 | 1 | -69/+27 |
| | |||||
* | Clean up the DriverIface in its destructor | Chris Robinson | 2018-10-30 | 2 | -10/+13 |
| | |||||
* | Add a missing include for array | Chris Robinson | 2018-10-30 | 1 | -0/+1 |
| | |||||
* | Remove an unnecessary include | Chris Robinson | 2018-10-30 | 1 | -1/+0 |
| | |||||
* | Clean up the router's PtrIntMap | Chris Robinson | 2018-10-30 | 3 | -137/+96 |
| | |||||
* | Use std::array instead of raw arrays | Chris Robinson | 2018-10-30 | 1 | -25/+19 |
| | |||||
* | Use std::wstring in place of some fixed WCHAR arrays | Chris Robinson | 2018-10-30 | 2 | -114/+114 |
| | |||||
* | Use std::vector instead of custom dynamic arrays | Chris Robinson | 2018-10-30 | 3 | -149/+123 |
| | |||||
* | Use C++ atomics and mutexes in the router | Chris Robinson | 2018-10-30 | 4 | -99/+86 |
| | |||||
* | Convert the router to C++ | Chris Robinson | 2018-10-30 | 3 | -93/+100 |
| | |||||
* | Add extern "C" for router.h | Chris Robinson | 2018-10-30 | 1 | -0/+8 |
| | |||||
* | Simplify some statements | Filip Gawin | 2018-10-29 | 1 | -3/+3 |
| | |||||
* | Avoid duplicate path searches in the router | Chris Robinson | 2018-03-21 | 1 | -18/+39 |
| | | | | | And avoid inadvertently increasing the priority of the system path over the executable's path, or either of them over the current working directory. | ||||
* | Add methods to clean up althrd and altss data | Chris Robinson | 2018-03-10 | 1 | -0/+4 |
| | |||||
* | Use a typedef to declare extern atomic variables | Chris Robinson | 2017-10-07 | 2 | -2/+3 |
| | | | | | Some systems use anonymous structs for atomic storage, and extern declarations need to have the same type as their non-extern definition. | ||||
* | Don't trace for every GetDriverIndexForName call | Chris Robinson | 2017-07-11 | 1 | -4/+6 |
| | |||||
* | Trace a version for the router | Chris Robinson | 2017-07-11 | 1 | -0/+3 |
| | |||||
* | Support ALC_EXT_thread_local_context in the router | Chris Robinson | 2017-07-07 | 1 | -1/+5 |
| | | | | | Note that a given context's device must also support the extension to work. The router's support simply lets a driver's capabilities through. | ||||
* | Add methods for thread-local contexts to the router | Chris Robinson | 2017-07-07 | 4 | -12/+110 |
| | |||||
* | Revert "Try all drivers for an unknown device name" | Chris Robinson | 2017-07-05 | 1 | -14/+10 |
| | | | | This reverts commit dadf7a4cf2bb008fc9e20251f6e8895c0f5bf0d4. | ||||
* | Try all drivers for an unknown device name | Chris Robinson | 2017-07-05 | 1 | -10/+14 |
| | |||||
* | Trace if a driver was found for a device name | Chris Robinson | 2017-07-05 | 1 | -0/+4 |
| | |||||
* | Open a device only when a driver index is found | Chris Robinson | 2017-07-03 | 1 | -14/+18 |
| | |||||
* | Flush the log file after writing | Chris Robinson | 2017-07-01 | 1 | -0/+9 |
| | |||||
* | Use a weaker memory order for the current context iface | Chris Robinson | 2017-07-01 | 1 | -11/+11 |
| | |||||
* | Initialize ALC resources in the file they're used in | Chris Robinson | 2017-07-01 | 3 | -10/+15 |
| | |||||
* | Use the al alloc functions instead of standard | Chris Robinson | 2017-07-01 | 2 | -12/+14 |
| | |||||
* | Add tracing capabilities to the router | Chris Robinson | 2017-06-30 | 3 | -4/+74 |
| | |||||
* | Add special handling for alGerError in the router | Chris Robinson | 2017-06-30 | 1 | -4/+11 |
| | |||||
* | Clear initial ALC version vars before querying it | Chris Robinson | 2017-06-29 | 1 | -1/+1 |
| | |||||
* | Don't assume the first driver has the default device | Chris Robinson | 2017-06-29 | 1 | -2/+47 |
| |