【问题标题】:How to increase volume of a sound and remove background noise in objective c如何在目标 c 中增加声音的音量并消除背景噪音
【发布时间】:2013-06-11 12:27:16
【问题描述】:

我使用 AVFoundation Framework 录制了声音。它播放得很好,但它包含很多周围的噪音。

我需要消除这种噪音并放大声音以增加音量。

任何人都可以帮助提供一些示例代码。或者请指导我如何进一步进行。

【问题讨论】:

  • 这可能很重要。 (即超出可以在单个 SO 问题中充分解决的范围)您应该搜索更多“CoreAudio 降噪规范化”并获得一些背景知识。这样您就可以提出更有针对性的问题,更有可能获得有用的答案。
  • 我搜索了很多。但我不确定要检查哪些 API 以及如何将声音转换为其他 API 可以用来过滤它的基本级别。请帮忙。
  • 这个问题在一定程度上涵盖了规范化:stackoverflow.com/questions/14327091/normalize-audio-file-obj-c
  • 谢谢。我会对此进行调查,并会回复。
  • 在更有利的环境中再次录制声音可能会更简单/更好。

标签: ios objective-c ios4 core-audio audiotoolbox


【解决方案1】:

您也许可以转换到频域,在频域中处理以去除噪声,然后再转换回时域。

为此,您可以使用重叠帧。事实上,您可以直接将代码从这里提取出来:http://www.dspdimension.com/admin/pitch-shifting-using-the-ft/,然后用您自己的算法替换他正在完成音高转换的几行代码以减少噪音。

但正如 Paul R 指出的那样,您将无法设计一种能够处理所有情况的算法。

您应该真正查看频域中的数据(例如,有大量适用于 iPhone 的频谱分析仪应用程序),并了解目标信号在哪里,噪声在哪里,以及您是否很可能能够将它们分开:如果您不能用肉眼轻松地做到这一点,那么您几乎没有机会获得算法来做到这一点。

【讨论】:

    猜你喜欢
    • 2015-09-16
    • 2022-08-07
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多