Comments (5)
Sadly not.
You can infer some of this information by using methods like AudioManager.isBluetoothA2dpOn()
to determine whether a bluetooth speaker/headphones are connected. You can also use AudioManager.setSpeakerphoneOn()
to specifically target the built-in speaker.
from oboe.
Oh and not annoying at all - please ask away :)
from oboe.
Thanks a lot for the information, saved me some time searching for something that can't be found.
I also think I can get a basic functionality with the mentioned methods which is good news.
from oboe.
Would Oboe handle reconfiguring the audio so it works properly over Bluetooth A2DP or do we have to handle that on our implementation? i.e. restarting the audio manager and getting new parameters such as the new sample rate from the speaker?
from oboe.
In future please open a new issue for a new question.
When Oboe is using AAudio (available on API 26+) it will choose the audio device's native sample rate automatically.
When Oboe is using OpenSL ES you'd need to handle this in your own implementation as by default Oboe will use 48kHz as the default sample rate, which may not be the native sample rate of the bluetooth device. You can query which API Oboe is using by calling AudioStream::getAudioApi()
.
The reason for this behaviour is that the AudioManager API is only available in Java so you'd need to pass the JNI environment to Oboe so it could query this API itself. Feel free to open a feature request for this as it is something we have discussed and would implement if there was sufficient developer interest.
from oboe.
Related Issues (20)
- Compile warnings when building Oboe with AAudio
- Build warnings when building external oboe in the framework
- oneplus 6 uses opensles through oboe, there will be no voice with mono channel capture HOT 6
- OboeTester crash when running disconnect test
- Can oboe support custom log printing?
- System screen recorder doesn't capture audio in Oboe sample apps
- Help to resolve crash [libc++_shared.so] abort_message.cpp - abort_message HOT 1
- Crash in AudioStreamAAudio::read HOT 8
- Phone volume buttons can't control the bluetooth with VoiceComm HOT 3
- Help to resolve Samsung devices support 3.5 mm headphones and Type C headphones. HOT 1
- How to set the microphone direction in Oboe similar to audioRecord.setPreferredMicrophoneDirection() HOT 1
- OboeTester: add DataPaths test to catch b/270535408, ch=3 and Effects HOT 1
- Normalized correlation should handle when both sides are zero HOT 1
- Flowgraph call count needs cleanup
- OboeTester automation buffer_bursts not updating BufferSize UI properly
- SampleRateConverter in flowgrap was reading out of bounds on first call
- Unit tests are using deprecated raw pointer, should use shared_ptr
- Will oboe use raw error callback when the client release shared pointer? HOT 3
- Unit tests failing in VerifyFullDuplexStream, callback count off
- OboeTester analyzer crashes with assertion "numSamples <= mMaxSamples" failed HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from oboe.