我有这个在java中执行记录的小代码。我希望添加某种功能来对此进行视觉呈现。你会建议我如何处理这个问题?(我对 java 很陌生)
我希望视觉呈现显示为当前现有图像的前景。
从 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;
}
每个通道一个值。这将为您提供介于 -1 和 1 之间的数字,您可以在图表上绘制该数字。我相信其他人会帮助绘制它。
您可以使用 Java 声音 API(AudioSystem、AudioInputStream、AudioFormat)来做到这一点。该 API 让您可以逐字节读取 .wav 文件,还可以从 AudioFormat 对象获取比特率、vbr、质量信息。然后,您可以使用 AWT、Swing 或任何您喜欢的工具绘制此信息。