Skip to content

Releases: espressif/esp-adf

ESP-ADF Pre-release v2.0-beta1

26 Jun 03:58
Compare
Choose a tag to compare
Pre-release

Below is the release information of ESP-ADF v2.0-beta1 and its documentation is available here.

Known Issue

  • Some TS formats are not supported.

Major New Features

ESP Dispatcher

ESP_Dispatcher provides a design structure that improves function reusability of existing products and shortens development cycle of new products.
New features of ESP Dispatcher Framework:

  • Separate application events and actions
  • Support ESP dispatcher
  • Support audio service class
  • Support peripheral service class
  • Support independent Display, DuerOS, Player, Recorder and Wi-Fi actions

Service Framework

New Features

  • Input key service
    • Support ADC, GPIO and Touch key
  • Display service
    • Support LEDC display pattern
    • Support LED array display pattern
  • DuerOS service
    • Support LightDuer v3.0.7
  • Wi-Fi service
    • Support Wi-Fi setting by Smartconfig
    • Support Wi-Fi setting by AirKiss

ESP Peripherals

New Features

  • esp_peripherals is divided into two parts: esp_periph_set and peripheral handle
  • Add GPIO ISR to peripherals libraries
  • Add ADC button to peripherals libraries

Peripherals

New Features

  • LEDC
    • Add a new display pattern
  • LED Bar
    • Add a new display pattern

Pipeline Framework

New Features

  • Support event callback
  • Add audio_element_set_output_ringbuf_size API
  • Add audio_element_wait_for_stop_ms API
  • Add audio_element_set_event_callback API
  • Add a new element state: AEL_STATUS_STATE_FINISHED
  • Add audio_pipeline_change_state API
  • Add audio_pipeline_relink_more API
  • Add rb_unblock_reader API
  • Adjust audio_hal

Bugfix

  • Fixed pipeline relink failure
  • Fixed ringbuffer blocking issue occurred when read size or write size is larger than the size of ringbuffer

Audio Stream

New Features

  • Support ALC in I2S stream
  • Add more audio_type checks in HTTP stream
  • Support two-level m3u8 parsing in HTTP stream

Bugfix

  • Fixed HTTP stream parsing and insertion issue in relative URIs
  • Changed HTTP stream from strdup to audio_strdup to optimize RAM
  • Changed RAW API from raw_stream_read(char *buffer, int buf_size) to raw_stream_read(audio_element_handle_t pipeline, char *buffer, int buf_size)

ESP Speech Recognition (SR) Libraries

New Feature

  • Support WakeNet5

ESP Codec and Filter Libraries

You can find the released codec and filter libraries here.

New Features

  • Add ALC libraries to adjust volume
  • Optimize OPUS encoder on mono
  • Optimize HC_AAC speed
  • Add setting APIs for downmix and equalizer

Bugfix

  • Fixed the crash of WAV stream (its bit width is not 16)
  • Corrected the complexity level of resample to 5

ESP Recorder

New Features

  • Select specific functionality to lower binary size
  • Support WWE disable
  • Support customized task priority

ESP Audio

New Features

  • Add media_source_type API
  • Add playing info get/set API
  • Add esp_audio_sync_play API
  • Support memory-preferred mode and speed-preferred mode
  • Support events callback
  • Improve playback response time
  • Remove HAL handle, replaced by callback function API

Bugfix

  • Fixed raw URI failure

Audio Protocol

  • Support 2.0 SIP protocol
  • Support 2.0 RTP protocol
  • Support RFC4566-based SDP
  • Support servers: FreePBX, Yate Server and Freeswitch

Codec IC

ESP-ADF newly provides support for the following Codec ICs:

  • ES8311
  • ES7243

Support New Development Board

New Examples of ESP-ADF

Below are the added examples that demonstrate the usage of ESP-ADF components:

Get This Release

We use git submodules, therefore, the source files attached to this version will not work.
Using git commands here to obtain ESP-ADF v2.0-beta1 is highly recommended.

git clone https://github.com/espressif/esp-adf.git esp-adf-v2.0-beta1
cd esp-adf-v2.0-beta1/
git checkout v2.0-beta1
git submodule update --init --recursive

