aboutsummaryrefslogtreecommitdiffstats
path: root/alc/backends/wave.cpp
Commit message (Collapse)AuthorAgeFilesLines
* Remove DEF_NEWDELChris Robinson2023-12-161-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 backendsChris Robinson2023-12-111-18/+17
| | | | Except CoreAudio and Solaris backends
* Avoid casting an integer literalChris Robinson2023-09-221-2/+2
|
* Use a string_view for the backend open methodChris Robinson2023-08-061-7/+7
|
* Move althrd_setname to its own sourceChris Robinson2023-06-011-1/+1
|
* Avoid using al::vector unnecessarilyChris Robinson2023-05-121-2/+2
|
* Use std::byte instead of a custom al::byteChris Robinson2023-05-041-2/+1
|
* clang-tidy cleanups (#800)Rosen Penev2023-01-151-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]>
* Add preliminary support for 7.1.4 output modesChris Robinson2022-11-031-0/+4
| | | | | | | | 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.
* Handle 3D7.1 as a separate channel configurationChris Robinson2022-04-261-0/+2
| | | | | | | 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.
* Avoid using an if_constexpr macroChris Robinson2022-02-221-14/+8
| | | | | It doesn't actually use if constexpr, and compilers are smart enough to optimize. Some functions can use templates instead.
* Remove the last external uses of GetConfigValueChris Robinson2021-10-211-5/+5
|
* Avoid 5.1Rear as its own channel configurationChris Robinson2021-07-301-1/+0
| | | | | | 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 headersChris Robinson2021-04-271-4/+3
| | | | Don't add alc/ to the include paths.
* Use the DeviceBase for the backendChris Robinson2021-04-241-2/+2
|
* Move helpers.cpp to coreChris Robinson2021-04-221-1/+1
|
* Allow calling BackendBase::open multiple times on playback devicesChris Robinson2021-03-081-3/+6
| | | | | | | | | | | 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.
* Use if constexpr when possibleChris Robinson2021-01-221-1/+2
|
* Make the endian test more C++-likeChris Robinson2021-01-211-2/+2
|
* Fix handling paused devices with the wave writer backendChris Robinson2021-01-211-10/+14
|
* Simplify a divisionChris Robinson2021-01-211-1/+1
| | | | | The division opcode typically also generates the remainder, making the result of x%y free with x/y.
* Remove unnecessary includesChris Robinson2020-12-241-2/+0
|
* Move alexcpt to coreChris Robinson2020-12-241-1/+0
|
* Avoid AL/ALC types in the backendsChris Robinson2020-12-171-57/+60
|
* Don't use ALC error enums for the backend error codeChris Robinson2020-12-171-6/+8
|
* Move logging to coreChris Robinson2020-12-171-1/+1
|
* Use a separate structure for buffer storageChris Robinson2020-08-281-2/+2
|
* Change a couple functions into member functionsChris Robinson2020-08-071-3/+3
|
* Move a couple related functions to the backend baseChris Robinson2020-06-121-1/+1
|
* Don't return a bool from the backend start methodChris Robinson2020-04-281-7/+4
|
* Get rid of a redundant enumChris Robinson2020-03-301-3/+3
|
* Return the enumerated device names from the backendChris Robinson2020-03-301-7/+9
| | | | Rather than using an out parameter.
* Remove unnecessary locks now that the mixer doesn't require oneChris Robinson2020-02-261-4/+1
|
* Handle padding between device sample framesChris Robinson2019-12-211-1/+2
| | | | | | | | 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.
* Clean up some exception messages and avoid duplicate log messagesChris Robinson2019-10-081-3/+0
|
* Avoid raw lock/unlock callsChris Robinson2019-10-071-3/+4
|
* Use exceptions for backend open failuresChris Robinson2019-10-071-7/+7
|
* Return and pass more appropriate types for backendsChris Robinson2019-09-151-8/+8
|
* Store the ambisonic order as unsignedChris Robinson2019-09-131-1/+1
|
* Return unsigned values from the FromDevFmt functionsChris Robinson2019-09-131-5/+5
|
* Clean up more implicit conversionsChris Robinson2019-09-131-15/+15
|
* Use al::byte for a couple more buffersChris Robinson2019-08-251-6/+6
|
* Move the wstr converters to a separate headerChris Robinson2019-08-111-0/+1
|
* Move some declarations out of alcmain.hChris Robinson2019-08-051-0/+1
|
* Rename Alc to alcChris Robinson2019-07-281-0/+402