【发布时间】:2015-06-07 15:39:51
【问题描述】:
我正在尝试使用 C++ 制作一个软件,该软件在按下某个 MIDI 键时播放 .wav 音频样本。我想到的最好方法是使用if 语句(如果有更简单的方法,我将不胜感激,但我是编程新手,所以请保持简单)。
上网查了一下,发现不同的 MIDI 键对应不同的 NOTE ON 信息(例如 NOTE ON 60 对应中间 C),所以基本上我只是在寻找如何说“当 NOTE ON 60 收到,播放 X .wav 文件”。我还发现 NOTE ON 的状态是 9n,这是否意味着计算机会收到 9x60(使用 60 = Middle C 示例)?
在此之后,我只需要了解如何使用sndfile.h 播放音频样本,我相信如下:
SNDFILE *sndFile = sf_open("Sample1.wav").
任何帮助将不胜感激。
【问题讨论】:
-
这里的问题是你的英语有点不对劲。实际上你的意思是"when NOTE ON 60 is received, play X .wave file" 并且“when”与“if”有很大不同,至少在C++ 编程。因此,这是一个广泛的问题。
-
嗯,好的,我现在编辑一下。
标签: c++ audio midi libsndfile