文章目录

  • 播放本地mp3
    • 一、制作二进制音频文件
    • 二、修改分区表
    • 三、在代码中使用
    • 四、烧录
  • 参考资料

播放本地mp3

参考例程esp-adf\examples\player\pipeline_flash_tone,其思路是在PC端将多个mp3文件合并成一个二进制的文件,并在分区别中将为文件设置flash_tone空间。最后将该文件烧录到指定的地址中,在程序中调用flash_tone的接口函数就能读取到mp3.

一、制作二进制音频文件

使用ADF提供的mk_audio_bin.py脚本来生成上述二进制文件。

mk_audio_bin.py的作用是将当前目录下的MP3和wav文件集合生成一个audio-esp.bin的音频文件,并在main/audio目录下生成audio_tone_uri.h和audio_tone_uri.c。

mk_audio_bin.py下载地址:https://wwe.lanzoui.com/iRoNYtdueub

首先安装python2.7,将mp3文件放在mk_audio_bin.py的同一目录下,执行下面命令生成二进制文件:

python2 mk_audio_bin.py

二、修改分区表

在分区表partitions.csv中添加一项

flash_tone,data, 0x04, 0x320000, 0xc800,

表示添加一个名称为flash_tone的分区,其分区类型是data,子类型是0x4,在flash中的偏移地址是0x320000,这个地址也说烧录地址,分区大小为0xc800,也就是100k。

三、在代码中使用

需要在main目录下的Makefile文件中,添加audio_tone_uri.c:

set(COMPONENT_SRCS “./audio/audio_tone_uri.c”)

代码中具体使用参考ADF的examples/player/pipeline_flash_tone/main/play_tone_mp3_example.c

四、烧录

使用你的烧录工具,将audio-esp.bin和程序烧录到芯片。

参考资料

在线文字转语音
python2和python3共存 安装

ESP32 ADF 离线播放mp3 mp3烧录flash相关推荐

  1. 教你轻松拿下百度音乐播放器mp3地址

    教你轻松拿下百度音乐播放器mp3地址----ldfu2010 如果你想做一个类似百度或谷歌或QQ音乐那样的flash播放器,你最需要最重要的事情是什么?播放器什么做?我觉得应该不是,而是你的音乐mp3 ...

  2. Android 播放raw文件夹下音频文件,本地MP3文件播放,播放云端MP3文件,获取MP3文件播放时长

    1.复制音频文件到raw文件夹下 2.实例化音频文件 private final MediaPlayer.OnCompletionListener beepListener = new MediaPl ...

  3. python实现自动拨打电话_twilio python自动拨打电话,播放自定义mp3音频的方法

    有个小项目,需求是某事件发生时,给客户打电话,提醒客户.需要事先录制好一段音频,客户接通电话后,自动播放. 1. 注册twilio账号 2. 买一个电话号码 3. 安装twilio pip insta ...

  4. 自动循环播放的MP3播放器

    [实现内容]自动循环播放的MP3播放器 [应用]自动循环播放的MP3播放器主要用于企业文化的应用.在每天的休息时段,播放器自动循环播放指定的MP3音乐.本自动播放器主要根据本公司的情况编写,包括早上上 ...

  5. python 循环播放音乐_pyaudio:基于pyaudio利用Python编程实现播放音频mp3、wav等格式文件...

    基于pyaudio利用Python编程实现播放音频mp3.wav等格式文件 T1.while循环输出数据流的方法def play(): chunk=1024 #2014kb wf=wave.open( ...

  6. pyaudio:基于pyaudio利用Python编程实现播放音频mp3、wav等格式文件

    基于pyaudio利用Python编程实现播放音频mp3.wav等格式文件 目录 输出结果 实现代码 输出结果 实现代码 T1.while循环输出数据流的方法 def play():chunk=102 ...

  7. android 播放器 wav 无法播放,对于Android媒体播放器mp3与wav(For android media player mp3 vs. wav)...

    对于Android媒体播放器mp3与wav(For android media player mp3 vs. wav) 我想知道在Android媒体播放器上加载和播放小wav是否比较快的小文件更快. ...

  8. [RK3399][Android7.1] 调试笔记 --- MediaPlayer播放在线mp3失败

    Platform: RK3399 OS: Android 7.1 Kernel: v4.4.83 现象: 使用MediaPlayer播放在线mp3歌曲,提示播放错误. Log: 07-02 11:14 ...

  9. rk3399-7.1 MediaPlayer播放在线mp3失败

    Platform: RK3399 OS: Android 7.1 Kernel: v4.4.83 现象: 使用MediaPlayer播放在线mp3歌曲,提示播放错误. Log: 07-02 11:14 ...

最新文章

  1. [蓝桥杯]2016蓝桥省赛B组题目及详解
  2. ElasticSearch学习笔记-02集群相关操作_cat参数
  3. 基础知识—函数-默然参数
  4. CentOS7下简单安装python3.7.0步骤
  5. cass转换jpg_【转】南方CASS作原有地形图数字化--对扫描栅格图像进行校正及矢量化...
  6. 【cofface】酷派手机升级助手Coolpad Download Assistant图文教程
  7. Springboot源码解读
  8. matlab 分数阶的预估校正算法及实现
  9. 8年开发,连登陆接口都写这么烂...
  10. 不是吧!你还在手动拉窗帘?
  11. Android--单元测试
  12. Python算法之旅元组的风暴之最长上升子序列
  13. 双目视觉(六)U-V视差
  14. 【go-jira】go根据jql获取jira数据,包括total及bug的平均未解决时间
  15. 深度残差收缩网络简要解读
  16. 卸载CUDA,安装pytorch
  17. 万字 Java 知识地图助你成为 Offer 收割机
  18. 08-egg服务端发送请求
  19. 数据库常用的存取方法
  20. 2018年9月9日 学习第一天

热门文章

  1. nds android模拟器存档,NDS模拟器怎么设置随时存档?随时存档操作流程一览
  2. 计算机应用毕业评审表,毕业论文设计评审表.doc
  3. Java基础-SSM之mybatis一对一关联
  4. 计算机全名怎么恢复原名,不懂就问,为啥fpx的下路一直念真名?
  5. 爬山法和模拟退火算法求解选址问题
  6. html选择文件用按钮,html点击button弹出挑选文件,上传,这个怎么实现?
  7. 2020年游戏年收入同比增幅游戏出口近千亿元规模
  8. siesta在Linux运行,siesta在centos下编译问题
  9. echarts实现中国地图数据展示
  10. 休止角计算机在线计算,PFC休止角(堆积角)滚筒计算——稻谷