0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

STM32 wavplayer播放单声道音频的处理方法

冬至子 来源:JackLiu 作者:JackLiu 2023-11-28 17:17 次阅读

最近在使用rtthread 的 audio设备播放wav的音频MCU使用的是STM32F4,使用过程中发现,不能在播放单声道音频的时候会特别快,究其原因是因为STM32的I2S是双声道输出,而音频输入的声音是单声道的,相当于少一个声道的数据,其实如果播放立体声音频就没有问题了。

但是使用立体声音频会增加WAV文件的体积,这样占用的FLASH空间就大了,目前想到的方案是将读取到的音频数据扩展到双声道,我们直接修改wavplayer.c中的内容,如果有更好的解决方案,欢迎指正:

修改点如下:

1、声明一个声道数变量来记录当前音频的声道数,在声明一个ushort类型的指针,方便后边计算

2、获取当前音频的声道数

3、获取音频文件读取缓冲区的指针

4、如果是单声道音频,那么将 单声道的音频扩展到左右两个声道,形成双声道数据流

1.jpg

2.jpg

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • mcu
    mcu
    +关注

    关注

    146

    文章

    17178

    浏览量

    351675
  • 缓冲器
    +关注

    关注

    6

    文章

    1923

    浏览量

    45533
  • STM32F4
    +关注

    关注

    3

    文章

    194

    浏览量

    28092
  • RTThread
    +关注

    关注

    8

    文章

    132

    浏览量

    40907
  • WAV音频
    +关注

    关注

    0

    文章

    2

    浏览量

    1154
收藏 人收藏

    评论

    相关推荐

    PCM1794使用单声道模式有破音如何解决?

    我使用PCM1794做音频处理,采用单声道模式,发现声音很破,有杂音,沙音等怪怪的现象,就好像声音有残缺或者重叠一样,电路接法如附图,接回立体声模式就很正常,请问是什么原因?是否这种接法有问题?该如何解决?盼复。谢谢!
    发表于 11-05 06:48

    8127+tlv320aic3104设置立体声采集到音频播放是快进音频的声音,怎么解决?

    8127+tlv320aic3104设置单通道采集到的音频播放正常流畅的声音,设置立体声采集到音频 播放出来是快进音频的声音就是
    发表于 11-05 06:31

    使用单声道采集DM365+AIC3101的音频,怎么操作?

    最近在调试DM365+AIC3101音频的问题,使用内核是LINUX 2.6.18, 采用MIC输入. 立体声已经可以正常采集.但是我现在想使用单声道采集声音,这款芯片是否支持?有哪些寄存器需要配置 ?
    发表于 11-01 06:59

    如何使用TLV320AIC34实现4路单声道音频输出?

    大家好,我现在使用TLV320AIC34实现4路单声道音频输出,很多设计是将立体音输出,这样会占用两个DAC,达不到4路音频输出的效果,如果一路DAC对应一路单声道
    发表于 10-17 08:32

    TPA3116D2双声道输入,是否可以单声道输出?

    1.双声道输入,是否可以单声道输出 2.音频输出信号,是否支持使用adc采样到MCU,进行判断PA是否正常输出,如果可以如何配置采样电路
    发表于 10-10 08:26

    TPA6120A2的音频支持左右声道单声道输入吗?

    TPA6120A2的音频支持左右声道单声道输入吗,规格书中看支持差分输入(LIN+和LIN-,RIN+和RIN-)
    发表于 10-10 07:43

    采用LM4991对单声道音频进行放大,功放LM4991一打开使能,喇叭就会有“噗”的声音如何消除?

    我这边采用LM4991对单声道音频进行放大。为了实现低功耗,在不播放音频时,功放LM4991设置为休眠状态。 但是在测试过程中,发现功放LM4991一打开使能,喇叭就会有“噗”的声音,请问如何消除这个声音呢? 输入无信号,使能
    发表于 08-21 07:33

    5W单声道G,5W单声道G,F类音频功放,让平民音箱动听

    CS5290E是一款高性能、低成本、低功耗的音频功放IC,采用CMOS工艺,具有电容式升压型GF类单声道音频功放的特点。该芯片集成了ChargePump升压模块和AB类和D类两种工作模式,具有防破音
    的头像 发表于 05-15 15:13 1481次阅读
    5W<b class='flag-5'>单声道</b>G,5W<b class='flag-5'>单声道</b>G,F类<b class='flag-5'>音频</b>功放,让平民音箱动听

    IU8200差分输入,超低底噪300mW单声道高性能音频驱动芯片

    IU8200差分输入,超低底噪300mW单声道高性能音频驱动芯片
    的头像 发表于 04-10 19:58 682次阅读
    IU8200差分输入,超低底噪300mW<b class='flag-5'>单声道</b>高性能<b class='flag-5'>音频</b>驱动芯片

    2瓦单声道音频功率放大器TPA0211 数据表

    电子发烧友网站提供《2瓦单声道音频功率放大器TPA0211 数据表.pdf》资料免费下载
    发表于 03-20 10:29 0次下载
    2瓦<b class='flag-5'>单声道</b><b class='flag-5'>音频</b>功率放大器TPA0211 数据表

    350 mW单声道音频功率放大器TPA301数据表

    电子发烧友网站提供《350 mW单声道音频功率放大器TPA301数据表.pdf》资料免费下载
    发表于 03-19 17:07 0次下载
    350 mW<b class='flag-5'>单声道</b><b class='flag-5'>音频</b>功率放大器TPA301数据表

    350 mW单声道音频功率放大器TPA311数据表

    电子发烧友网站提供《350 mW单声道音频功率放大器TPA311数据表.pdf》资料免费下载
    发表于 03-19 16:56 3次下载
    350 mW<b class='flag-5'>单声道</b><b class='flag-5'>音频</b>功率放大器TPA311数据表

    2.9 W/声道单声道D类音频子系统TPA2051D3数据表

    电子发烧友网站提供《2.9 W/声道单声道D类音频子系统TPA2051D3数据表.pdf》资料免费下载
    发表于 03-19 16:28 0次下载
    2.9 W/<b class='flag-5'>声道</b><b class='flag-5'>单声道</b>D类<b class='flag-5'>音频</b>子系统TPA2051D3数据表

    1瓦单声道音频功率放大器TPA4860数据表

    电子发烧友网站提供《1瓦单声道音频功率放大器TPA4860数据表.pdf》资料免费下载
    发表于 03-19 14:02 0次下载
    1瓦<b class='flag-5'>单声道</b><b class='flag-5'>音频</b>功率放大器TPA4860数据表

    700 mW单声道低压音频功率放大器TPA711数据表

    电子发烧友网站提供《700 mW单声道低压音频功率放大器TPA711数据表.pdf》资料免费下载
    发表于 03-19 10:00 0次下载
    700 mW<b class='flag-5'>单声道</b>低压<b class='flag-5'>音频</b>功率放大器TPA711数据表