1

我有这个在java中执行记录的小代码。我希望添加某种功能来对此进行视觉呈现。你会建议我如何处理这个问题?(我对 java 很陌生)

我希望视觉呈现显示为当前现有图像的前景。

4

2 回答 2

1

从 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 之间的数字,您可以在图表上绘制该数字。我相信其他人会帮助绘制它。

于 2009-09-02T22:35:52.620 回答
0

您可以使用 Java 声音 API(AudioSystem、AudioInputStream、AudioFormat)来做到这一点。该 API 让您可以逐字节读取 .wav 文件,还可以从 AudioFormat 对象获取比特率、vbr、质量信息。然后,您可以使用 AWT、Swing 或任何您喜欢的工具绘制此信息。

于 2009-09-02T21:00:52.857 回答