我目前正在开发一款应用程序,帮助用户调整吉他并生成吉他效果。这是实时的。我一直在寻找能够产生吉他效果的java应用程序,例如过载和延迟,但我找不到任何东西。还需要实时创建波形的源。提前感谢你的评论会有很多帮助。
答案 0 :(得分:11)
John说:
首先,忘记Java ......其次,你将与硬件接口...... Java不支持这种事情。
Jeez,这有点苛刻 - 你应该告诉Sun,在他们为此发布API之前,这是不可能的:http://java.sun.com/products/java-media/sound/。在Java中有很多声音,我从来没有遇到过延迟或缓冲的问题,即使在有些破旧的硬件上也是如此。
好例子@ http://www.jsresources.org/examples/index.html
良好的帮助@ http://java.sun.com/products/java-media/sound/list.html
......话虽如此,John对学习DSP& amp;波形分析在$$$上。
玩得开心 - 戴夫
答案 1 :(得分:2)
这个开源项目可能是一个很好的参考。有一个构造波形的功能 http://code.google.com/p/musicg/
答案 2 :(得分:0)
关于低延迟声音处理的可行性:看一下关于Harmonicon, a java soft-synth的这篇文章。这是一个使用Metronome GC完全在java中实现的合成器的示例,Java generating sound在<中具有较高的延迟保证。在实时操作系统上运行2 ms。
关于wave 表单生成/ dsp ,请查看此问题中的示例{{3}},这是一个非常简单的波形生成示例。
答案 3 :(得分:-6)
首先,忘记Java。 Java是一个托管运行时,可以进行垃圾回收。当发生这种情况时,你会听到模板,因为你想保持你的声音缓冲区很小,以减少延迟,
其次,你将与硬件连接,即声卡,Java不支持这种事情,所以你要么必须在JNI中编写一些硬件抽象或找到现有的解决方案,但是有一个问题至。您不太可能从Java平台获得实时性能。
你想做的是你想和C++
一起使用,你会想要了解更多关于偏微分,DSP,声音合成和波形分析的知识。这是相当多的事情,但如果你开始阅读相关的研究,它应该给你一个很好的方向感......