![如何防止 MIDI 事件被回显](https://linux22.com/image/180458/%E5%A6%82%E4%BD%95%E9%98%B2%E6%AD%A2%20MIDI%20%E4%BA%8B%E4%BB%B6%E8%A2%AB%E5%9B%9E%E6%98%BE.png)
我有一架 MIDI 钢琴,其 MIDI 输入和输出连接到es1938
声卡 *)。我可以毫无问题地录制和播放 MIDI,目前使用alsa
.
问题
然而,当我不这样做时任何事物在计算机上的 MIDI 方面,我钢琴上的所有 MIDI 事件都会回响到计算机上。因此,每个音符都会被触发两次,一次来自钢琴键盘,一次来自从我的计算机接收到的回声 MIDI 事件。
我尝试过的
只要这张卡在我的计算机上没有任何 midi alsa 连接**)就会发生这种情况。如果我启动一个读取 es1938 MIDI 事件的进程或将其连接到 OPL3,回声就会停止。我尝试自动执行此操作,但我在处理卡号时遇到了麻烦,由于某种原因卡号偶尔会发生变化。
问题
- 有没有办法可以一劳永逸地阻止这种 MIDI 回声?我绝不需要或想要它。
- 或者,最简单的方法是为此卡建立 MIDI 连接(从而防止回声),而无需参考卡号(并且无需编写脚本来确定卡号)
*) 卡的全名:多媒体音频控制器:ESS Technology ES1938/ES1946/ES1969 Solo-1 Audiodrive (rev 01)
**) /home/马丁 >连接-里奥
client 0: 'System' [type=kernel]
0 'Timer '
1 'Announce '
Connecting To: 128:0, 129:0, 130:0
client 14: 'Midi Through' [type=kernel]
0 'Midi Through Port-0'
client 20: 'ESS ES1938 (Solo-1)' [type=kernel,card=1]
0 'ESS ES1938 (Solo-1) MIDI'
client 21: 'OPL3 FM synth' [type=kernel,card=1]
0 'OPL3 FM Port '
client 28: 'M Audio Audiophile 24/96' [type=kernel,card=3]
0 'M Audio Audiophile 24/96 MIDI
'