0

我的目标是编写一个像这样的简单(控制台)程序:

  1. 从 MIDI 输入获取 MIDI 信息
  2. 修改消息(或添加消息)
  3. 将消息写入 MIDI 输出

由于我对 C++ 完全陌生,并且距离我上次编写一些 C 代码已经 15 年了,所以我搜索了一段时间,发现了我认为的 RtMidi ( http://www.music.mcgill.ca/~gary/rtmidi/ )可以帮助我达到我的目标。

我正在使用 Xcode 进行编译和处理。

我还认为使用回调函数是有意义的。

RtMidi 的代码开箱即用。我可以打开虚拟 MIDI 端口,并将我的 MIDI 消息输入到回调函数中,然后将其输出到控制台。

但是现在我被困住了,因为我还不了解回调实现的工作原理(我认为)。

我的问题是:

  • 我是否必须在回调函数中修改 MIDI 消息?
  • 如果是,我如何从回调函数中写入 MIDI?
  • 如果不是:如何将 MIDI 消息放入我的 cpp 代码中(可能通过将指针传递给用户数据字段)?
  • 但是,当消息到达回调函数时,我的主要代码是如何触发来处理消息的?
4

1 回答 1

0

好的 - 已解决。

我肯定缺乏对 C++ 的理解……我指定了一个指针而不是一个变量。

马特

于 2013-03-28T10:49:55.967 回答