我正在使用Java处理音频数据(WAV文件),并且正在使用AudioInputStream读取音频文件。我有一个问题,当我使用AudioInputStream读取数据时,它是否还包含标题或标题将被删除?
AudioInputStream ais = AudioSystem.getAudioInputStream(file);
ais.read(data);
将会包含哪些数据?所有数据以及标题?我在此链接上阅读了内容。 http://docs.oracle.com/javase/tutorial/sound/converters.html
它说它将返回音频数据,但是如果音频数据也仅意味着数据或标题,我会感到困惑。
谢谢
最佳答案
是的,标题不包括在内。以我的经验,AudioInputStream
也正确地忽略了非标准的非音频块。 AudioInputStream#read
应该只读取音频数据的字节。
这是一个临时测试。
File f = new File("your audio file.wav");
FileInputStream fis = new FileInputStream(f);
AudioInputStream ais = AudioSystem.getAudioInputStream(f);
// prints the number of bytes that are detected not to be audio data
System.out.println(fis.available() - ais.available());
数据将包含直接来自文件音频部分的原始字节。
关于java - AudioInputStream的read方法是否排除标题?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/26598753/