如何开始将代码移植到 AudioDE

发布者:北极星小鹏最新更新时间:2024-01-09 来源: elecfans关键字:代码移植 手机看文章 扫描二维码
随时随地手机看文章

音频数据引擎 (AudioDE) 是一种功耗极低、可合成的数据引擎内核,可对其进行编程以支持跨所有终端设备目标的各种音频和语音编解码器。AudioDE 在其数据路径中有许多功能单元,可以有效地执行音频算法。这些特定于音频的资源、通用资源和总线基础设施的组合提供了一个数据引擎,能够针对各种算法,同时在音频处理方面特别高效。


回声消除就是一种这样的算法,它可以在 AudioDE 上实现,以利用 AudioDE 的音频处理架构的固有优势。在无线耳机、免提车载套件或移动语音终端等通信设备中,声学回声消除是必要的。


通过描述自适应回声消除算法在 AudioDE 上的实现,本应用笔记提供了 AudioDE 代码开发流程的“入门”示例以及一些重要的系统注意事项。


回声消除

回声是由远端扬声器和麦克风之间存在反馈路径引起的(图 1)。如果没有声学回声消除,对着麦克风说话的人会在说话几毫秒后听到他/她的声音回声。由于反馈路径随时间变化,因此需要一种自适应滤波方法来估计回声,然后可以从传入的语音信号中减去回声。

pYYBAGDMXSWAWHCyAACJ7PNmBZI374.png

可以在多个位置设置反馈路径。在免提车载电话系统中,从远处扬声器发出的声音可以从挡风玻璃、侧窗和车顶等坚硬表面反射回来。在无线耳机中,可以通过将麦克风和听筒固定在一起的硬质材料来设置反馈路径。在每个应用中,反馈路径的特性是不同的。反馈路径的一个重要特性是引入了多少延迟——大于 16ms 的延迟使得扬声器可以检测到回声;延迟越大,回声越明显。回声的尾部长度代表所有回声路径引入的最大延迟长度,它决定了自适应滤波器(时域处理)的抽头大小,以实现有效的回声消除。在汽车环境中,例如,典型的尾部长度为 32 毫秒。对于以 8 kHz 采样的语音,自适应滤波器的抽头大小将为 256 (8000 x 0.032)。


今天的数字通信系统对回声消除提出了额外的挑战,因为语音编码方案会在回声路径中引入 100 毫秒量级的额外延迟。270ms 的尾部长度是这种回声路径的典型数字,它需要一个抽头大小为 2048 的自适应滤波器!由于无线终端的价格压力,一些回声消除负担会输出到手机之外。


更复杂的频域处理允许更有效地抑制大抽头尺寸的回声。它还具有允许更好地抑制非线性系统(模拟组件)产生的噪声的优点。但是对于本应用笔记示例,我们将坚持使用时域处理,并说明如何在 AudioDE 上实现最小均方 (LMS) 自适应滤波器以消除回声。

pYYBAGDMXTGAOZ5cAAChkjSPra0477.png


关键字:代码移植 引用地址:如何开始将代码移植到 AudioDE

上一篇:消费类应用机顶盒设计
下一篇:扫地机器人为何能做到如此智能?智能避障是怎么实现的?

推荐阅读最新更新时间:2024-11-13 09:17

-boot移植(十一)---代码修改---支持nandflash
一、移植前的修改 1.1 include/configs/jz2440修改   原来的定义:      可以看出,要先定义CONFIG_CMD_NAND才能使能NANDFlash。   这个在我们文件中的82行有定义,所以不需要定义了。      将里面的S3C2410全部改为S3C2440:    1.2 drivers/mtd/nand/修改   拷贝s3c2410_nand.c 成 s3c2440_nand.c      在此目录的makefile中添加 s3c2440_nand.c      修改s3c2440_nand.c 文件,从board_nand_init 逐行检测修改,代码如下: 1 #include
[单片机]
-boot<font color='red'>移植</font>(十一)---<font color='red'>代码</font>修改---支持nandflash
u-boot移植(九)---代码修改---NAND
一、NAND原理      NAND 无地址空间,地址和数据的发送都依赖于LDATA 这一串数据总线。      不看随机页编程,看到从高位到低位的页,总共分为64个页面,每个页的组成是2K + 64 个byte,一个块的大小是(128K + 4K)byte,64页组成一块。 1.1 NAND Flash的编址   nand flash的的页的大小是(2048 + 64)byte,64这个数据是不参与编址的。   访问 nand flash: 发出命令:读、写、擦除 发出地址 传输数据   命令设置如下:    1.2 nand flash的访问      可以看看上面的模式选择,然后对应引脚进行操作,就
[单片机]
u-boot<font color='red'>移植</font>(九)---<font color='red'>代码</font>修改---NAND
小广播
最新嵌入式文章
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

换一换 更多 相关热搜器件
更多往期活动

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved