【问题标题】:OSC communication between Browser and Pure Data (two computers)Browser 和 Pure Data 之间的 OSC 通信(两台计算机)
【发布时间】:2019-02-13 15:15:09
【问题描述】:

我正在尝试使用 javascript 从 Firefox 发送 osc 消息,同一网络中的另一台计算机应使用 Pure Data 中 mrpeach 库中的 udpreceive 和 unpackOSC 接收该消息。我正在使用 javascript 包“osc-js”(https://github.com/adzialocha/osc-js)。我有三个实例:

  1. 包含 javascript 的 html 文件,用于从发送计算机发送消息
  2. 在 nodejs 上运行的网桥并在接收计算机上创建 websocket 服务器
  3. 应该接收消息的 Pure Data 补丁

1.

<button id="send">Send Message</button>    
<script type="text/javascript" src="https://cdn.jsdelivr.net/gh/adzialocha/osc-js/lib/osc.js"></script>
<script type="text/javascript">

var osc = new OSC();
osc.open({host:'130.149.23.228', port: '9111'}) //connect to server that was created by the bridge

document.getElementById('send').addEventListener('click', () => {
var message = new OSC.Message('/test/', 2);
osc.send(message);  //send message on click
});
</script>

2.

const OSC = require('osc-js')

const config = { udpClient: { port: 9912 } }
const osc1 = new OSC({ plugin: new OSC.BridgePlugin(config) })

osc1.open({host:'130.149.23.228', port:'9111'}) // start a WebSocket server on port 8080

发送计算机在 Windows 上运行,接收计算机在 Linux 上运行。将 OSC 从 Pure Data (PC1) 发送到 Pure Data (PC2) 有效。它还可以通过本地主机在一台 PC 内从浏览器到 Pure Data 发送和接收。但是现在我在 Firefox 中得到了这个错误:

“Firefox 无法与 ws://130.149.23.228:9111/ 上的服务器建立连接”

【问题讨论】:

  • 如果你想删除对 mrpeach 库的依赖,还可以查看 vanilla 对象 [oscformat] 和 [oscpars]e

标签: javascript osc puredata


【解决方案1】:

应该是 http://..... 而不是 ws:// 在我的机器上尝试使用 osc-js 工作。

【讨论】:

    最近更新 更多