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

Библиотека ESP32-A2DP предоставляет простой Arduino-совместимый интерфейс для потоковой передачи аудио по Bluetooth A2DP на микроконтроллерах Espressif ESP32. Она реализует роли A2DP Sink (приёмник музыки) и A2DP Source (источник музыки), что позволяет создавать проекты, такие как Bluetooth-колонки или беспроводные аудиопередатчики. Библиотека оборачивает стек Bluedroid из ESP-IDF и предоставляет обратные вызовы для данных PCM, метаданных AVRCP (название, исполнитель, время воспроизведения), уведомлений о воспроизведении (статус, позиция, смена трека) и команд удалённого управления (воспроизведение, пауза, следующий, предыдущий и т.д.). Вывод может быть направлен на I2S (внешний ЦАП), внутренний ЦАП ESP32 или любой поток, производный от Arduino Print. Начиная с ESP-IDF v5 / Arduino core 3.0, устаревший API I2S устарел; библиотека теперь рекомендует сопутствующую библиотеку AudioTools для независимого от версии аудиоконвейера, но также работает напрямую с новым ESP32 I2SClass. Кодеки, отличные от SBC, такие как AAC, требуют ESP-IDF ≥ 6.1 и декодер AudioTools, зарегистрированный через add_decoder(). Код не имеет внешних зависимостей, кроме ESP-IDF (предоставляется ядром Arduino ESP32), и поддерживает три среды сборки: Arduino IDE, PlatformIO и ESP-IDF в качестве компонента. Подробные примеры охватывают базовый приёмник/источник, настройку выводов, обработку метаданных, анализ FFT и многокодековые конфигурации. Документация включает справочник по классам, вики с обзором дизайна, руководства по интеграции с PlatformIO/IDF и историю изменений. Лицензия Apache 2.0.