How to use MAX/MSP and RTC Gateway

RTCGatewayとは? RTCGatewayはCycling’74社のMax(MAX/MSP)とRTミドルウェアである産業総合技術研究所開発のOpenRTM-aistとの間でデータ交換を行うことができるプラグインです。MaxのExternalオブジェクトとして実装されており、Max側ではRTCオブジェクトとして、RTM側ではRTコンポーネントMAX_MSP_RTCとして扱われます。 Max(MAX/MSP)はシンセサイザーのコントロールのためのビジュアルプログラム環境として開発されましたが、現在はリアルタイム音響処理、映像処理・生成、MIDI・様々なデバイスのコントロールに対応しています。オブジェクトと呼ばれる特定の機能を持った部品同士を線でつなぐ(Patch)ことでプログラミングができるようになっており、音楽表現、舞台演出、メディアアートなどのインタラクティブなシステム開発にとって強力なツールとなっています。対してOpenRTM-aistはコンポーネント志向のロボットシステム開発環境RTミドルウェアの実装です。C++ , Python, Javaで動作し、他の人が作ったコンポーネントを再利用することでロボットシステム開発の効率化を狙っています。 RTCGatewayを導入することでMaxで主にロボット用に開発されたRTコンポーネントを比較的簡単に利用することができます。例えばロボットを用いたメディアアート作品の制作の際、音や映像といったインタフェースとロボット制御との間でのデータ交換を行うことも可能です。 現在、Mac OSX 10.8 Mountain Lion+ Xcode 4 or 5 + Max 6 で動作確認しており、尾形研究室のGithub(https://github.com/ogata-lab/RTCGateway)上で配布しています。 ※使い方によってはMaxが強制終了することがあります。自己責任でご利用ください。 RTCGatewayビルドの仕方 Githubからレポジトリをクローンします: git clone https://github.com/ogata-lab/RTCGateway RTCGatewayは以下の2つをサブモジュールとして利用しています。 MAX 6のエクスターナルオブジェクト開発SDK(https://github.com/Cycling74/max6-sdk) Mac環境下でのRTミドルウェア開発SDK(https://github.com/ogata-lab/rtmsdk-mac) クローンしたディレクトリ内で以下のコマンドを実行してください: git submodule init git submodule update 問題なくサブモジュールがクローンできたら以下のコマンドでビルドを行います: ./build.sh build.shと同じディレクトリにRTC.mxoが生成されます。これがMaxのExternalオブジェクトであるRTCオブジェクトの実行ファイルになります。 使い方 クローンしたファイルの中にあるRTC.maxhelpはMaxで開くと対応データ型をすべて使ったサンプルになっています。とりあえず使いたい場合はこれらをコピーしてPatcherに組み込むことができます。以下ではMaxのインストールとRTC.mxoの設定、ポートの追加方法とコンポーネントのアクティブ化について説明します。   Maxが入っていない場合はまずインストールを行います。 http://cycling74.com/ 内の[Download Max]よりMax 6をインストールしてください。 ダウンロードしてから30日間はデモ(無料)で使用することができます。   …