xref: /aosp_15_r20/external/oboe/README.md (revision 05767d913155b055644481607e6fa1e35e2fe72c)
1# Oboe [![Build CI](https://github.com/google/oboe/workflows/Build%20CI/badge.svg)](https://github.com/google/oboe/actions)
2
3[![Introduction to Oboe video](docs/images/getting-started-video.jpg)](https://www.youtube.com/watch?v=csfHAbr5ilI&list=PLWz5rJ2EKKc_duWv9IPNvx9YBudNMmLSa)
4
5Oboe is a C++ library which makes it easy to build high-performance audio apps on Android. It was created primarily to allow developers to target a simplified API that works across multiple API levels back to API level 16 (Jelly Bean).
6
7## Features
8- Compatible with API 16 onwards - runs on 99% of Android devices
9- Chooses the audio API (OpenSL ES on API 16+ or AAudio on API 27+) which will give the best audio performance on the target Android device
10- Automatic latency tuning
11- Modern C++ allowing you to write clean, elegant code
12- Workarounds for some known issues
13- [Used by popular apps and frameworks](https://github.com/google/oboe/wiki/AppsUsingOboe)
14
15## Documentation
16- [Getting Started Guide](docs/GettingStarted.md)
17- [Full Guide to Oboe](docs/FullGuide.md)
18- [API reference](https://google.github.io/oboe)
19- [History of Audio features/bugs by Android version](docs/AndroidAudioHistory.md)
20- [Migration guide for apps using OpenSL ES](docs/OpenSLESMigration.md)
21- [Frequently Asked Questions](docs/FAQ.md) (FAQ)
22- [Wiki](https://github.com/google/oboe/wiki)
23- [Our roadmap](https://github.com/google/oboe/milestones) - Vote on a feature/issue by adding a thumbs up to the first comment.
24
25### Community
26- Reddit: [r/androidaudiodev](https://www.reddit.com/r/androidaudiodev/)
27- StackOverflow: [#oboe](https://stackoverflow.com/questions/tagged/oboe)
28
29## Testing
30- [**OboeTester** app for measuring latency, glitches, etc.](apps/OboeTester/docs)
31- [Oboe unit tests](tests)
32
33## Videos
34- [Getting started with Oboe](https://www.youtube.com/playlist?list=PLWz5rJ2EKKc_duWv9IPNvx9YBudNMmLSa)
35- [Low Latency Audio - Because Your Ears Are Worth It](https://www.youtube.com/watch?v=8vOf_fDtur4) (Android Dev Summit '18)
36- [Winning on Android](https://www.youtube.com/watch?v=tWBojmBpS74) - How to optimize an Android audio app. (ADC '18)
37
38## Sample code and apps
39- Sample apps can be found in the [samples directory](samples).
40- A complete "effects processor" app called FXLab can  be found in the [apps/fxlab folder](apps/fxlab).
41- Also check out the [Rhythm Game codelab](https://developer.android.com/codelabs/musicalgame-using-oboe?hl=en#0).
42
43### Third party sample code
44- [Ableton Link integration demo](https://github.com/jbloit/AndroidLinkAudio) (author: jbloit)
45
46## Contributing
47We would love to receive your pull requests. Before we can though, please read the [contributing](CONTRIBUTING.md) guidelines.
48
49## Version history
50View the [releases page](../../releases).
51
52## License
53[LICENSE](LICENSE)
54
55