我想提取与声音片段的某个区域相关的样本字节数据,例如声音片段中的一个单词,以便获得仅与特定单词有关的样本数据集合,然后我可以通过该特定单词FFT。如何从整个声音文件中存在的字节集合中识别出该数据集合?将文件中的某些字节数据转换为2字节值后,看起来像这样,因为它是16位声音文件(44100Hz 15秒)。
49150.0
43010.0
15622.0
58886.0
19460.0
35583.0
0.0
7930.0
507.0
2303.0
59897.0
39419.0
517.0
6663.0
9989.0
13055.0
9210.0
我知道这些数据是在时域中的,并且我看不到数据有任何重大变化,例如可以识别为静默的0集合。我将能够在时域中做到这一点,还是必须将这些数据带到频域,然后过滤掉不必要的数据并进行反向FFT,以获得有意义的数据集合。提前致谢。
最佳答案
做到这一点的一种方法(可能是最简单的方法)是将声音文件加载到音频编辑应用程序中,该应用程序可让您设置选择的起点和终点,并且只需聆听和移动选择点,直到听到您想要的声音即可。试图找到可以由软件算法使用的那些端点的准确和健壮的描述是一个更加困难的问题。
关于java - 检测仅与声音文件的特定部分相关的样本数据,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/8775944/