OpenEdv-开源电子网

 找回密码
 立即注册
正点原子全套STM32/Linux/FPGA开发资料,上千讲STM32视频教程免费下载...
查看: 6841|回复: 4

stm32f103+vs1053b怎么实现多个语音包的组合播放?

[复制链接]

6

主题

47

帖子

0

精华

初级会员

Rank: 2

积分
162
金钱
162
注册时间
2020-3-13
在线时间
32 小时
发表于 2020-4-17 11:36:11 | 显示全部楼层 |阅读模式
1金钱
比如:‘5’ ‘6’ ‘7’ ‘米’   这四个单独的语音包    组合成   1个 语音包  ‘756米’   这样再进行播放,可以实现不?

我现在能够实现  ‘7’ ‘5’ ‘6’ ‘米’ 这样依次播放,但由于每个语音包 音调 的差距,听着不舒服也不连贯

有没有好的解决方法?现在 是在freertos里面 移植的mp3案例然后再改动的

最佳答案

查看完整内容[请看2#楼]

不要存储成MP3,存储成二进制文件,用WAV方式,但是不保存成单个WAV文件,而是保存成纯数据形式,这样在播放之前,只需要发送一次WAV头,初始化VS1053,然后送不同的二进制文件进去,立马就会出不同的声音。
正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165309
金钱
165309
注册时间
2010-12-1
在线时间
2108 小时
发表于 2020-4-17 11:36:12 | 显示全部楼层
不要存储成MP3,存储成二进制文件,用WAV方式,但是不保存成单个WAV文件,而是保存成纯数据形式,这样在播放之前,只需要发送一次WAV头,初始化VS1053,然后送不同的二进制文件进去,立马就会出不同的声音。
回复

使用道具 举报

4

主题

203

帖子

0

精华

资深版主

Rank: 8Rank: 8

积分
2923
金钱
2923
注册时间
2019-8-16
在线时间
315 小时
发表于 2020-4-17 12:59:53 | 显示全部楼层
帮顶!!
回复

使用道具 举报

6

主题

47

帖子

0

精华

初级会员

Rank: 2

积分
162
金钱
162
注册时间
2020-3-13
在线时间
32 小时
 楼主| 发表于 2020-4-20 16:51:40 | 显示全部楼层
正点原子 发表于 2020-4-17 11:36
不要存储成MP3,存储成二进制文件,用WAV方式,但是不保存成单个WAV文件,而是保存成纯数据形式,这样在播放 ...

原子哥,有没有例程啊,我一开始也想到了 大概您说的这种  ,但具体处理起来还是不会,一个单个wav文件有十几k,纯数据文本也要十几k吧,图中是我在网上找的可以读取wav文件的头部信息,[img]C:\Users\13457\DesktopC:\Users\13457\Desktop\QQ图片20200420164738.png[/img] ,大致原理懂了,实际的操作还是懵着的,有例子的话可以学着改
回复

使用道具 举报

6

主题

47

帖子

0

精华

初级会员

Rank: 2

积分
162
金钱
162
注册时间
2020-3-13
在线时间
32 小时
 楼主| 发表于 2020-4-21 10:05:23 | 显示全部楼层
正点原子 发表于 2020-4-17 11:36
不要存储成MP3,存储成二进制文件,用WAV方式,但是不保存成单个WAV文件,而是保存成纯数据形式,这样在播放 ...

原子哥,那我 可以这么做不? 我将所有的语音包都以wav纯数据的形式去除头文件44个字节后保存,头文件的44个字节单独保存,都存到SD卡中,然后调用的时候将这些数据 组包到到一块,那个  通过文件系统 能实现 在spi SD卡中  组合这些语音包吗 ?
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则



关闭

原子哥极力推荐上一条 /2 下一条

正点原子公众号

QQ|手机版|OpenEdv-开源电子网 ( 粤ICP备12000418号-1 )

GMT+8, 2024-11-22 17:14

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

快速回复 返回顶部 返回列表