如何在Ubuntu中使用C ++连接到ALSA服务器(在这种情况下,Timidity)?

我正在尝试使用C ++在Linux Ubuntu下使用MIDI。 在使用几个工具(例如JACK)一天没有成功之后(JACK在我的机器上疯狂地滞后)之后,我现在试图使用Timidity作为MIDI服务器。 但是,我无法在Web上find有关如何使用C ++以编程方式连接到Timidity的任何引用。 有没有办法做到这一点?

感谢您的任何build议!

笔记:

我已经尝试search谷歌与以下内容:

alsa服务器连接

胆怯连接程序

但没有答案。

使用ALSA音序器方法来创建MIDI信息。

C库的文档在这里: http : //www.alsa-project.org/alsa-doc/alsa-lib/group___sequencer.html

看看RtMidi库 。 它是用C ++编写的跨平台(Win,OS X,Linux,SGI),易于编译和包含在您的项目中。

然后启动Timidity作为服务器(Ubuntu为此包含一个初始化脚本),这将为Timidity创建几个ALSA sequencer客户端端口。 在RtMidi中打开其中一个端口作为输出,并开始发送midi消息。