完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
最近在用STM32F4的探索者做个远程音频处理的测试程序,功能是STM32F4探索者使用IIS进行音频数据采集,然后通过网络发送到远程进行实时播放。
现在发现的问题是:采集的音频数据传输到远程端后,远程端收到的数据居然有沉淀! 两端设置: 近端:STM32F4探索者,IIS采集音频数据,采样率8K,16bit,双声道,采集到数据后直接通过网络发送出去; 远端:STM32F4系列开发板,IIS接口播放网口收到的数据,采样率8K,16bit,双声道,DMA中断里直接填充网络接受缓冲区的数据到IIS播放; 状况:远端可以听到采集过来的声音,声音很正常,但是远端收到的音频数据比其自身播放的速度要快。 网络接受缓冲区会在运行几十秒后溢出! 疑惑:按照我目前的理解,网络通信很正常,没有阻塞,也没有延迟丢包。两边的音频设置是一样的,播放时需要的数据量应该跟采集的数据量是相等的,网络接受缓冲区不会溢出。 请原子哥帮忙分析下,为啥播放的速度比采集的要慢呢? |
|
相关推荐
8个回答
|
|
|
|
|
|
你IIS配置,是不是有问题啊.
|
|
|
|
|
|
|
|
谢谢你的解答。
播放端断流的情况,我检测过,没有发现,每次中断都取到了足够的数据量。 晶振的差异可能性更大些吧。关于音频的多发和少发你有没有比较好的处理方式呢? 我第一次开始弄音频方面的,不是很懂,希望能多多请教。 我现在给缓冲区设置一个阀值,超过这个值就把里面的数据给主动删掉很少一部分。这样处理后基本不会溢出了,但是说话声音大了以后就会听到有些断音夹在里面。 |
|
|
|
时钟不同步的原因,插值或丢帧来处理
|
|
|
|
丢帧会出现数据卡顿啊
|
|
|
|
请问楼主,近端:STM32F4探索者,IIS采集音频数据,采样率8K,16bit,双声道,采集到数据后直接通过网络发送出去;
如何把采集到的数据直接通过网络发送出去。采集到的数据是存储在sd卡上吗?还是直接去读取IIS上的数据呢? |
|
|
|
|
|
|
|
只有小组成员才能发言,加入小组>>
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-4-19 13:13 , Processed in 0.663047 second(s), Total 97, Slave 85 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号