我是相当新的java ...我想绘制频率/时间图或来自wav文件的样本图像.首先,我正在努力从使用AudioInputStream的Wav文件中获取原始数据数组,这也是从Java中的Reading wav文件引用的.我也尝试了WavFile类,参考http://www.labbookpages.co.uk/audio/javaWavFiles.html,但在测试时,我无法找到正确的软件包来满足"WavFile" - "找不到符号"错误.提供的import java.io.*; 对于那个样本不满足这个......
重申我希望获得Wav文件的数组格式的原始数据.
我会喜欢这方面的任何一个小例子,因为我从例子中学到的更容易!谢谢你的时间
从 wav 文件(头)中跳过前 44 个字节,然后使用以下函数读取数据:
private static double readLEShort(RandomAccessFile f) {
try {
byte b1 = (byte) f.read();
byte b2 = (byte) f.read();
return (double) (b2 << 8 | b1 & 0xFF) / 32767.0;
} catch (IOException e) {
e.printStackTrace();
}
return 0;
}
Run Code Online (Sandbox Code Playgroud)
每个通道一个值。这将为您提供 -1 到 1 之间的数字,您可以将其绘制在图表上。我希望这可能有效
| 归档时间: |
|
| 查看次数: |
2241 次 |
| 最近记录: |