java - 将另一个声卡与 JavaSound 合成器一起使用

标签 java midi soundcard

我可以使用我的 M-AUDIO Fast Track Ultra 作为我正在编写的 Java MIDI 插件中的音频接口(interface)吗?那个虚拟驱动程序 ASIO4ALL 也可能是一个不错的方式。

我将编写一个现场表演 MIDI 修改器,以提高键盘手的控制水平和 MIDI 控制效果的复杂性。我已经开始了一个小型的概念验证应用程序,它会让我继续前进,但即使在测试 Oracle 自己的 JavaSound API 演示时,我也注意到鼠标输入命令和声音播放之间存在一些延迟。这是否是由该应用程序的构造方式引起的,我仍然会查明,但我想确保我可以提供几乎零延迟(20 毫秒,因为我进入我的现场表演主机软件)。你们有没有发现任何相关的东西?

最佳答案

获得合成器的唯一便携方式是 MidiSystem.getSynthesizer() ,它只给你默认的合成器,它输出到一些默认的音频设备。 您将不得不更改 JVM 或操作系统的默认音频输出设备。

合成器有一个固定的延迟,你可以通过 Synthesizer.getLatency() 获得。 . 音频设备将添加自己的延迟。

关于java - 将另一个声卡与 JavaSound 合成器一起使用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25335879/

相关文章:

parsing - 自动将 MIDI 文件分割成数据集的短语

javascript - 使用 JavaScript 检测浏览器中的 Midi-piano 键盘事件的库

java - 使用tomcat绑定(bind)LDAP进行多认证?

java - ConcurrentHashMap 中的 Dose Segment 存在虚假共享问题?

java - PackProtocolException : invalid advertisement when using the jgitflow-maven-plugin withing a jenkins job

用于实时音频合成的 C++ 精确 44100Hz 时钟

apache-flex - Flex:直接从声卡录制音频

python - 使用 Python 读取输入声音信号

java - 连接池在 Glassfish 中不起作用