スクリーンショット_2019-04-27_1

enebularハンズオン「MIDIとMQTTを使ってリモート演奏する仕組みを作ってみよう」へ行ってきた。

ざっきー@野良ハックです。平成が終わる前にnoteデビューできてよかったです。(遅っ!
タイトルのハンズオンですが、少人数枠に先着順で応募者が多い中、スタッフとして潜入することができてラッキーでした!

参加者みんなでMIDIを鳴らして楽しかったので、当日のハンズオンで躓いたポイントをnoteに残しておきたいと思います。
ハンズオンなのに、始めからカンパイスタートです!(ステキっ!

ハンズオン資料は講師の高山和幸(@pco2699)さんからツィートで共有。

躓きポイント1:ハンズオン資料
URLに含まれる「I」が数字の 1 (イチ) なのか、大文字の I (アイ) なのか、小文字の l (エル) なのか分からないアルアル。正解は小文字の l (エル) でしたが、プロジェクターの画面を見ながらURLを手で入力した参加者から「韓国のサイトに飛ばされるけど、、」との連呼で、最初から雲行きが怪しい雰囲気でした。w
TwitterのURLをクリックするのが一番です!

躓きポイント2:手順①MIDIの仮想ケーブル
装置名に日本語が含まれていると後述のmidi2mqttコマンドの-i オプションと -o オプションで文字化けが発生して指定できないので、「ドライバ」の文字列を削除しましょう。

躓きポイント3:Pocket MIDI
私の環境ではPocket MIDIのKeyBoardではキーの入力がうまく動作しなかったので、Midi Keysを使用しました。

躓きポイント4:midi2mqttコマンドのインストール
npmコマンドでmidi2mqttコマンドをインストールするところで失敗する人が続出しました。これもよくある環境問題ですが、python2.xが必要でした。私はPython2.7.13だったので問題ありませんでした。brewコマンドでpython2.x環境をインストールして解決した人、pyenvコマンドでpython2.x環境へ切り替えて解決した人、Python.orgからpython2.xのpkgをダウンロード/インストールして解決した人がいました。
また、インストールの途中でbuildエラーが発生して残念ながら解決できない人もいました。

g++: error: unrecognized command line option '-stdlib=libc++'
gyp ERR! build error 
gyp ERR! stack Error: `make` failed with exit code: 2

enebularのフローを公開しておきます。
https://enebular.com/discover/flow/354b1813-72f2-4cf4-af19-fb580cd7d6e9

Discover機能を使って簡単にフローをimportすることができますので、フローを作成する手順を省略したい方は是非使ってみてください!

フロー作成手順に1つだけ機能(ダッシュボード機能のボタン)を追加しました。injectノードは押す度に画面上部にバナーが表示されて煩わしいので、ブラウザからもアクセスできるダッシュボードボタンを追加しました。

Macユーザの方はハンズオン手順のJuno-106音源(http://juno-106.js.org/)の代わりにGarageBandを使用してみても良いと思います。Midi Keysも自動で認識されますし、音源の種類も豊富に揃っています。
ピアノやビートのループ音源に合わせてenebularからアコースティックギターを演奏させてみました。

最後に「MIDIとMQTTを使ってリモート演奏する仕組みを作ってみよう」
の動画アーカイブです!
今回好評だったので次回も予定したいとのことでしたので、今回参加できなかった方はFacebookグループ、Twitter、connpassページ等をチェックして待っていてください!


この記事が気に入ったらサポートをしてみませんか?