To get the programming guide for Audio Development Framework, please tap here.

ESP-ADF Release v1.0

03 Jan 10:20
Compare
Choose a tag to compare

Below is the release information of ESP-ADF v1.0. and its documentation is available here.

Known Issues

  • Some TS formats are not supported.
  • Music stutter may occur in touch driver that takes a lot of CPU usage.

New Functionalities

Pipeline Framework

Below are the open-source parts of ESP-ADF:

  • Audio Element

    • Flexible and fully-functional APIs
    • Non-task oriented
    • Support callback input
    • Support customized tasks
    • Support multiple inputs and outputs
  • Audio Pipeline

    • Flexible and fully-functional APIs
    • Non-task oriented
    • Support flexible replacement of pipeline elements
  • Audio Event Interface

  • RingBuffer

ESP Speech Recognition (SR) Libraries

Espressif speech recognition libraries inlcude:

  • ESP VAD
    • Multiple sampling rates
    • Multiple frame sizes
  • ESP SR
    • Support single wakeup word
    • Support multiple wakeup words

ESP Codec Libraries

You can find the released codec libraries here.

Decoder

  • MP3-LayerIII
  • WAV
  • AAC-LC, AAC-HE
  • TS
  • AMR-NB
  • AMR-WB
  • OGG
  • FLAC
  • OPUS
  • Auto-Codec

Encoder

  • WAV
  • AMR-WB
  • AMR-NB

Filter

  • Resample

    • Support
      • Single-channel to Single-channel;
      • Dual-channel to Dual-channel;
      • Single-channel to Dual-channel;
      • Dual-channel to Single-channel.
    • Up-sample
    • Down-sample
    • Support high quality mode
  • EQ

    • Support 10-band equalizer
  • Downmixer

    • Support 2-channel input downmixer
  • Sonic (voice change)

    • Support change of voice speed
    • Support change of voice pitch

Others

  • ESP Recorder

    • Triggered by APIs
    • Support stop of VAD (Voice Activity Detection) recording
  • ESP Player

    • Use simple APIs
    • Played by URI
    • Recorded by URI
  • DLNA protocol

    • SSDP
    • UPNP
    • DLNA-Renderer

Codec IC

ESP-ADF now supports the following Codec ICs:

  • ES8388
  • ES8374
  • ZL38063

Supported Development Boards

The series of LyraT development boards are designed for the solutions with buttons, and the LyraTD series are designed for the far-field solutions. Currently, ESP-ADF supports the following boards:

  • LyraT v4.2
  • LyraT v4.3
  • LyraTD-MSC v2.1
  • LyraTD-MSC v2.2

Peripherals

  • Wi-Fi
    • Setting Wi-Fi by Smartconfig
    • Wi-Fi event notification
  • BLE
    • Setting Wi-Fi by BLE
  • Touch
    • Short touch
    • Touch and hold
  • Button
    • Short press
    • Press and hold
  • Console
  • SD Card
  • LED
    • LED blink
    • LED fade blink
  • LED Bar
    • LED blink
    • LED audio bar
  • ADC-Button
    • Support multiple buttons
    • Support multiple ADC channels

Cloud Platform

The cloud platforms supported by ESP-ADF as planned are shown here. Currently the supported cloud platform is:

  • DuerOS DCS 3.0.7

Audio Stream

ESP-ADF now supports the following audio streams:

  • I2S Stream
  • HTTP Stream
  • FatFs Stream
  • Raw Stream
  • DAC Stream
  • SPIFFS Stream

New Examples of ESP-ADF

Below are the added examples that demonstrates the usage of ESP-ADF components:

  • ESP ASR Demo here.
  • AWS Polly Demo here.
  • Baidu Speech Demo here.
  • Google Translate Demo here.
  • DuerOS Solution here.
  • Resample Demo here.
  • Get-started Demos here.
  • Pipeline BT Sink here.
  • BT Source Demo here.
  • Play HTTP Server MP3 Music here.
  • Play SD Card MP3 and Controlled by Touch here.
  • Recording WAV to SD Card Demo here.
  • Recording WAV to HTTP Server Demo here.
  • Recording AMR to SD Card Demo here.
  • Equalizer Demo here.
  • Voice Change Demo here.
  • Elements Multi-input Demo here.
  • Elements Multi-output Demo here.
  • Command-line Interface Demo here.
  • Flexible Replacement Of Pipeline Elements Demo here.
  • HTTP Living Stream Demo here.
  • DLNA Service Demo here.

