Raspberry PiからのMIDI出力
意外なぐらい情報がなかった。
10年前の情報ですが、こちらで解決しました。
Ubuntu日本語フォーラム / 【HowTo】MIDI音源・デバイスの接続と再生・録音
パッケージ alsa-utils は、Raspbianに含まれているので、特に必要なし。
1)aconnect でMIDIポートの入出力を確認。
pi@raspberrypi:~ $ aconnect -i -l
client 0: 'System' [type=カーネル]
0 'Timer '
1 'Announce '
client 14: 'Midi Through' [type=カーネル]
0 'Midi Through Port-0'
client 20: 'NSX-39' [type=カーネル,card=1]
0 'NSX-39 MIDI 1 '
pi@raspberrypi:~ $ aconnect -i -o
client 0: 'System' [type=カーネル]
0 'Timer '
1 'Announce '
client 14: 'Midi Through' [type=カーネル]
0 'Midi Through Port-0'
client 20: 'NSX-39' [type=カーネル,card=1]
0 'NSX-39 MIDI 1 '
2) 'Midi Through' => 任意の出力先を指定。
pi@raspberrypi:~ $ aconnect 14:0 20:0
これだけでOK。ポケットミクでもテノリオンでも同じです。
ポケットミクを喋らせるコードは、こちらのサイトを参考させていただきました。
自作デジカメ制作 【機能拡張編その2】世界初!初音ミクの声で歌うデジカメ - karaage. [からあげ]
※変数portは以下に変更して、pygame.midi.init()の下に記入してます。
port = pygame.midi.get_default_output_id()
Raspberry Pi からPythonのpygame.midiを使って喋らせてみた。#ポケットミク pic.twitter.com/uWcFhxqPxq
— pj-hack-tenorion (@hack_tnr) 2018年9月30日
テノリオンはthinterの入力から出力までできたけれど、動きがもっさりしているので要改善。
Raspberry PiからのMIDI出力。#テノリオン pic.twitter.com/yYS7ybwV6v
— pj-hack-tenorion (@hack_tnr) 2018年9月30日
完成イメージがもてるまで1か月半。うちRaspberry Piで丸1か月かかったか。。
Linuxの知識のなさを痛感した。