智能硬件如何自测声学部分是否符合量产条件

简介: 智能硬件如何自己就能开展声学自测工作。

先明确智能硬件中声学(麦克风)使用的三个场景,避免简单的问题复杂化。

第一个场景,通话使用。这是大部分智能硬件设计麦克风的主要原因,很多声学做起来感觉很简单的错觉也来源于此。

第二个场景,较安静环境下人机交互。复用第一个场景的声学硬件,第二个场景马马虎虎也能用,虽然部分情况下效果不理想,但是,还没到完全不能用的状态。

第三个场景,高噪环境下人机交互。主要是户外和人流量较多的环境下使用人机交互,第一个场景的声学硬件完全不能使用。

对于第一个场景,通话使用,现在的主流芯片基本上已经内置了通话降噪算法,再加上绝大部分通话都是在安静场景下,因此,只要麦克风的性能指标不是太拉跨、电路设计没有硬伤,第一个场景中智能硬件的声学部分并不用做额外的测试。但是,很多开发者带着这样的惯性开发第二个和第三个场景的智能硬件时,就完全走不通了,售后问题比比皆是,基本都集中在声音处理上。

那么,对于第二个和第三个场景,应该如何科学地自测声学部分呢?怎么判断声学部分是否符合量产条件呢?

下面分享声学自测的规范。

测试环境准备:

  • 环境安静,噪音<40dB,如无条件,选安静会议室
  • 设备周围无遮挡物

测试工具准备:

  • 待测设备---预留50MB存储空间
  • 专业声压计--- 条件有限可使用手机app(例:手机应用市场-- Sound Meter HD)
  • 音频分析软件---Audition
  • 高保真音箱---条件有限可使用蓝牙音箱,无蓝牙音箱可使用电脑
  • 密封材料---淘宝购买 EVA海绵密封胶带10mm厚度

测试音频准备:

  • 密封性测试音频(白噪声)
  • 1khz音频
  • 信号质量测试音频

测试附件准备:单独提供

  • 测试记录表格《声学测试结果目标》
  • 测试音频附件

测试方法

一、自播自录制测试

1-10项测试只录制一个音频:

(1)设备调节到100%音量

(2)设备先开始录制音频并保存,然后设备播放信号质量测试音频

 (3) 自播自录后,人正常说话,测试mic处人声音量为65db,保存原始音频和识别音频

1、mic和回采幅度检查

最低幅度检查

1.用Audition软件打开音频,检查采样值。识别引擎要求采样值>2k,确保mic处65db人正常说话时峰值振幅采样值>2k。否则需要提高mic增益

截幅检查

  1. 检查每个声道振幅最大部分,确保每个声道无截幅
  2. 鼠标中间放大波形,保证波形连续,且无削顶

整改方式:减小增益或降低最大音量,让设备最大音量播放歌曲时,音频不截幅

2、幅度一致性(单麦免测)

(1)确保所有mic声道的幅度均值差值≤3db

         示例:1声道(-12db ),2声道(-9db),相差3db合格

(2)回采的增益不能太小,最大音量时在[-1,-9] DBFS之间

(3)双回采平均幅度差≤3db

3、通道顺序稳定性检查

多次录音, 同一个mic对应软件中的声道要固定。可以多次录音按相同顺序用手轻触麦克风,录音上会有比较明显的振幅,检查多次录音的麦序

4、底噪检查

(1)不播放音乐时,回采底噪<-65dbfs  

        安静环境下,设备底噪 < -50dbfs

操作方法:最右侧数字区域鼠标右键选择Decibels

(2)运行时底噪检查(设备运行时自噪较大的设备才需要测,比如投影仪运行时有风扇噪声,扫地机工作时的噪声,其他免测。)

   让设备运行应用,使cpu占用>70%, 此时用声压计测量mic处噪声≤50db

5、丢数据检查

查看音频的长度(Duration)是否为21.6

丢数据可能原因:

(1)重采样算法异常

(2)驱动异常

2.在频谱上找一竖一竖的地方, 看时域波形采样点是否减少,如下图的频域波形,对应的时域少了5个采样点

6、最大音量检查

设备最大音量播放音频进行测试。

  1. AEC算法消除量为30db左右, 建议麦克风口处最大音量<=85dB,打断唤醒效果较好
  2. 特殊场景,例如全双工, 建议麦克风口处最大音量<=75db,打断唤醒效果较好

7、回采信号检查

(1)回采信号提前于mic信号,时间差<80ms

(2)每次录制时,回采和MIC时延差稳定

(3)回采与原信号波形基本一致,无畸变

(4)回采不能截幅

反例: (1)回采比MIC慢

          (2)回采和MIC信号的时间差太长

          (3)电视盒子外接电视的喇叭,时延差不可控,效果会受很大的影响

8、波形失真

原因:音量太大导致失真

质量测试音频原始波形(下图)

设备回采波形失真(下图)注:轻微型波形失真也算失真

9、单双回采检查

如果有2个喇叭,2回采信号效果更好

10、喇叭主观听感

测试方法:最大音量播放0dB 20Hz-20kHz的扫描信号,有无POP噪声/失真感/破音/共振音/杂音

11、麦克风阵列角度检查

二、相位一致性检查(单麦免测)

正常情况:麦克风同一时刻的相位一致(波形一致)

                 回采同一时刻可以一致或者反向

检查方法:找原始音频正弦波的位置进行检查

异常情况

三、密封性和通道顺序测试