Get This Release

We use git submodules, therefore, the source files attached to this version will not work.
Using git commands here to obtain ESP-ADF v1.0 is highly recommended.

git clone https://github.com/espressif/esp-adf.git esp-adf-v1.0
cd esp-adf-v1.0/
git checkout v1.0
git submodule update --init --recursive

To get the programming guide for Audio Development Framework, please tap here.

ESP-ADF Pre-release v1.0-beta1

13 Jul 02:29
Compare
Choose a tag to compare
Pre-release

Documentation for release v1.0-beta1 is available at: https://esp-adf.readthedocs.io/en/latest/?badge=latest

The following contains the release information for the first release of ESP-ADF (v1.0-beta1).

Known Issues

  • Some TS formats are not supported

New Functionalities

Pipeline Framework

Below are the open-source parts of ESP-ADF:

  • Audio Element

    • Element: flexible and fully-functional APIs
    • Element: non-task oriented
    • Support callback input
    • Support customized tasks
  • Audio Pipeline

    • Flexible and fully-functional APIs
    • Non-task oriented implementation
  • Audio Event Interface

  • RingBuffer

ESP ADF Libraries

The planned ADF libraries are shown as below:https://github.com/espressif/esp-adf#espressif-audio-development-framework. Currently, the released libraries include:

Decoder

  • MP3-LayerIII
  • WAV
  • AAC-LC, AAC-HE
  • TS

Encoder

  • WAV

Filter

  • Resample
    • Support for
      • Single-channel to Single-channel;
      • Dual-channel to Dual-channel;
      • Single-channel to Dual-channel;
      • Dual-channel to Single-channel.
    • Up-sample
    • Down-sample

Others

  • ESP Recorder

    • Triggered by APIs
    • Supports stop of VAD (Voice Activity Detection) recording
  • ESP Player

    • Simple APIs
    • Playing by URI
    • Recording by URI
  • ESP VAD

    • Multiple sampling rate
    • Multi frame size

CODEC IC

Currently the supported codec ICs include:

  • ES8388
  • ES8374

Supported Development Boards

The series of LyraT development boards are designed for the solutions with push buttons, and the LyraTD series are designed for the far-field solutions. Currently the supported boards are as follows:

  • LyraT-V4.2
  • LyraT-V4.3

Peripherals

  • Wi-Fi
    • Setting Wi-Fi by Smartconfig
    • Wi-Fi event notification
  • Touch
    • Short touch
    • Touch and hold
  • Button
    • Short press
    • Press and hold
  • Console
  • SD Card
  • LED
    • LED blink
    • LED fade blink

Cloud Platform

The cloud platforms supported by ADF as planned are shown as below https://github.com/espressif/esp-adf#espressif-audio-development-framework. Currently the supported cloud platform is:

  • DuerOS DCS 3.0.2

Audio Stream

Currently the supported audio streams include:

  • I2S Stream
  • HTTP Stream
  • FatFs Stream
  • Raw Stream
  • DAC Stream
  • HTTP Live Stream

New Examples of ADF

Examples to demonstrate the usage of ADF components are as follows:

  • CLI
  • AWS Polly Demo
  • Google Translate Demo
  • Baidu Speech Demo
  • DuerOS Solution
  • Resample Demo
  • Get-started Demos
  • Pipeline BT Sink
  • Play http server mp3 music
  • Play SD Card MP3 and controlled by touch
  • Recording WAV to SD Card Demo

Get This Release

Because we use the git submodules, the source files attached to this version will not work.

It is recommended using "git" to obtain ESP-ADF (v1.0-beta1):

git clone https://github.com/espressif/esp-adf.git esp-adf-v1.0-beta1
cd esp-adf-v1.0-beta1/
git checkout v1.0-beta1
git submodule update --init --recursive

To get the programming guide for Audio Development Framework, please refer to https://esp-adf.readthedocs.io/en/latest/?badge=latest.