ESP Audio Analyzer

[中文]

Note

This document is automatically translated using AI. Please excuse any detailed errors. The official English version is still in progress.

Introduction to ESP Audio Analyzer

With the rapid development and expanding application scenarios of smart audio devices, the requirements for audio effects and system performance continue to increase. Espressif has launched a new audio analysis tool, providing convenient and efficient testing methods and standardized processes, combined with an intuitive and easy-to-use web interface and supporting test projects, to support standardized audio testing.

With this tool, users can comprehensively test key audio modules such as microphones, speakers, and AEC, quickly locate and troubleshoot system problems, thereby effectively improving development efficiency and product quality.

Platform Features

  • Comprehensive functions: Covering microphones, speakers, and AEC, a total of 11 audio tests

  • Convenient adaptation: Based on ESP Board Manager, it supports quick adaptation of different hardware

  • Performance analysis: Provide audio indicators such as THD, SNR for reference to evaluate system performance

  • Standardized process: Provide unified testing methods and evaluation standards

  • Source data download: Support the export of original recording files for retesting and in-depth analysis

  • Visual report: Generate structured test reports, including data, charts, and test results

Released:

Note

This project does not need to rely on the ADF environment, all dependencies are automatically downloaded through the component manager.

Download the project directly through the component manager: https://components.espressif.com/components/espressif/adf_examples/versions/0.1.0/examples/esp_audio_analyzer_app?language=en

Test Process

  1. Environment preparation: Download the supporting test project, and according to the test environment requirements, prepare necessary equipment such as computers, external speakers, microphones, etc., to ensure that the hardware is complete and can be used normally.

  2. Hardware adaptation: The hardware adaptation capability of the test project is provided by the ESP Board Manager, and the board-level support code can be generated with one click by configuring the hardware description file.

  3. Project configuration: Configure parameters such as Wi-Fi according to the project README, compile and burn to the device, the device will connect to Wi-Fi and start the WebSocket server.

  4. Device connection: Visit the device address according to the device log prompt, manually trust the certificate, confirm the device URL in the input box on the left side of the audio test webpage, and click “Connect Device” to start the test.

  5. Audio test: Click on each test item in the title bar to start the test, and you can repeat the same test item multiple times to get stable results. Keep the device network connection stable during the test.

  6. Generate report: After the test is completed, enter the test report page to download the test report, including detailed data, charts, and optimization suggestions, etc.

Homepage:

Homepage

Test project page:

Test project page

Data upload analysis:

Data Upload Analysis

Test Report Retrieval Page:

Test Report Retrieval Page

Test Report Example:

Test Items

Serial Number

Test Item

Test Method

Test Data

Output Result

1

Microphone Structure Air Tightness Verification

Play white noise through the speaker, record with the hardware under test (repeat recording with the microphone blocked)

2 WAVs

Pass/Acceptable/Deficient

2

Microphone Electroacoustic Characteristics

Play a 1kHz sine wave through the speaker, record with the hardware under test

WAV

Pass/Acceptable/Deficient, SNR, THD

3

Microphone Frequency Response Curve

Play a continuous sweep frequency through the speaker, record with the hardware under test

WAV

Pass/Acceptable/Deficient, Deviation

4

Microphone Background Noise

No playback, record with the hardware under test with the microphone blocked

WAV

Pass/Acceptable/Deficient, Noise_Level, Peak

5

Microphone Array Loudness Consistency

Play a 1kHz sine wave through the speaker, record with the hardware under test

WAV

Pass/Acceptable/Deficient, Level

6

Microphone Array Frequency Response Consistency

Play a continuous sweep frequency through the speaker, record with the hardware under test

WAV

Pass/Acceptable/Deficient, Deviation

7

Microphone Array Phase Consistency

Play a 1kHz sine wave through the speaker, record with the hardware under test

WAV

Pass/Acceptable/Deficient, Phase

8

Speaker Electroacoustic Characteristics

Play a 1kHz sine wave with the hardware under test, record with other devices

WAV

Pass/Acceptable/Deficient, SNR, THD

9

Speaker Sweep Frequency Test

Play a step sweep frequency with the hardware under test, record with other devices

WAV

Pass/Acceptable/Deficient, Level, THD

10

Speaker PA Background Noise

Play silent audio with the hardware under test, record with other devices

WAV

Pass/Acceptable/Deficient, Noise_Level, Peak

11

AEC Echo Signal Correlation

Play and record a 1kHz sine wave simultaneously with the hardware under test

WAV

Pass/Acceptable/Deficient, THD, Level

FAQ

Device frequently disconnects

  • Please ensure that the computer and the device are connected to the same Wi-Fi network

  • To improve connection stability, please test in an environment with less interference

Insufficient audio data recorded, or recording terminated prematurely

  • A common reason is that the volume of audio data is too large, causing delays in transmission. You can try to increase the size of WS_AUDIO_BUFFER_SIZE in app_websocket.c

  • You can try to improve Wi-Fi performance, refer to the Wi-Fi Performance Optimization document for optimization, or shorten the distance between the device and the router

Unable to start WebSocket server

  • A common reason is insufficient internal memory in the system, it is recommended to enable PSRAM to reserve more internal memory space

Prompt of insufficient IRAM space during compilation and linking

  • Please refer to the IRAM Optimization document to turn off unnecessary optimization options