Questions tagged [oboe]

Oboe is a C++ library for creating real-time audio apps on Android.

Oboe is a C++ library for creating real-time audio apps on Android. It uses AAudio on Android API 27 and above, falling back to OpenSL ES on older devices.

The purpose of Oboe is to provide a simple, easy to use API for developers to build low latency, real-time audio apps on Android. It's open source and maintained by Google engineers.

This tag should be used for all questions relating to Oboe, although please check the FAQ before posting.

84 questions
2
votes
1 answer

How to get Audio Data form Oboe at fixed time intervals

I am working on synchronizing audio streams from different audio devices Is there a way to get audio data burst on android after fixed time intervals. for example after every 40 ms
2
votes
2 answers

Oboe Systrace are non full buffers considered as underruns or not?

I am using oboe library to make a music app. There I produce music by writing PCM float values to the given pointer. I rarely have underruns which I can hearwhich. I also verify this with the following oboe APIs: managedStream->getXRunCount(); The…
cs guy
  • 926
  • 2
  • 13
  • 33
2
votes
0 answers

What is thread unsafe about AudioStream::getTimestamp?

The Oboe documentation says that some functions are thread-unsafe and are recommended to be protected with a mutex. https://github.com/google/oboe/blob/master/docs/FullGuide.md#thread-safety. getTimestamp is a getter. Can you clarify what exactly is…
xaviersjs
  • 1,579
  • 1
  • 15
  • 25
2
votes
0 answers

Is synchronous (high performance) audio playback in Flutter possible/realistic?

Similar question's Using AssetManager class from Android NDK in a Flutter app and Accessing assets from C++ plugin through Flutter have been asked and rather than asking for a technical answer I'm asking for guidance. (Also this is my first ever…
dhcracchiolo
  • 171
  • 2
  • 4
2
votes
0 answers

Android, C++: How to convert audio sample rate using oboe's resampler

I am using oboe to play back sound files on Android. I have both 44.1kHz and 48kHz files which I want to be able to play back on the same audio stream, therefore I need to resample. Decoding and playing the files works fine, but since I have two…
michpohl
  • 852
  • 8
  • 30
2
votes
1 answer

error: undefined reference to 'oboe::AudioStreamBuilder::openStream(oboe::AudioStream**)'

I'm trying to use Google Oboe from my Android NDK application. When I try to use oboe::AudioStreamBuilder from native-lib.cpp all is working fine. But when I try to use oboe::AudioStreamBuilder from a class then I get the error message "error:…
KotlinIsland
  • 799
  • 1
  • 6
  • 25
2
votes
1 answer

Accessing assets from C++ plugin through Flutter

I'm trying to use Google Oboe for a 3D audio processing app due to it's low latency. The app will have a C++ backend, which does the processing, and the frontend is done with Flutter. I'm running a couple of tests to see if it'll work but I'm having…
Facundo Farall
  • 500
  • 6
  • 18
2
votes
1 answer

How do I compile the Oboe library sample apps?

I am trying to compile the LiveEffects sample app in Google's oboe library: https://github.com/google/oboe/tree/master/samples/LiveEffect I have downloaded the entire Oboe project and keeping it's folder structure intact I have loaded the project…
user13267
  • 6,871
  • 28
  • 80
  • 138
2
votes
1 answer

Android NDK: How to replace AAsset to work with files from external Storage for FFmpeg decoding

I am using Oboe's RhytmGame example as a guideline to implement oboe and mp3 decoding using FFmpeg into my app. Since I am fairly new to the NDK and a C++ beginner I still struggle with some of the basic concepts I encounter. My problem: The…
michpohl
  • 852
  • 8
  • 30
2
votes
1 answer

Why does the sample code called OboeSinePlayer from oboe keep stopping on Android?

I am adding code from the following page to a hello world c++ application. https://github.com/google/oboe/blob/master/docs/GettingStarted.md Here is the MainActivity: package com.example.gettingstartedoboe; import…
Al G Johnston
  • 129
  • 2
  • 10
2
votes
2 answers

Android Studio cannot find Oboe headers, but app still runs

I am trying to incorporate the Oboe native library into a DAW that i am making. It seems to be working, the app runs seemingly with no trouble. The problem is, that Android Studio doesn't seem to be able to find the headers from the Oboe directory.…
ccxi11
  • 73
  • 7
2
votes
1 answer

Does OpenSL ES support PerformanceMode::LowLatency?

When I build my app on a Pixel 2 (Oreo 8.0) I get PerformanceMode::LowLatency: 2019-06-30 15:04:15.560 8506-8506/? D/AUDIO-APP: HearSightEngine - Stream PlayStream IS low latency 2019-06-30 15:04:15.572 8506-8506/? D/AUDIO-APP: HearSightEngine -…
2
votes
1 answer

Raw files aren't playing, or are playing incorrectly - Oboe (Android-ndk)

I'm attempting to Play a Raw (int16 PCM) encoded audio file in my android application. I've been following and reading through the Oboe documentation/samples to try to get one of my own audio files to play. The audio file I need to play is roughly…
Matt Strom
  • 698
  • 1
  • 4
  • 23
1
vote
1 answer

Problems attempting to build oboe c++ library using cmake on windows

I am attempting to build 'oboe' on a windows machine using cmake (version 3.25.0) and a visual studio generator. The end goal is to create a c++ audio library that uses oboe as the back end for android, but as a first step simply geting oboe to…
hjq
  • 11
  • 1
1
vote
0 answers

Android Oboe Library size

We are trying to integrate Oboe and the library size seems to be big.We dont need any processing like resampling ,format conversion .This we do in app and would like to know if its possible to significantly reduce library size with our only…