aboutsummaryrefslogtreecommitdiffstats
path: root/alc/backends/oboe.cpp
Commit message (Collapse)AuthorAgeFilesLines
* 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