多媒体例程
本页按功能分类列出多媒体例程,覆盖播放、录音与采集、音频算法、显示与渲染、蓝牙音频、云端智能体、传输协议、检测与系统服务。
播放例程
播放例程演示完整的媒体播放流程:从 SD 卡、Flash、HTTP、HLS、MIDI 等音源读取并解码,再输出到扬声器或屏幕,并提供触摸屏或串口命令行控制。
例程名称 |
简介 |
例程组件链接 |
|---|---|---|
pipeline_play_sdcard_music |
从 SD 卡播放音乐,经解码和音效处理后输出,支持 MP3/WAV/FLAC/AAC 等。 |
|
pipeline_play_multi_source_music |
支持在 HTTP 与 SD 卡音源之间切换,并可插入 Flash 提示音;提示音结束后恢复原曲播放。 |
|
pipeline_loop_play_no_gap |
基于 GMF 任务策略实现 SD 卡多首音乐无缝循环,切换时无明显停顿。 |
|
pipeline_play_embed_music |
播放嵌入固件的 Flash 音频,不依赖 SD 卡或网络,适用于开机提示音。 |
|
pipeline_play_http_music |
连接 Wi-Fi 后按 HTTP URL 拉流并解码播放。不支持 m3u8/HLS。 |
|
audio_player |
基于 |
|
video_player (esp_player) |
基于 |
|
play_music_control |
通过串口 CLI 控制多源播放:SD 卡、HTTP/HTTPS、Flash 提示音,并支持播放列表。 |
|
music_player |
扫描 SD 卡中的 MP3/AAC/WAV,在触摸屏上显示歌曲列表和播放控件,支持单曲/列表/随机。 |
|
hls_live_stream |
解析 HLS(m3u8)直播流并解码播放,适用于网络电台和在线直播音频。 |
|
midi_play |
从 SD 卡播放 MIDI 文件。 |
|
midi_keyboard |
实时接收 MIDI 消息并合成发声,实现简易电子琴。 |
|
play_embed_music |
板卡例程:直接播放固件内的 WAV,用于验证板卡音频输出。 |
|
play_sdcard_music |
板卡例程:从 SD 卡播放 WAV。 |
录音与采集例程
录音与采集例程演示麦克风与摄像头采集。采集数据可编码后写入 SD 卡、经 HTTP 上传,或在本地屏幕上预览。
例程名称 |
简介 |
例程组件链接 |
|---|---|---|
pipeline_record_sdcard |
从麦克风录音并保存到 SD 卡,支持 PCM/MP3/AAC 等,可启用低功耗录音。 |
|
pipeline_record_http |
麦克风采集并编码后,通过 HTTP 上传到指定服务器,适用于云端录音或语音识别前端。 |
|
pipeline_record_audio_muxer |
录音编码后经 muxer 封装为 MP4/TS 等容器再写入 SD,而非仅保存裸音频流。 |
|
aec_rec |
一路播放 SD 卡 MP3,另一路麦克风经 AEC 后编码保存,用于对比回声消除效果。 |
|
audio_capture |
基于 |
|
video_capture |
基于 |
|
av_record_live_display |
采集摄像头和麦克风数据,在 LCD 上持续预览,同时将音视频录制为 MP4 写入 SD。 |
|
live_photo_capture |
采集短视频并自动提取封面帧,封装为 Motion Photo 风格文件后写入 SD。 |
|
video_muxer |
基于 ESP Muxer 将摄像头与麦克风两路流混流后保存到 SD。 |
|
record_to_sdcard |
板卡例程:将麦克风录音保存到 SD 卡。 |
|
record_and_play |
板卡例程:麦克风采集的音频实时从扬声器输出,用于验证音频通路。 |
音频算法例程
音频算法例程演示常见音频处理能力,包括音效、啸叫抑制、唤醒与命令词、采样率转换和频谱分析。
例程名称 |
简介 |
例程组件链接 |
|---|---|---|
pipeline_audio_effects |
基于多条 GMF 处理链演示重采样、Sonic 变速变调、至少 4 路混音、EQ 和 DRC。 |
|
pipeline_howl |
卡拉 OK 三路处理链:SD 伴奏与麦克风分别处理后,经啸叫抑制再混音,从 DAC 输出。 |
|
wwe (唤醒与命令词) |
基于 AFE 实现唤醒词、VAD 和命令词识别,可离线运行。 |
|
asrc_demo |
基于 ASRC 进行采样率、声道数和位深转换,将录音或播放格式对齐到目标规格。 |
|
fft_spectrum_print |
生成多频余弦信号,执行 512 点 Q15 实数 FFT,经串口打印频谱柱状图,再通过 IFFT 校验往返误差。 |
|
ae_howl |
麦克风经 |
|
esp_audio_effects_demo |
逐项演示 ALC、Fade、EQ、Sonic、DRC、MBC、Mixer 和基本格式转换。 |
显示与渲染例程
显示与渲染例程演示如何把视频帧和 PCM 音频送到 LCD 与 DAC,覆盖双目同步显示、画面叠加、多路混音,以及板卡 LVGL 界面验证。
例程名称 |
简介 |
例程组件链接 |
|---|---|---|
dual_eyes |
同步渲染左右眼画面,支持单屏并排或双屏输出。 |
|
video_player (esp_video_render) |
基于 |
|
video_render |
读取 SD 卡 MJPEG,演示单流/多流渲染、缩放和进度条 overlay。 |
|
audio_render |
基于 |
|
simple_piano |
基于 |
|
display_lvgl |
基于 board manager 初始化屏幕,并运行 LVGL 测试界面,用于验证显示和触摸。 |
|
av_render_test |
采集摄像头和麦克风数据,经 LCD 与 I2S 同步输出,用于验证音视频渲染链路。 |
蓝牙音频例程
蓝牙音频例程演示经典蓝牙音频能力,覆盖 A2DP 播放、HFP 通话和 AVRCP 控制,并可按需启用 LE Audio。
例程名称 |
简介 |
例程组件链接 |
|---|---|---|
bt_audio |
同一工程覆盖 A2DP Source/Sink、HFP 通话和 AVRCP 控制;可选启用 LE Audio、BIS 和 LVGL 触屏 UI。 |
云端智能体例程
云端智能体例程演示设备与云端语音智能体的对接,覆盖扣子、百度 RTC 和 OpenAI Realtime 的实时语音交互。
例程名称 |
简介 |
例程组件链接 |
|---|---|---|
coze_ws_app |
对接扣子 WebSocket OpenAPI,支持直接对话、唤醒和按键打断的双向流式语音交互。 |
|
voice_assistant_app |
基于百度 RTC 实现语音助手:支持对话、播放网络音乐,并将两路音频混音输出。 |
|
openai_demo |
基于 |
传输协议例程
传输协议例程演示媒体在网络上的传输,包括 HTTP 下载,以及基于 WebRTC、RTSP、RTMP 的实时推流与通话。
例程名称 |
简介 |
例程组件链接 |
|---|---|---|
pipeline_http_download_to_sdcard |
按 URL 将文件下载到 SD 卡,完成后打印下载和写入的整体速度。 |
|
peer_demo |
两块 ESP 板基于 |
|
esp_peer_demo |
|
|
whip_demo |
基于 WHIP 将设备音视频推流到 WHIP 服务器。 |
|
kvs_master |
ESP 作为 Amazon KVS MASTER,接收浏览器 VIEWER 的 SDP offer 并回传 answer。 |
|
kms_demo |
向 Kurento Media Server 发布 WebRTC 音视频,浏览器经 KMS 观看。 |
|
janus_demo |
作为 Janus VideoRoom publisher,经 Janus HTTP 信令发布媒体流。 |
|
doorbell_demo |
基于 AppRTC WebSocket 信令的智能门铃:远程控制、实时视频、双向音频。 |
|
doorbell_local |
设备自建 HTTPS 信令的本地门铃,包含实时视频、双向音频,可选行人检测。 |
|
videocall_demo |
两台设备经改造版 AppRTC 信令实现视频通话,媒体经 |
|
webrtc_usb_camera |
浏览器经 WebRTC 送流,主机侧将设备识别为 USB UVC 摄像头。 |
|
local_jpeg_stream |
设备自建 HTTPS 信令,将摄像头 JPEG 经 WebRTC 数据通道推送到浏览器,并支持双向音频。 |
|
rtsp_demo |
连接 Wi-Fi 后在设备上启动 RTSP 服务端或推流端,供局域网拉流。 |
|
rtmp_demo |
采集设备音视频,经 |
检测与压测例程
检测与压测例程用于检查录音质量、验证媒体抽帧,以及对播放列表等组件做性能压测。
例程名称 |
简介 |
例程组件链接 |
|---|---|---|
esp_audio_analyzer_app |
同时采集 MIC 和回采,保存到 SD 或经 Wi-Fi 上传,用于硬件录音质量和声学检查。 |
|
extractor_test |
基于 |
|
playlist_benchmark |
在 SD 卡上对 |
系统服务例程
系统服务例程演示设备侧系统能力,包括低功耗休眠、服务编排、配网、配置管理和 OTA 升级。
例程名称 |
简介 |
例程组件链接 |
|---|---|---|
audio_power_save |
联网后通过 MQTT keepalive 自动进入 light sleep,可由 UART/MQTT/GPIO/定时器唤醒,并播放休眠提示音。 |
|
services_hub |
基于 event hub 和 service manager 编排 Wi-Fi、OTA、CLI 与按键服务,可选启用 MCP。 |
|
adf_event_hub_example |
五个独立服务经 event hub 互联,经串口打印完整事件流;同一份源码也可在 PC 上构建。 |
|
button_svc_example |
将单 GPIO 按键和 ADC 多按键组一并接入,演示完整事件订阅。 |
|
esp_cli_service_example |
通过串口命令控制设备。 |
|
mock_services |
六个 mock 服务演示 |
|
wifi_service_example |
创建 Wi-Fi service,加密保存 profile,启动配网,并通过 CLI 控制连接。 |
|
config_manager_example |
将多组应用配置保存到持久化介质,演示双槽、默认值合并和 CRC 校验。 |
|
ota_http |
通过 HTTP 拉取固件:清单版本检查、SHA-256 校验、断点续传。 |
|
ota_fs |
基于 SD 卡或 U 盘进行离线 OTA,支持多分区批量升级。 |
|
ota_ble |
无 Wi-Fi 时通过 BLE GATT 推送固件,配合官方 ESP BLE OTA APP。 |