Об этом проекте

Oboe — это библиотека на C++, созданная для упрощения разработки высокопроизводительных аудиоприложений на Android. Её основная цель — предоставить упрощённый API, работающий на различных уровнях Android API, вплоть до API level 16 (Jelly Bean). Ключевые особенности, описанные в README: - Совместимость с API 16 и выше, что, по заявлению проекта, охватывает подавляющее большинство устройств Android. - Автоматический выбор аудио API: OpenSL ES на API 16+ или AAudio на API 27+, с целью достижения наилучшей аудиопроизводительности на целевом устройстве. - Автоматическая настройка задержки. - Современный стиль C++, предназначенный для поддержки чистого и элегантного кода. - Обходные решения для некоторых известных проблем. - Использование популярными приложениями и фреймворками, со страницей в вики, перечисляющей их. Документационные ресурсы включают руководство по началу работы, полное руководство по Oboe, справочник по API, историю аудиофункций и ошибок Android по версиям, руководство по миграции для приложений, использующих OpenSL ES, FAQ, вики и публичную дорожную карту, где пользователи могут голосовать за функции или проблемы. Указанные каналы сообщества: сообщество Reddit (r/androidaudiodev) и вопросы на StackOverflow с тегом #oboe. Для тестирования проект предоставляет приложение OboeTester для измерения задержки, сбоев и подобных метрик, а также модульные тесты Oboe. Также есть видеоматериалы, включая плейлист по началу работы, доклад Android Dev Summit о низкой задержке аудио и доклад ADC об оптимизации аудиоприложений Android. Примеры кода включают образцы приложений в каталоге samples, полное приложение для обработки эффектов под названием FXLab в apps/fxlab и связанный коделаб Rhythm Game. Также упоминается демонстрация интеграции стороннего Ableton Link. Проект приветствует pull request'ы и направляет участников к своим руководствам по внесению вклада. История версий доступна на странице релизов, а информация о лицензировании — в файле LICENSE.