gpt4 book ai didi

java - 从麦克风或扬声器绘制图形波形

转载 作者:行者123 更新时间:2023-11-30 04:09:18 30 4
gpt4 key购买 nike

所以我一直在研究java声音API,我可以获取输入,记录和播放声音,并且我可以使用坐标或sin绘制图表。

我希望能够拥有一个实时“示波器”,它从麦克风获取输入并将其转换为随时间向左滚动的波形,当发出噪音时,声音(频率?)会添加到图表的左侧,然后当不再发出噪音时恢复正常。

如何将字节数组转换为图表?

到目前为止,我有一个可以录制和播放声音的文件(保存在缓冲区而不是文件中),然后将其保存到 .wav 并从 .wav 绘制波形 .png 但这不是实时源我不知道从这里该去哪里。

最佳答案

这是一个(相对较小的)应用程序,它将播放声音并在面板上绘制简单的图形:

WaveformDemo on github

它有一些稀疏的注释来指出正在发生的事情,但通常很简单。实际上最好的事情就是看代码。它可以完成您所询问的大部分内容,但无需录制,但代码可以轻松适应这一点。唯一的区别是您将从 TargetDataLine 而不是 AudioInputStream 中提取字节。

诸如窗函数和量化之类的一些内容可能需要冗长的解释,但大量文献都涵盖了这些内容。根据我的经验,虽然有大量的技术文本,但网络上并没有大量针对此类事情的代码示例。 Java Sound Resources是一个非常好的资源,特别是对于 Java,但它有点过时了。所以我希望这可以帮助您开始。

关于java - 从麦克风或扬声器绘制图形波形,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20023768/

30 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com