0

我正在为我的 iOS 音乐鼓垫类型应用程序添加 OSC 功能。我可以在敲击打击垫时发送字符串,然后使用 OSCulator 映射到 MIDI,使用 Logic Pro 进行测试并正常播放音符,但我想知道如何给 Logic Pro 音符持续时间,这将如何完成?

目标是让音符一直持续到按下打击垫,所以在实际按下打击垫之前你不会知道持续时间。计划在未来实现 CoreMIDI,但从 OSC 和 OSCulator 开始。

4

1 回答 1

0

按试验和错误排序,添加 Int 1 然后添加 Int 0 来停止就可以了,但是如果您有不希望这种行为的焊盘,添加 Int 会强制您也有 Int 0,所以在这些情况下不要'不要添加一个 Int。

OSCMessage *msg = [OSCMessage createWithAddress:[NSString stringWithFormat:@"/Pad%i", i + 1]];

if (stick)
    [msg addInt:1];             

[outPort sendThisPacket:[OSCPacket createWithContent:msg]];

然后关闭它:

if (stick)
{
    OSCMessage *msg = [OSCMessage createWithAddress:[NSString stringWithFormat:@"/Pad%i", i + 1]];

    [msg addInt:0]; 

    [outPort sendThisPacket:[OSCPacket createWithContent:msg]];

}

这使用 VVOSC/vvopensource。起初它不起作用,但随后删除了所有 OSCulator 设置并重新配置,然后它就起作用了。

于 2012-07-23T23:25:25.493 回答