【问题标题】:Getting uniform audio levels from AudioRecord across different devices从不同设备的 AudioRecord 获取统一的音频电平
【发布时间】:2016-02-16 08:23:54
【问题描述】:

我正在尝试整合一个录音应用程序,我注意到当在不同设备上运行相同的代码时(使用 LG G4、三星 S4 尝试),AudioRecord 返回的音频样本级别存在巨大差异。仅供参考,我的目标是 API 级别 21。

有没有办法让不同设备上的返回值大致落在同一范围内?

谢谢

【问题讨论】:

  • 压缩可以解决问题吗?但请记住,输入灵敏度可能因设备而异

标签: android audio signal-processing audiorecord audio-processing


【解决方案1】:

那是因为麦克风具有不同的灵敏度和频率响应。你可以:

  • 跨各种设备获取/测量这些特性并对其进行补偿。
  • 使用某种校准程序。例如,有一个参考扬声器,以给定的电平播放粉红噪声,计算电平并将增益调整到您想要的值。
  • 使用自动增益控制。

【讨论】:

  • 感谢您的回复,我认为建议的选项之一将是可行的方法。但是,在我接受 1) 或 2) 之类的解决方案之前,我想为您建议的解决方案 3) 争取更多。是否可以向我指出有关仅使用代码实时实现 AGC 的好读物?我知道 AGC 通常是在硬件中实现的,并不是所有的 Android 设备制造商都这样做。
猜你喜欢
  • 2011-05-11
  • 2013-02-09
  • 1970-01-01
  • 2012-12-12
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2013-03-01
  • 1970-01-01
相关资源
最近更新 更多