aboutsummaryrefslogtreecommitdiffstats
path: root/alc/backends/oboe.cpp
Commit message (Collapse)AuthorAgeFilesLines
* Set Oboe usage to GameChris Robinson2023-12-181-0/+1
| | | | | OpenAL isn't only for games, but this seems to be the setting for interactive low-latency audio.
* Mostly finish cleanup for backendsChris Robinson2023-12-111-4/+4
| | | | Except CoreAudio and Solaris backends
* Fix some clang-tidy warningsChris Robinson2023-12-081-2/+2
|
* Use a string_view for the backend open methodChris Robinson2023-08-061-12/+12
|
* Don't throw when failing to stop Oboe captureChris Robinson2023-05-301-2/+1
|
* Don't throw when failing to stop Oboe playbackChris Robinson2023-05-251-2/+1
|
* Improve oboe backend (#848)Deal(一线灵)2023-05-251-1/+9
| | | | | | | * Improve oboe backend This change should handle handphone call event properly and fix crash at stop (because the mStream was disconnected by system when handphone call income) * Invoke mDevice->handleDisconnect when AAudio stream disconnected
* Clean up some more includesChris Robinson2023-05-121-0/+1
|
* Use std::byte instead of a custom al::byteChris Robinson2023-05-041-2/+2
|
* Recognize I24 and I32 formats from OboeChris Robinson2023-03-151-1/+15
|
* Allow Oboe to resample when requesting a sample rateChris Robinson2023-03-151-0/+3
|
* Add preliminary support for 7.1.4 output modesChris Robinson2022-11-031-0/+1
| | | | | | | | 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.
* Use a ringbuffer for Oboe captureChris Robinson2022-05-281-66/+23
|
* Handle 3D7.1 as a separate channel configurationChris Robinson2022-04-261-0/+1
| | | | | | | 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.
* Keep track of uncaptured samples with the Oboe backendChris Robinson2022-04-061-8/+41
| | | | | Stopping Oboe capture drops uncaptured samples, whereas OpenAL keeps them. Also make sure the reported available count doesn't go backwards without reading.
* Avoid 5.1Rear as its own channel configurationChris Robinson2021-07-301-30/+6
| | | | | | 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.
* Remove a redundant buffer clearChris Robinson2021-07-241-11/+0
|
* Partially implement an extension to hold sources on disconnectChris Robinson2021-04-261-1/+3
| | | | | | | | 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.
* Use the DeviceBase for the backendChris Robinson2021-04-241-3/+3
|
* Allow calling BackendBase::open multiple times on playback devicesChris Robinson2021-03-081-1/+2
| | | | | | | | | | | 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.
* Stop the Oboe recording stream when recording is stoppedChris Robinson2021-02-021-2/+2
| | | | Hopefully Oboe will retain any unread samples and let them be read.
* Implement Oboe captureChris Robinson2021-01-311-4/+135
|
* Set the oboe stream buffer sizeChris Robinson2021-01-311-0/+2
|
* Use a standard bitset for bitfield flagsChris Robinson2021-01-221-3/+3
|
* Avoid AL/ALC types in the backendsChris Robinson2020-12-171-2/+2
|
* Don't use ALC error enums for the backend error codeChris Robinson2020-12-171-9/+10
|
* Move logging to coreChris Robinson2020-12-171-1/+1
|
* Change a couple functions into member functionsChris Robinson2020-08-071-1/+1
|
* 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-4/+3
|
* Set the device name in the Oboe backendChris Robinson2020-04-201-0/+2
|
* Trace the opened Oboe stream propertiesChris Robinson2020-04-191-6/+6
|
* More gracefully relax the Oboe format requestChris Robinson2020-04-191-21/+23
|
* Try to be more robust with the Oboe formatChris Robinson2020-04-181-8/+45
|
* Initial implementation for Oboe-based playbackChris Robinson2020-04-181-4/+185
|
* Add an Oboe backend stubChris Robinson2020-04-181-0/+28