我正在尝试创建一个类似 theremin的程序,该程序根据鼠标光标位置播放连续音符。我正在使用 Carl Franklin 的MIDI 工具库来执行此操作。
这是我用来播放音符的代码片段。
byte pitch = 0;
while (exit == false)
{
byte newpitch = (byte)(32 + ((float)Cursor.Position.X / (float)SystemParameters.PrimaryScreenWidth) * 64);
if (newpitch != pitch)
{
instrument.StopNote(pitch,0);
instrument.PlayNote(newpitch, 53);
pitch = newpitch;
}
};
问题在于以这种方式播放的音符听起来很明显。从一个音符到另一个音符有明显的过渡。
如何播放连续的 theremin 声音,如连续改变音高的声音?