gpt4 book ai didi

c++ - rtmidi 库 (C++) 找不到 LoopBe MIDI 端口

转载 作者:行者123 更新时间:2023-11-30 04:18:14 25 4
gpt4 key购买 nike

我正在尝试使用 RtMIDI 来处理 MIDI 输入。在我的机器上,我设置了 LoopBe1 内部 MIDI 端口。我使用的 RtMIDI 代码如下(基本上是 RtMIDI 网站上的演示代码)。

#include <iostream>
#include <cstdlib>
#include <signal.h>
#include "RtMidi.h"

int main()
{
RtMidiIn *midiin = new RtMidiIn();

// Check available ports.
unsigned int nPorts = midiin->getPortCount();
if ( nPorts == 0 ) {
std::cout << "No ports available.\n";
}
else std::cout << "Port(s) found.\n";
getchar();

return 0;
}

当我运行它时,我收到没有可用端口的消息。LoopBe1 端口适用于我在机器上的其他 MIDI 应用程序,我有另一个用 C# 编写的 MIDI 应用程序(使用 NAudio 而不是 RtMIDI)发现端口没有问题。

我一直在网上搜索,但找不到原因。任何人都可以就为什么 RtMIDI 找不到端口提出任何想法吗?谢谢。

最佳答案

我没有按照教程中的说明进行操作(没有阅读说明):“为了为特定的操作系统和 API 编译 RtMidi,有必要在编译器语句中提供适当的预处理器定义和库:”

要在 Windows Visual C++ Express 2010 中执行此操作,需要:

  1. 转到项目 -> 属性 -> C/C++ -> 预处理器然后在“预处理器定义”框中单击下拉菜单并单击编辑,然后添加(下划线 undercsore)WINDOWS_MM(下划线 undercsore)

  2. 转到项目 -> 属性 -> 链接器然后在additional dependencies输入框中点击下拉点击edit,然后添加winmm.lib

现在可以了。

关于c++ - rtmidi 库 (C++) 找不到 LoopBe MIDI 端口,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16539037/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com