Audiokit似乎只接收前三个sysex MIDI讯息

Audiokit似乎只接收前三个sysex MIDI讯息

问题描述:

我正尝试使用audiokit从Mac上的应用程序中的硬件合成器接收syses讯息。这些合成的消息是建立11个数字,例如:Audiokit似乎只接收前三个sysex MIDI讯息

240,00,32,51,01,16,112,00,40,95,247 

audiokit目前发布的版本会尽快收到此消息崩溃,但我发现,目前发展领域已固定的。 我的意思是,它也崩溃了,但在另一行号;)在AKMIDIEvent.swift :

line 143: computedLength += 1 << Thread 8: EXC_BAD_INSTRUCTION (code=EXC_I386_INVOP, subcode=0x0) 

我已经能够修复与加

if (computedLength == 255){ 
    break 
} 

之前线143,但我担心这个解决方案说我的低/简单编码水平比其他任何更多 当我打印127行的init函数接收到的packet.data时,它显示:

(240, 0, 32, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
0, 0, 0, 0) 

只有前3个数字是正确的,其余的都没有了,所有零都在那里。 在Cubase中,我可以看到整个消息已发送,但不知何故,在audiokit中,大部分消息都已丢失。

是否有人能够对此发光? 是或不是audiokit旨在解析这种类型的syses消息?

在此先感谢!

+0

在我看来,audiokit正在削减每个3比特的4个较小的消息中的syses消息。只有第一条消息以240开始,并被识别为syses消息。其他部分根本不承认任何东西,并且丢失。 –

在我看来,audiokit正在削减我的11位syses消息每个3位的4个较小的消息。只有第一条消息以240开始,并被识别为syses消息。

以下3部分根本不被识别为任何东西,并且丢失。

第一条消息会让Audiokit崩溃,因为它不包含必要的结束数字(247)。

试图改变这种行为,但没有运气。 Audiokit是一个非常好的工作和平,但可惜我的项目不是这样。