OSCMessageに複数のデータを入れた場合、読み取るMax/MSPのパッチに工夫が必要です。
import oscP5.*;
import netP5.*;
OscP5 oscP5;
NetAddress myRemoteLocation;
void setup() {
size(400,400);
oscP5 = new OscP5(this,6230);//ポート番号は受信側で設定したものを同じにする
myRemoteLocation = new NetAddress("127.0.0.1",6230);
}
void draw() {
background(0);
}
void mousePressed() {
OscMessage myMessage = new OscMessage("/boo");// /booはアドレス
myMessage.add(123);//ひとつめのデータ
myMessage.add(456);//ふたつめのデータ
oscP5.send(myMessage, myRemoteLocation); //送信
}
あらかじめ送られてくるデータの数がわかっている必要がありますが、
unjoinを使えば簡単にデータを切り分けられます。
OSCMessageに含めることのできるデータは、int,float,char,byte,string です。
配列も含めることができます。ただし、byte型の配列は、oscP5ライブラリが
OSC-blob型にしてしまいますので、これをMax/MSPで読み取るのはちょっと
面倒なので、使わないほうが無難です。
0 件のコメント:
コメントを投稿