OSCMessageに複数のデータを含めた場合

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 件のコメント:

コメントを投稿