所以我正在编写一个程序,在没有声音播放时将音频片段分成多个部分。因此,从声音文件创建的所有剪辑仅包含声音部分。我如何使用Java实现这一目标?我计划使用FLAC,但该程序目前也支持WAV。 RMS是确定这个的最佳方法吗?任何代码的奖励积分。
答案 0 :(得分:1)
您可以通过平均样本n和n + 1之间差异的平方来粗略估计采样波形的“响度”。这将为您提供一个粗略的指示,表明这些样本对听者来说是多么“响亮”。
这种方法对高频比对低频更敏感,这就是为什么如果声音具有非常极端的频率分布,它可以关闭很多。
对于精确的解决方案,您需要采用FFT方法和也通过表示听众耳朵的模型来校正提取的频率加权(并非所有频率在相同的DB级别都感觉同样响亮)。