zoukankan      html  css  js  c++  java
  • 转【Qualcomm高通音频】音效调试_录音文件播放有杂音,如何定位原因?

    原文博客:https://blog.csdn.net/crow_ch/article/details/103890147

    一、录音播放数据处理过程介绍

    (1)TX方向

    麦克风(硅麦克风或者主机体麦克风)采集模拟音频信号,经过内部CODEC芯片中的adc转换为数字信号,在经过高通音频DSP处理音效后编码为wav/aac/amr/mp3等格式文件。

    (2)RX方向

    音频文件经过解码、重采样还原为pcm数据,经过DSP处理音效后送到内部CODEC,然后经过DAC转换为模拟信号,送到喇叭。

    二、分析步骤

    1. 先确认RX、TX整个链路的音频信号是否正常?

    录音之后先电脑上播放有无杂音?确认TX

    在调试设备上播放干净音乐有无杂音?确认RX

    以上两步确认是否是RX带来的问题。当然不排除RX和TX同时存在问题的情况。

    2. 单独分析RX或者TX

    这里就需要用到高通软件QXDM QCAT QPST了。

    通过QXDM软件抓取录音或者播放时的QXDM log然后使用QCAT解析QXDM log,获取对应以下tap点的音频信号。

    分析过程如下:

    如果0x152E tap存在杂音,则杂音来源于录音过程,也许当然不良的RX音效会让此音频文件在播放的过程中继续恶化,此时可以对比分析0x1586 tap;如果0x152E tap不存在杂音而0x1586 tap存在杂音,则杂音来源于RX的音效处理模块;
    如果0x152E tap和0x1586 tap都不存在杂音,那么产生原因只能是RX的模拟增益模块也就是外部功放产生的。
    如果确认不是RX造成的,那么接着要继续分析确认录音设备周围是否存在杂音,一般情况下,可能是背光控制有可能造成滋滋声或者蜂鸣音、主板可能造成电容声,还有屏幕可能造成蜂鸣音等等,注意背光和屏幕造成的杂音都需要先进行使能才会出现。
    如果通过以上方法还是没有定位到产生原因,则要追踪录音过程抓取qxdm log逐步分析是哪一步音效处理造成的,重点分析录音过程的0x1586 tap和0x1536 tap。
    如果0x1586就存在杂音,此时要分析的重点则是录音电路是否足够”干净”,是否存在干扰。
    如果0x1586不存在杂音而0x1536 tap存在杂音,那么就需要调整录音音效处理的噪声抑制模块,是否是参数不匹配造成的。

  • 相关阅读:
    hdu 4849
    HDU4850 构造一个长度为n的串,要求任意长度为4的子串不相同
    2014 多校第一场官方题解。
    hdu4862 2014多校B题/ 费用流(最优情况下用不大于K条路径覆盖)(不同的解法)
    dp+分类讨论 Gym 101128E
    优先队列 逆向思维 Gym 101128C
    很好的脑洞题:dfs+暴力 Gym
    树dp...吧 ZOJ 3949
    扫描线(线段树)+贪心 ZOJ 3953
    dp ZOJ 3956
  • 原文地址:https://www.cnblogs.com/-glb/p/14432866.html
Copyright © 2011-2022 走看看