rtpMIDIでつなぐ

iPhoneとWindows PCをつなぐ方法を探していたところ、rtpMIDIというのを見つけました。やりたいことは、

  • iPhoneでピアノ鍵盤とかコントローラのアプリケーションを動作させます。
  • iPhoneから、MIDIがWindows PCへ伝える。
  • Windows PCでChromeを立ち上げて、Web MIDI APIを使ったアプリケーションを開きます。
  • iPhoneで操作すると、MIDIでPCのWeb MIDI APIのアプリケーションがコントロールできます。

rtpMIDI の接続で大切なのは、iPhoneとPCが同じWifi のアクセスポイントにつながっていないといけない事です。rtpMIDIをダウンロードします。以下のURLからダウンロードできます。 http://www.tobias-erichsen.de/software/rtpmidi.html

iPhoneをWiFiモードでネットワークに接続してください。→(例)http://www.ipodwave.com/iphone/howto/wifi.html

重要 iPhone でrtpMIDI 対応のアプリを動作させます。iPhone側でrtpMIDI対応のアプリが立ち上がっていないと、接続できません。例えば下に示した、MIDI Wrench( https://itunes.apple.com/jp/app/midi-wrench/id589243566?mt=8" )を先に立ち上げておきます。尚、rtpMIDIを立ち上げた後にiPhone アプリを立ち上げても接続できます。

PC側でrtpMIDIを起動します。

rtpMIDIを立ち上げた時、左下のDirectoryというところにiPhoneの名前が表示されていますでしょうか?表示されていない場合は、上に書いたようにiPhoneでrtpMIDIに対応したアプリケーションが立ち上がっていないかもしれません。アプリが立ち上がっているにもかかわらず、iPhoneの名前が見えない場合は、iPhoneの接続をもう一度見直してください。その上で、iPhoneを立ち上げなおして下さい見てください。それでも表示されない場合は、何か他の環境が悪さをしている可能性があります。その場合には、わかった人に見てもらうしかありません。

My Sessionsの下のプラスボタンを押します。 My Sessionsのウインドウの中にPCの名前が表示されるはずです。 と同時に、右側のSessinのLoal name:、Bonjour name: にも同様にPCの名前が表示されます。 さらに、Sessinの右上のPort:にも4桁の数字が表示されます。

Directoryの下のConnectボタンを押します。 右側のSessinParticipantsのNameにiPhoneの名前がグレーアウト で表示されます。 Latencyのところはこの時点では???です。

SessinEnabledをチェックします。 Loccal name:, Bonjour name: がグレーアウトします。 と同時に、Sessionの中央、ちょっと下にAddressが表示されます。

SessinのParticipantsの中に測定したLatencyが表示されます。 数10msec~200msecくらいではないでしょうか。

これで、PCとiPhoneがMIDIでつながります。試しに、 MIDI Wrench ( https://itunes.apple.com/jp/app/midi-wrench/id589243566?mt=8) というアプリケーションを使ってみます。

このアプリケーションをiPhoneで立ち上げると、次のような画面になります。

Chrome で、 MIDI Monitorを立ち上げます。MIDI Wrenchの鍵盤を触ると、MIDI Monitor にMIDIのデータが表示されます。