1、录制音频

    1.音箱和待测设备距离20~30cm

    2.音箱播放,调节音量使待测设备麦克风(Mic)处音量为80~90dB(估算)

    3.设备录音并保存文件,命名为 sealing_test.pcm

    4.使用EVA海绵胶带10mm厚度(淘宝可购买)按逆时针顺序逐个密封mic,密封后停顿5~10秒,然后换下一个mic堵住继续该操作至结束。

2、 导入音频文件

1.结束录音,导出录音文件,确保格式为wav。

2.拖动文件到audition软件中,根据设备情况选择采样率和声道数

由于白噪声能量较高,可以清楚看到被堵mic的频段,同时也能看到mic的顺序。如下图所示,实际mic顺序和测试顺序一致,时域谱中每个通道振幅明显较大的部分(或者频域谱中每个通道中暗的部分)即为被堵住mic的部分。

3.、对比声道振幅

     1.单击鼠标左键不松开,拖动选择区域后松开鼠标左键, 选中声道1中堵住mic停顿5s~10s区间的部分

       注意:在选择扫描选区的时候,请选择停顿 5~10s 的中间的平坦部分,不要将有信号残留的部分选中,这部分会影响最后的结果!

    2.依次点击窗口(Window),振幅统计(Amplitude Statistics),扫描选区(Scan Selection)

   3.查看平均RMS振幅(Average RMS Amplitude),声道1密封 -57.26dB,其他声道未密封为-28dB,差值30dB>气密标准10dB,单声道气密性合格。要求设备所有mic气密性合格

反例:第2和第6声道气密性不合格

四、算法效果测试

使用降噪测试工具处理保存的质量测试音频,检查降噪后的音频回声残留量,残留噪声低于-30dbfs

以上,是整个声学部分自测的全部流程。

目录
相关文章
|
存储 算法 编译器
【C++ TypeName用法 】掌握C++中的TypeName:模板编程的瑞士军刀
【C++ TypeName用法 】掌握C++中的TypeName:模板编程的瑞士军刀
783 1
Java——接口(interface)(概念理解+应用举例)
Java——接口(interface)(概念理解+应用举例)
1857 0
Java——接口(interface)(概念理解+应用举例)
|
网络安全 开发工具 数据安全/隐私保护
|
12月前
|
安全 程序员 编译器
【实战经验】17个C++编程常见错误及其解决方案
想必不少程序员都有类似的经历:辛苦敲完项目代码,内心满是对作品品质的自信,然而当静态扫描工具登场时,却揭示出诸多隐藏的警告问题。为了让自己的编程之路更加顺畅,也为了持续精进技艺,我想借此机会汇总分享那些常被我们无意间忽视却又导致警告的编程小细节,以此作为对未来的自我警示和提升。
1235 101
|
搜索推荐 前端开发 算法
基于用户画像及协同过滤算法的音乐推荐系统,采用Django框架、bootstrap前端,MySQL数据库
本文介绍了一个基于用户画像和协同过滤算法的音乐推荐系统,使用Django框架、Bootstrap前端和MySQL数据库构建,旨在为用户提供个性化的音乐推荐服务,提高推荐准确性和用户满意度。
877 7
基于用户画像及协同过滤算法的音乐推荐系统,采用Django框架、bootstrap前端,MySQL数据库
|
10月前
|
IDE 程序员 API
一文彻底拿捏DevEco Studio的使用小技巧
本文介绍了DevEco Studio的安装与使用,包括其特性、常用快捷键、设置中文环境和文件注释模板等内容。DevEco Studio是华为为HarmonyOS开发者提供的集成开发环境(IDE),最新版本5.0.0增加了多项功能,如工程外模块代码支持、构建字节码har包等,极大提升了开发效率。通过简单步骤即可完成安装,并能轻松查阅组件API文档。跟随程序员Feri一起快速掌握鸿蒙开发!
1076 78
|
编解码 自然语言处理 数据可视化
精通 Transformers(四)(4)
精通 Transformers(四)
437 0
|
人工智能 IDE Go
体验了下豆包MarsCode编程助手,惊艳到我了!
豆包 MarsCode 是一款 AI 编程助手,提供智能代码补全等功能,支持多种编程语言及 IDE,涵盖代码解释、审查与修复等辅助功能,旨在提升开发效率。其支持线上编辑器,无需搭建环境即可运行代码,体验接近本地 VS Code。尽管部分功能解释略显不足,但整体表现出色,可无缝替代 GitHub Copilot,适合希望提高开发效率的程序员使用。无论是在本地还是线上,MarsCode 都能显著提升编程体验。
1528 2
体验了下豆包MarsCode编程助手,惊艳到我了!
|
存储 人工智能 安全
AI伦理与法规:确保技术安全可控
【7月更文第20天】随着人工智能(AI)技术的飞速发展,其在医疗、金融、教育、交通等领域的应用日益广泛,极大地推动了社会进步和经济发展。然而,AI的广泛应用也引发了诸多伦理问题和对个人隐私的潜在威胁,这些挑战要求我们在追求技术创新的同时,必须建立和完善相应的伦理规范与法律法规框架,以确保技术的安全可控。本文将探讨AI发展中的主要伦理问题、隐私保护策略以及相关的法律法规,并通过代码示例展示如何在实践中实施隐私保护措施。
909 0
|
机器学习/深度学习 人工智能 数据挖掘
【人工智能】Transformers之Pipeline(一):音频分类(audio-classification)
【人工智能】Transformers之Pipeline(一):音频分类(audio-classification)
558 0