프로젝트 소개

ESP32-A2DP 라이브러리는 Espressif ESP32 마이크로컨트롤러에서 블루투스 A2DP 오디오 스트리밍을 위한 간단한 Arduino 호환 인터페이스를 제공합니다. A2DP Sink(음악 수신기)와 A2DP Source(음악 송신기) 역할을 모두 구현하여 블루투스 스피커나 무선 오디오 송신기와 같은 프로젝트를 가능하게 합니다. 이 라이브러리는 ESP-IDF의 Bluedroid 스택을 래핑하고 PCM 데이터, AVRCP 메타데이터(제목, 아티스트, 재생 시간), 재생 알림(상태, 위치, 트랙 변경), 원격 제어 명령(재생, 일시정지, 다음, 이전 등)에 대한 콜백을 노출합니다. 출력은 I2S(외부 DAC), 내장 ESP32 DAC 또는 Arduino Print 파생 스트림으로 라우팅할 수 있습니다. ESP-IDF v5 / Arduino 코어 3.0부터 레거시 I2S API는 더 이상 사용되지 않습니다. 이제 라이브러리는 버전 독립적인 오디오 파이프라인을 위해 동반 AudioTools 라이브러리를 권장하지만, 새로운 ESP32 I2SClass와 직접 작동할 수도 있습니다. AAC와 같은 비-SBC 코덱은 ESP-IDF ≥ 6.1과 add_decoder()를 통해 등록된 AudioTools 디코더가 필요합니다. 코드는 Arduino ESP32 코어에서 제공하는 ESP-IDF 외에 외부 종속성이 없으며 Arduino IDE, PlatformIO, ESP-IDF 구성 요소의 세 가지 빌드 환경을 지원합니다. 포괄적인 예제는 기본 sink/source, 핀 구성, 메타데이터 처리, FFT 분석, 다중 코덱 설정을 다룹니다. 문서에는 클래스 참조, 설계 개요가 포함된 위키, PlatformIO/IDF 통합 가이드, 변경 이력이 포함됩니다. Apache 2.0 라이선스로 배포됩니다.