是否有算法或启发式方法来确定数字音频数据是否被裁剪(http://en.wikipedia.org/wiki/Clipping_(audio%29#Digital_clipping)?
发布于 2008-10-06 20:41:41
简单的答案是,如果任何样本具有最大值或最小值(对于16位样本,分别为-32768和+32767 ),则可以考虑对其进行裁剪。严格来说,这并不是真的,因为这个值实际上可能是正确的值,但是没有办法判断+32767是否真的应该是+33000。
对于更复杂的答案:存在这样的采样计数限幅检测器,其要求x个连续的样本处于最大/最小值,以便它们被认为是限幅(其中x可以高达7)。这里的理论是,仅在几个样本中进行剪辑是听不到的。
也就是说,有一些音频设备即使在最大值以下(以及最小值以上)也能听得见。出于这个原因,典型的建议是将音乐峰值设置为-0.3 dB而不是0.0 dB。您可能希望将该级别以上的任何样本视为裁剪。这完全取决于你需要它做什么。
发布于 2008-09-09 22:15:43
如果你曾经收到过最大值或最小值,那么根据定义,你就是在裁剪。这些值代表它们的特定值以及所有超出的值,因此它们最好用作外部边界检测器。
-Adam
发布于 2008-09-09 22:33:21
亚当说的话。您还可以添加一些逻辑来检测一段时间内的最大幅度值,并仅标记这些值,但本质上是确定信号是否/何时达到最大幅度。
https://stackoverflow.com/questions/53012
复制相似问题