好的,在用两种不同语言(Java和Cocoa)编写的两个不同程序(我自己的和QLab)中,在两个不同的系统(Mac和PC)上尝试这个会产生相同的结果。所以我很难过。本质上,我正在尝试发送以下Sysex消息:F043103E1201003300000000AD000000ADF7当我发送它时,我的Midi监控程序(又是两个不同的程序)要么说它已发送:F043103E1201003300000000F7然后这个被发送了:AftertouchCh14C-20Invalid1ByteInvalid1Byte或者另一个只说了三个触后,然后是来自Java的channel关闭。然后,仅在Mac程序上
我正在使用来自C#的古老WindowsMultimediaAPI(来自WinMM.dll的midiXyz函数)。以非流模式(midiOutOpen)打开MidiOut设备/端口后,使用(midiOutLongMsg)发送SysEx可以正常工作。在流模式(midiStreamOpen)中打开MidiOut设备/端口后,使用midiOutLongMsg发送SysEx不起作用。而是,midiOutLongMsg失败,错误为MMSYSERR_NOTSUPPORTED(=8)。错误文本为:“不支持此功能。使用功能功能来确定驱动程序支持哪些功能和消息。”但是,根据MSDN,(midiOutLong
我在类上使用AudioKit的AKMIDIListener协议(protocol)来监听MIDI消息。这适用于标准消息,例如NoteOn,但SysEx消息无法通过。funcreceivedMIDINoteOn(noteNumber:MIDINoteNumber,velocity:MIDIVelocity,channel:MIDIChannel){NSLog("NoteOn\(noteNumber),\(velocity),\(channel)")//worksperfectly}funcreceivedMIDISystemCommand(_data:[MIDIByte]){NSLog(
有谁知道在Linux上获取MIDISysEx数据双向转储的好方法?(在YamahaPSR-E413MIDI键盘和YamahaMusicSoftDownloader在Wine中运行的副本之间)我想对用于将MIDI文件复制到键盘内部存储器或从键盘内部存储器复制MIDI文件的协议(protocol)进行逆向工程,为此,我需要对两者之间的有效交换进行一些记录。该实用程序在Wine(withalittlenudging)中确实有效,但我不想在可以使用FUSE文件系统时依赖Wine中廉价的、不可编写脚本的应用程序。这是目前的情况:我的键盘通过内置的USB-MIDI桥连接到我的电脑。USB转储器/窥