Espressif Systems Audio Development Framework (ESP-ADF) is the official audio development framework for the ESP32 chip.
ESP-ADF supports development of audio applications for the Espressif Systems ESP32 chip in the most comprehensive way. With ESP-ADF, you can easily add features, develop audio applications from simple to complex:
- Music player or recorder supports audio formats such as MP3, AAC, FLAC, WAV, OGG, AMR, TS, EQ, Downmixer, Sonic, G.711, SPEEX ...
- Play music from sources: HTTP, HLS(HTTP Live Streaming), SPIFFS, SDCARD, A2DP-Source, A2DP-Sink, HFP ...
- Integrate Media services such as: DLNA, WeChat ...
- Internet Radio
- Voice recognition and integration with online services such as Alexa, DuerOS, ...
As a general, the ESP-ADF features will be supported as shown below:
You need the ESP32-LyraT board and headphone connected, make sure you clone the project recursive:
git clone --recursive https://github.com/espressif/esp-adf.git
cd esp-adf/examples/get-started/play_mp3
make menuconfig
make flash monitor
If you clone project without --recursive
flag, please goto the esp-adf
directory and run command git submodule update --init
before doing anything.
Espressif Systems has released a number of boards for ESP-ADF to develop ESP32 audio applications, including:
ESP32-LyraT Development Board | ESP32-LyraTD-MSC Development Board |
---|---|
Getting Started with ESP32-LyraT | Getting Started with ESP32-LyraTD-MSC |
An open-source development board, supporting Espressif Systems’ ADF and featuring voice wake-up, a wake-up button and an audio player. Designed for smart speakers and smart-home applications.
Designed for smart speakers and AI applications. Supports Acoustic Echo Cancellation (AEC), Automatic Speech Recognition (ASR), Wake-up Interrupt and Voice Interaction.
- Getting Started with ESP32-LyraTD-MSC
- ESP32-LyraTD-MSC Schematic Lower Board A (PDF) , Upper Board B (PDF)
ESP-ADF is based on the application layer of ESP-IDF (Espressif IoT Development Framework). The git clone
command, described under Quick Start above, automatically downloads specific version of the ESP-IDF alongside with ESP-ADF. Please take a look at Get Started
Check folder examples that contains sample applications to demonstrate API features of the ESP-ADF.
- Documentation for the latest version of https://docs.espressif.com/projects/esp-adf/. This documentation is built from the docs directory of this repository.
- The esp32.com forum is a place to ask questions and find community resources. On the forum there is a section dedicated to ESP-ADF users.
- Check the Issues section on github if you find a bug or have a feature request. Please check existing Issues before opening a new one.
- If you're interested in contributing to ESP-ADF, please check the Contributions Guide.