完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
您好!这里想请教一个问题:使用i2s标准模式实时采集音频时,通过定时器中断改变.clk_cfg采样频率,在变频交界处,采集音频信号会发生跳变,请问有什么办法改善?
图2这个实时切换的时候,会导致信号跳变? 图2中红色波形是采样频率为44.1k(16位)的音频信号,。蓝色波形为11025hz(16位)。采用定时器中断(5s),通过类似第一幅图中显示的程序代码,来周期性改变频率,发现它们在切换的交界处,i2s_channel读到的值会从0慢慢上升,好像是一个重新上电的过程,在channel_reconfig之后,大概设置一个700ms-1000ms延时才能改善;但我想实现的是实时切换,请问有什么解决方法?非常感谢! |
|
相关推荐
1个回答
|
|
在这种情况下,音频信号在变频交界处发生跳变的问题可能是由于采样频率变化导致的。为了改善这个问题,可以尝试以下几种方法:
1. **线性插值**:在采样频率变化时,使用线性插值方法来平滑过渡。这意味着在频率变化的交界处,通过计算两个采样点之间的线性插值来生成中间的采样值。这样可以减少跳变现象。 2. **重叠相加法**:在切换采样频率时,可以使用重叠相加法(Overlap-Add Method)来处理信号。这种方法首先将信号分为多个重叠的段,然后在每个段的交界处进行相加。这样可以减少跳变现象。 3. **使用低通滤波器**:在采样频率变化时,可以对信号进行低通滤波处理。低通滤波器可以有效地减少高频噪声,从而减少跳变现象。可以选择一个适当的截止频率,以确保信号的质量和平滑度。 4. **增加延时**:你已经提到了增加延时的方法,这确实可以在一定程度上改善跳变现象。但是,这种方法可能会影响实时性能。可以尝试优化延时时间,以在保证实时性能的同时减少跳变现象。 5. **优化定时器中断**:检查定时器中断的设置,确保中断频率和采样频率之间的比例关系是合适的。这可以帮助减少在切换采样频率时的跳变现象。 6. **软件处理**:在软件层面,可以尝试使用一些信号处理算法,如窗函数、傅里叶变换等,来处理信号,以减少跳变现象。 总之,要解决这个问题,需要从硬件和软件两个方面进行优化。可以尝试上述方法中的一种或多种,以找到最适合你的应用场景的解决方案。 |
|
|
|
只有小组成员才能发言,加入小组>>
1002 浏览 1 评论
554浏览 6评论
463浏览 5评论
有没有办法在不使用混杂模式的情况下实现Wifi驱动程序接收缓冲区访问中断呢?
447浏览 5评论
448浏览 4评论
422浏览 4评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-11-30 01:00 , Processed in 1.085712 second(s), Total 80, Slave 65 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号