当前位置: 首页 > 面试题库 >

Java MIDI-从钢琴获取数据?

史弘致
2023-03-14
问题内容

我继承了一个Java项目,该项目使用旧的C ++
dll
从连接到计算机的钢琴接收MIDI数据。

既然Java内置了对MIDI设备的支持,我想摆脱旧的C ++ dll,而只使用纯Java。 Java是否支持从连接到计算机的钢琴接收数据?
我已经在Google上搜索了一些示例,但都无济于事。


问题答案:

是的,JavaSound API可用于从MIDI设备读取MIDI数据。

JFugue是用于音乐编程的Java API,它使用JavaSound
API,可以帮助简化与JavaSound的交互。在JFugue 5.x中,从MIDI设备捕获10秒MIDI数据的示例代码如下:

MidiDevice device = /* specify a MIDI device */
MusicTransmitterToSequence transmitter = new MusicTransmitterToSequence(device); 
transmitter.listenForMillis(10000); 
Sequence music = transmitter.getSequence();

您还可以开始和停止收听设备:

MidiDevice device = /* specify a MIDI device */
MusicTransmitterToSequence transmitter = new MusicTransmitterToSequence(device); 
transmitter.startListening(); 
// Do stuff
transmitter.stopListening(); 
Sequence music = transmitter.getSequence();


 类似资料:
  • 利用AudioToolbox实现一个简单的钢琴,可以奏出7个音阶的声音。 [Code4App.com]

  • 作为游戏狂热爱好者小编第一想法当然是能否用 Python 也做一个,既好玩也能用于教学,经过一番研究总算折腾出来一个简易版 本文就分享一下思路与代码。 实现思路 在写代码之前,还是先整理下思路,用Python实现的话,只需要创建界面与按钮,并给每个按钮绑定播放音阶的函数即可

  • Virtual MIDI Piano Keyboard is a MIDI event generator and receiver. It doesn't produce any sound by itself, but can be used to drive a MIDI synthesizer (either hardware or software, internal or extern

  • 本文向大家介绍用Python制作简单的钢琴程序的教程,包括了用Python制作简单的钢琴程序的教程的使用技巧和注意事项,需要的朋友参考一下 录一段音频,把它的音高改变50次并把每一个新的音频匹配到键盘的一个键位,你就能把电脑变成一架钢琴! 一段音频可以被编码为一组数值的数组(或者列表),像这样: 我们可以在数组中每隔一秒拿掉一秒的值来将这段音频的速度变成两倍。 如此我们不仅将音频的长度减半了,而且

  • 问题内容: 日志,为什么? 问题答案: 为了详细说明@Raynos所说的内容,您定义的函数是一个异步回调。它不会立即执行,而是在文件加载完成后执行。当您调用readFile时,将立即返回控件并执行下一行代码。因此,当您调用console.log时,尚未调用您的回调,并且尚未设置此内容。欢迎使用异步编程。 示例方法 或者更好的是,如Raynos的示例所示,将您的调用包装在一个函数中并传递您自己的回调

  • 我一直在尝试使用nativescript创建一个android应用程序。我正在使用fetch模块从服务器获取响应。当我试图从httpbin获得响应时。org/get,没关系。但当我试图从本地服务器获取响应时,网络请求失败。错误 发送到httpbin。组织/获取- 发送到本地主机:8000/api- 当我尝试从纯节点中的localhost:8000/api获取响应时。js通过请求模块。它工作得很好。