Paul Adenot
40c7634dd9
384kHz ought to be enough for anybody
2024-02-07 17:23:51 +01:00
Paul Adenot
799e775484
Format new changes
2024-01-31 10:51:22 +01:00
Steveice10
d0ffc6d302
audiounit: Resample to match output device hardware sample rate in uncommon cases.
...
In some cases, weird sample rates can cause AudioUnit output
units to misbehave. Instead, use resampling for non-native rates
to make sure this does not happen.
2024-01-31 10:51:22 +01:00
Andreas Pehrson
dd8a91f982
Add an API for muting the input side of a stream
2024-01-15 15:25:40 +01:00
Andreas Pehrson
5a2df9b0aa
Add APIs for input processing
2024-01-15 15:25:40 +01:00
Nikolay Borodin
ffec8ede4c
Checking buffer, buffer_in, buffer_out pointers for non NULL values
2024-01-08 11:31:04 +01:00
Andreas Pehrson
ed2efe22cb
auto_array: protect from various calls when length_ is 0
...
cubeb-coreaudio-rs has hit a case when running its tests on MacOS 12
where it fails the `assert(destination && source);` in `PodCopy` because
it tried to push 0 samples to an auto_array of length 0, as the internal
auto_array buffer had not been allocated yet.
2023-12-12 10:56:31 +01:00
Paul Adenot
54217bca3f
Relax a single test_sanity.cpp assertion when using OpenSL
2023-11-21 11:08:34 +01:00
Paul Adenot
33531e337a
Allow not being able to get the minimum latency in test_callback_ret.cpp and test_logging.cpp, as it's not essential for the test
2023-11-21 11:08:34 +01:00
Paul Adenot
699c44180e
Add static keyword to fix build of tests in unified builds
2023-11-21 11:08:34 +01:00
Paul Adenot
5707d0e447
Fix latency reporting on OpenSL
2023-11-21 11:08:34 +01:00
Paul Adenot
30efcd1cdf
Remove test_deadlock.cpp file, hasn't been compiled since March 2018
...
Removed in 789eaa.
2023-11-10 17:00:19 +01:00
Paul Adenot
2f01da4a8a
Include gtest.h in test/common.h
2023-11-10 15:52:55 +01:00
Paul Adenot
63f69b9986
Include the header directly to use AudioBuffer on macOS in cubeb_ring_array.h
2023-11-10 15:48:07 +01:00
Paul Adenot
001b904409
Non-functional change: Directly include string.h in test/common.h
2023-11-10 15:37:57 +01:00
Paul Adenot
47f9a4733b
Consistently use double in the mixer
...
This fixes a warning: INT32_MAX cannot be represented as a float.
2023-11-10 15:32:03 +01:00
Paul Adenot
28eed05dd5
Non functional change: Fix missing documentation in cubeb.h
2023-11-10 15:32:00 +01:00
Paul Adenot
625213fd9f
Non-functional change: Check tests when checking format
2023-11-10 15:31:57 +01:00
Paul Adenot
687b1e3446
Non-functional change: clang-format tests
2023-11-10 15:31:52 +01:00
Paul Adenot
8b4721e51e
Non functional change: fix unified compilation issue -- make callbacks static
2023-11-10 15:31:45 +01:00
Paul Adenot
6f0f147148
clang-format
2023-11-10 11:31:35 +01:00
Paul Adenot
b32ab34399
Reset logging thread ID when starting a new stream to allow debugging comfortably
2023-11-10 11:31:35 +01:00
Paul Adenot
2dedf7b191
AAudio: set the callback size to the latency passed in, increase internal buffer size to be 3 times the burst size
2023-11-10 11:31:35 +01:00
Paul Adenot
eb1293382e
Add and modify a few logging statements
2023-11-10 11:31:35 +01:00
Paul Adenot
b040f89681
AAudio: when finding that an input device has been disconnected, reinitialize the duplex stream
2023-11-10 11:31:35 +01:00
Paul Adenot
4b4d18a70f
AAudio: remove unused header
2023-11-10 11:31:35 +01:00
Paul Adenot
ce3645e65c
Reset thread id when a new stream is created, in OpenSL backend
...
This is not 100% correct, but prevents crashing on an assert in the very
common case of opening multiple streams back to back with logging
enabled.
2023-11-10 11:31:35 +01:00
Paul Adenot
72ded59b4d
Fix output buffer conversion: handle differing channel count between input and output
2023-11-10 11:31:35 +01:00
aeiouaeiouaeiouaeiouaeiouaeiou
a0e8b8e49a
CI: update actions/checkout to v4
2023-11-10 23:12:31 +13:00
Paul Adenot
d07ea5aa66
Fix mistake break audio input on OpenSL ES
2023-11-08 14:42:49 +01:00
Andreas Pehrson
785a3ca155
In test_duplex loop back all input frames
...
The break removed here makes sense for input-only, where breaking has no
side effects. In a loopback duplex case like here it makes the callback
exit early, before having written all frames. This can be caused by
clipping on the input side (as observed on MacOS) and creates a
distortion that sounds terrible.
2023-11-07 12:04:32 +13:00
Paul Adenot
5f0d17373b
AAudio: ensure input buffer is large enough when reading input data
2023-10-26 11:43:35 +02:00
Paul Adenot
75d5e6a040
Return an error if failing to open a recorder and it's not a sample-rate not supported issue
2023-10-24 11:11:47 +02:00
Paul Adenot
f1bfefbbd4
Actually use the return value in initialize_with_format callback call.
2023-09-26 15:23:21 +13:00
Paul Adenot
f9c118ddc0
Use uint64_t for the samplerate in opensl_stream_get_position to avoid overflow
2023-09-15 16:14:22 +02:00
Paul Adenot
3f86a06fce
Generate compile_commands.json while building
2023-08-25 20:09:58 +02:00
Paul Adenot
46f10c2eea
Handle input side
2023-08-25 20:09:58 +02:00
Paul Adenot
ed468c2a47
Refactor conversion and format setting logic
2023-08-25 20:09:58 +02:00
Paul Adenot
cd4effa91a
OpenSLES and related file: clang-format
2023-08-25 20:09:58 +02:00
Paul Adenot
510266b364
OpenSLES: clang-format
2023-08-25 20:09:58 +02:00
Paul Adenot
4dfcbd32fd
OpenSLES: Fix most clang-tidy warnings
2023-08-25 20:09:58 +02:00
Paul Adenot
714ac6e8db
OpenSLES: when floats IO aren't supported, perform a conversion
2023-08-25 20:09:58 +02:00
Paul Adenot
13872fb5f1
OpenSLES: use cubeb logging facilities
2023-08-25 20:09:58 +02:00
Paul Adenot
33ade008b5
OpenSLES: compile as C++
2023-08-25 20:09:58 +02:00
Paul Adenot
ac8474a592
AAudio: Don't unlock a mutex owned by a lock_guard
2023-08-03 14:13:06 +02:00
Paul Adenot
b9af56cee7
Don't attempt to use an unavailable cubeb_stream in aaudio_stream_init.
2023-07-31 11:50:04 +02:00
Paul Adenot
41344b3abb
Update googletest to current master
...
This is what is recommended by upstream.
2023-07-26 14:02:22 +02:00
Paul Adenot
af4769f18a
Run clang-format
2023-07-26 14:02:22 +02:00
Paul Adenot
cfd7bf22d6
Compile in C++17, like Gecko
2023-07-26 14:02:22 +02:00
Paul Adenot
31d6a2b0f2
AAudio: Fix log level when stopping a stream
2023-07-26 14:02:22 +02:00