gpt4 book ai didi

java - 在人群区域录制音频时,如何使用 Java 消除背景噪音?

转载 作者:塔克拉玛干 更新时间:2023-11-03 04:26:17 24 4
gpt4 key购买 nike

当我使用 JavaSound 或第三方声音捕捉工具捕捉并将其记录到文件中时。然后读回文件修改它,有什么办法可以消除我的 java 应用程序的“背景噪音”。

例如主要人物说话时的道路交通/空气噪音?

谢谢

最佳答案

去除背景噪音非常困难。如果它是均匀的噪声,例如飞机上的“白”噪声,则有一些算法可以去除这些频率分量。但是,如果噪音不均匀且本质上与您的良好录音相似,例如人们在后台说话、街道噪音等,很难将它们分开。对此已有大量研究。

至少,您需要确切地知道什么是好的音频,什么是坏的音频。例如。如果您正在捕获语音,可能会有特殊的音频修复软件可用于将语音与其他声音分开,例如http://www.izotope.com/products/audio/rx/ .如果您录制的是立体声语音,您可能会通过分析语音的左/右位置,然后通过关联左右来移除非语音成分来获得成功。

回复:mkb 的评论:

  1. 当(部分或所有频率分量的)电平低于阈值时,噪声门将使音频静音。这可能会有所帮助,具体取决于您的背景噪音水平,但噪声门通常很烦人,因为只要您的“好”音频存在,您就会听到背景声音,而两者之间是寂静的。
  2. 低通滤波器去除高频分量(它让低频通过)!所以如果你的背景噪音是高频的,它可能会有所帮助。一个简单的 FIR 或 IIR 低通滤波器很容易实现。但如果它具有高频成分,它也会影响您的“好”音频。

关于java - 在人群区域录制音频时,如何使用 Java 消除背景噪音?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6916779/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com