谁能建议我如何读取音频文件,将其存储在字节数组中,并继续显示其波形?我的Java知识非常基础。如果有人能将我链接到Java音频编程的学习材料,那就太好了。
发布于 2012-11-01 23:15:28
发布于 2012-11-01 05:56:23
您将需要了解一些有关脉冲编码调制的基础知识,因为这是如何将波以离散字节/值的数字形式表示的。大多数波形格式只是一些报头/元数据,然后是脉冲码流。
下面是关于数字采样和脉冲编码调制的入门读物:
http://www.speakingcode.com/2011/12/31/primer-on-digital-audio-and-pulse-code-modulation-pcm/
在那之后,它就相对简单了。加载文件,读取元数据,以便您知道采样率、位深度等,然后基本上使用PCM值构建一个数组。一般的java文件读取技术可以很好地解决这个问题,比如Java教程、许多在线页面和几个关于堆栈溢出的相关问题。
http://docs.oracle.com/javase/tutorial/essential/io/
一旦你有了你的数组,你的值就有效地表示了波在那个时间点的振幅位置……缩放这些值并转换为图像-有很多方法可以做到这一点,这真的只取决于你。需要考虑的一些事情是,你是关心时间轴,还是仅仅关心波形的形状?如果你只关心形状,那就更容易了,因为你不需要在x轴上适当地标记时间和比例(假设你遵循x轴上的时间和y轴上的振幅的标准)
https://stackoverflow.com/questions/13167899
复制相似问题