OSCやMIDIのメッセージを受け取り、搭載されたLEDの光り方を制御できる「雰囲気メガネ」。SuperColliderを用いたサンプルコードを以下に掲載します。
メッセージの仕様については、非公式ではありますが、コチラを参考にしましした。 【雰囲気メガネのシミュレータ】http://akamatsu.org/aka/2014/12/28/fun-iki-simulator/ 【雰囲気メガネのiOSアプリ】https://itunes.apple.com/jp/app/fen-tong-qimegane/id950982828?mt=8
MIDI楽器やコンピュータからデータを送信してメガネを光らせる場合は、iOSデバイス(要iOS7以上)上のアプリ「雰囲気メガネ」を通じて、メガネへのメッセージを送ります。複数のメガネを制御したい場合は、その台数分のiOSデバイスが必要になります。
以下では、wifi接続をしている環境下でのOSCでの手順を説明します。 ※wifi環境がない場合は、以下の「AdHoc接続について」を参照してください。
-
前提として、雰囲気メガネをiOSデバイスにペアリングし、接続設定を済ませておきます。
-
アプリの「設定」アイコンから「MIDI/OSC」をタップし、「MIDI/OSC」画面を開いておきます。この画面を開いている時のみ、メッセージを受信するので閉じてしまわないように注意が必要です。
-
「OSCによる制御」をオンにします。「IPアドレス」欄に、このiOSデバイスのIPが表示されています(例:10.0.1.4など。これはネット上のこのデバイスの住所のようなものです)。「ポート番号」にはポート番号が表示されています(例:2061など)。これは指定の範囲内での好きな数字にセットすることができます。
-
SuperColliderを起動し、以下のコードを実行します。
// グローバル変数「~myiPhone」にNetAddrのインスタンスを割当。 // 送り先のIPアドレスとポート番号をセットする(iOSに表示されているのと同じ数値にする)。 ~myiPhone = NetAddr.new("10.0.1.13", 2061);
// 好きな色を設定し、メッセージを送信する。 // 以下のコードでは、左=ピンク、右は=水色に設定。 ~myiPhone.sendMsg("/fun-iki/perform", 1.0, 0.5, 1.0, 0.5, 0.5, 1.0, 0.1);
"/fun-iki/perform"は、雰囲気メガネと通信する為の決まった文字なので変更してはいけません。その後の数値は次の順に並んでいます:左側のHue(色相)、Saturation(彩度)、Brightness(明るさ)、右側のHue(色相)、Saturation(彩度)、Brightness(明るさ)、最後はフェードタイム(移り変わる時間、秒単位)