Вот что работает прямо сейчас:Преобразование входящего сообщения OSC в TUIO 2Dcur
Микроконтроллер считывает 2 сенсорные поверхности, выводит их в виде единого OSC пучка (с использованием this library) каждые 10 мс над USB.
Chrome приложение получает эти OSC пучки (с использованием this library) через USB с помощью
chrome.serial
и отображает их на холсте элемент
До сих пор, так хорошо.
Далее, я хочу отправить эти сообщения через UDP клиенту TUIO. В качестве первого шага я убедился, что могу отправлять сообщения OSC по UDP (опять же используя osc.js), и действительно, это работает.
Вот некоторые примеры сообщений, как видно мое приложение Chrome:
// console.log(JSON.stringify(msg)) gives results like this:
{"address":"/p0","args":[2369,1683,170]}
{"address":"/p1","args":[1906,1752,137]}
{"address":"/p1","args":[1906,1752,137]}
Как превратить их в сообщения TUIO?
Я попытался подключить это приложение Chrome к различным примерам реализации TUIO-клиента (Node, browser, Ruby, Python, Processing), и результаты будут либо сбой при исключении из-за неверного сообщения, либо просто сделать ничего.
Вот некоторые форматы сообщений, которые я пробовал, но безуспешно:
osc.send(msg);
osc.send({address:"/tuio/2Dcur", args:msg.args});
osc.send({address:"/tuio/2Dcur", args:["alive"].concat(msg.args)});
osc.send({address:"/tuio/2Dcur", args:["set"].concat(msg.args)});
Что я здесь делаю неправильно?