【问题标题】:sound record tickling / ticks / noises / spikes声音记录发痒/滴答声/噪音/尖峰
【发布时间】:2012-05-09 15:09:38
【问题描述】:

我在 Android 2.3.4 设备上成功录制声音(完整设置为:AudioSource.MIC + 44100Hz + AudioFormat.CHANNEL_IN_MONO + AudioFormat.ENCODING_PCM_16BIT)。

我还正确地将 PCM 数据写入 WAV 文件。

问题是那些噪音让录音变得很糟糕。

attached file 正是我的意思。注意明显的尖峰。

我用市场上的一些录音应用测试了相同的录音(附件中的音乐),它们以完美的方式录音,没有噪音根本 - 它是如何完成的?这是我应该设置的设置(我使用AudioRecord)吗?我应该用某种算法手动过滤这些噪音吗?我应该寻找什么?

如果由于某种原因无法下载附件或链接完全损坏,请在评论中告诉我。

谢谢!

编辑#1:
我用的是 Galaxy S2。

【问题讨论】:

  • 这可能是硬件问题。我在一些手机和小型相机上注意到,当他的设备在太空中被操纵时,麦克风很容易受到碰撞和敲击。因此,在录制时移动 S2可能会导致尖峰。你能排除这个吗?
  • @JamieTaylor 嗨,是的 - 绝对不是这种情况,因为我在设备放在桌子上时录制声音 - 没有任何移动。
  • 再次强调一下 - 在完全相同的条件下,我使用了另一个录音软件,它可以提供完美的声音。很奇怪。
  • 我只是想问一下,以确保。你知道吗? :-)
  • 我也会这样做,没关系 :)

标签: android audio-recording


【解决方案1】:

我认为 44100Hz 对于您的手机功能来说太过分了,而且总的来说,对于所有手机功能来说:手机不是 HI-FI。
尝试使用 8000Hz。
然后您可以更改此值,直到找到可接受的录制质量。

【讨论】:

  • 嗨 rosco,我不这么认为。我使用的是 Galaxy S2。其次,正如我在原帖中所说,另一个录音应用程序可以完美地录制我尝试用自己的代码录制的声音。
  • 好的。但是,你试过了吗?或者您确定您的应用程序使用与其他录音应用程序相同的算法? 44100Hz 是每秒采样数(CD 质量),你需要一个非常好的硬件和软件来编码和解码它。只需尝试验证它是否更好/相等/最差,然后决定您的下一步:)
  • 我试过了,你是对的。不仅如此,我还发现为 AudioRecord 提供比AudioRecord.getMinBufferSize() 建议更大的缓冲区即使在 44100Hz 下也能清除声音。谢谢:)
  • 我在使用 44100 记录采样率时遇到文件大小问题。因此我尝试了不同的采样率,例如 8000、11025、22050、32000、44056,但没有用。但是有些设备接受音频配置,但音频质量太差。某些设备显示缓冲区大小无效或音频配置无效的错误。我完全困惑如何以低文件大小录制清晰的音频。请帮帮我。
猜你喜欢
  • 2022-12-21
  • 1970-01-01
  • 1970-01-01
  • 2011-04-13
  • 1970-01-01
  • 2021-05-13
  • 2015-10-01
  • 2015-09-16
  • 1970-01-01
相关资源
最近更新 更多