2

谁能告诉我如何将音频文件(.au)中的存储音频数据读入字节数组?我查看了 Oracle 上的 Java 文档,但我不知道如何使用这些信息来编写程序。

4

1 回答 1

3

我通过“音频数据”猜测您想要 AU 文件中的音频样本,不包括标题信息和元数据。如果您只想将文件的内容加载到内存中,请按照建议使用 FileInputStream。

否则,要阅读示例,您可以使用AudioSystemAudioInputStream

File myFile = new File("test.au");
byte[] samples;

AudioInputStream is = AudioSystem.getAudioInputStream(myFile);
DataInputStream dis = new DataInputStream(is);      //So we can use readFully()
try
{
    AudioFormat format = is.getFormat();
    samples = new byte[(int)(is.getFrameLength() * format.getFrameSize())];
    dis.readFully(samples);
}
finally
{
    dis.close();
}
于 2012-11-01T01:04:52.287 回答