用Java从WAV文件中提取样本

时间:2012-02-16 04:11:35

标签: extract wav javasound sample

如何使用java从录制的WAV音频文件中提取原始样本?

我提到的一个网站包含一些像这样的样本值

例如,以下是WAVE文件的开头72个字节,字节显示为十六进制数字:

52 49 46 46 24 08 00 00 57 41 56 45 66 6d 74 20 10 00 00 00 01 00 02 00 22 56 00 00 88 58 01 00 04 00 10 00 64 61 74 61 00 08 00 00 00 00 00 00 24 17 1e f3 3c 13 3c 14 16 f9 18 f9 34 e7 23 a6 3c f2 24 f2 11 ce 1a 0d

是否有可能像这样提取?如果是,请解释一下。

1 个答案:

答案 0 :(得分:2)

我曾经研究过直接使用wav文件中的字节的想法,并通过搜索轻松找到格式和规格。但事实证明,在wav文件中可能存在不同数量的标头信息,而不是原始PCM。而且似乎比找出所有具体细节更麻烦。

然而,有一种更简单的方法。您可以像播放一样(通过AudioInputStream)读取wav,但不是将字节发送到Clip或SourceDataLine,而是将它们写入ByteArrayOutputStream。