備忘録

開発でつまったところの備忘録.不定期に更新します.

oscpack(c++)+xcode

OpenSoundControl(OSC)とはインターネットに用いられている通信方式(TCP/IP,UDP/IP) を活用することで柔軟な連携を可能にした通信プロトコルです。

元々は電子楽器を連携するために作られたようですが、現在ではその簡易さと柔軟性から様々なアプリケーションやハードウェアに実装されています。

詳しくは

http://yoppa.org/ma2_10/2279.html

など。

 

OpenframeworksとC++をつなげる必要が出て来たのですが、Openframeworksはもともとアドオンがあるのでいいのですが、C++がよくわからない。

調べたらoscpackというOpenSoundControlパケットを扱うためのC++ライブラリがでてきました。

 

ふつうに動かすにはoscpackのmakefileがあるところで

make

make install

make

であとはbinの中に実行ファイルがあるので実行できます。

 

これをxcodeに組み込みます。

OscSendTestsを例にとると

 プロジェクトにOscSendTests.cpp、OscSendTests.hを追加(OscSendTests.oは生成される中間ファイルなので追加しない)

 HeaderSearchPathにoscpackディレクトリを追加

 プロジェクトのソースと同じフォルダにoscpack/ipとoscpack/oscの中身を全部コピペ

 BuildPhasesのLinkBinaryWithLibrariesにプロジェクトのフォルダ内にある全ての.oファイルと、libc++、libstdc++ライブラリを追加

これで動くはずです。

 

他のプロジェクトにosc機能を追加する場合は上記のことをやってRunSendTests()関数を定義して、送りたい場所でosc::RunSendTests()をすればOKです。

 

さっそくOFとつなげてみようと思います