问题标签 [osc]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
1381 浏览

delphi - Delphi UDPClient 示例 -> ArtNet 通信和解析器

最近我开始了一个项目,我需要将 OSC 与 ArtNet 协议结合起来。虽然 OSC(开放声音控制)有一些可用的示例和文档,并且 vvvv 小组也编写了非常好用的 Delphi 解析器,但 ArtNet - 以太网 DMX 协议 - 实际上不支持,或者更好地说,根本不支持 delphi 的示例。我唯一设法找到的是:http: //mbed.org/users/okini3939/code/DmxArtNet/docs/c59dc374fc64/DmxArtNet_8cpp_source.html 这似乎不完整,我根本无法完成。联系作者是在黑暗中拍摄的......

无论如何,主要是在通过 UDPClient 发送它们之前进行字节编码。现在,由于这与 OSC 的工作方式基本相同,我想这没什么大不了的,尤其是因为除了 OSC,ArtNet 只需要通过 UDPClient 发送 tose 位,并且什么都没有收到(使用 OSC,大多数解析器是关于接收和解码数据包的......)但是,除了我敢说“这没什么大不了的”,我不得不说同时我不熟悉如何去做。

在第 22 页和第 23 页是带有字节格式信息的 ArtDmx 表...

www.artisticlicence.com/WebSiteMaster/User%20Guides/art-net.pdf

我认为这是为了发送命令我必须做的......

有谁知道它,或者有时间快速看看它是如何工作的,甚至可以举一个例子来说明我如何从delphi的应用程序发送数据......?

谢谢!

马克

编辑: 看起来他们的网站已关闭,因为指向 pdf 的链接不再有效,但是我仍然打开了它的副本,所以我将复制以下内容:

ArtDmx 数据包可以广播,但不推荐。单播 ArtDmx 可以显着提高网络效率。当 ArtDmx 为单播时,必须使用以下规则: 传输设备必须定期 ArtPoll 网络以检测 Universe 交换机设置的任何变化。如果传输设备选择单播,则它必须将 ArtDmx 单播到订阅(在 ArtPollReply 中)该 Universe 的所有节点。已订阅表示 Swin 和 Swout 数组中列出的任何 Universe。如果没有发送者希望发送的宇宙的订阅者,则可以广播 ArtDmx。实施者应提供单播和广播之间的动态变化。如果 Universe 订阅者的数量超过给定数量,则广播可能会变得更有效率。对于使用超过 30 个 Universe 的系统,只能强制使用单播。桌子: http://shrani.si/f/2c/GQ/3NF9rewr/artnet-udp-table.png

0 投票
1 回答
97 浏览

osc - QWERTY 到 OSC 映射器

我被这个简单的任务难住了..

我只想映射我的 QWERTY 键,以便在按下每个键时都会发送一条 OSC 消息。而已。

什么是可以做到这一点的应用程序或脚本或库(任何平台/语言)(使用 0-5 行代码)?

0 投票
1 回答
511 浏览

javascript - node.js 和处理之间的通信

我正在做一个项目,我通过 websockets 从手机接收数据到使用 socket.io 的 node.js 服务器。这我想传递给处理。处理草图没有在浏览器中运行,它管理声音,arduino,......所以我想知道将数据发送到处理草图的好协议是什么?

我没有找到在处理中使用socket.io的方法,所以我考虑使用osc?或者我可以在手机、节点、处理之间使用其他套接字协议吗?

谢谢!

0 投票
1 回答
3473 浏览

java - 尝试将变量添加到新对象时出现 InvocationTargetException

我正在尝试使用 oscP5 库将两个变量从一个草图发送到另一个草图。我发送的消息是这样创建的:

在第二个草图中,我收到这样的数据:

这里是我简化的 addToQueue 函数:

每次我开始草图时,我都会收到错误消息:

错误@OscP5 错误。将 OscMessage 转发到程序中的方法时发生错误。请检查您的代码是否存在在解析传入 OscMessage 的方法中可能发生的任何错误,例如检查转换错误、可能的空指针、数组溢出...。负责方法:oscEvent java.lang.reflect.InvocationTargetException

我已经能够将问题layoutType追溯到-Variable。如果我改变

没有错误发生。这很令人困惑,因为两个版本应该有相同的结果。错误消息对我没有任何帮助。


编辑

我已经比较了两个可能的变量:

由于打印到控制台,两者必须相同......我真的不知道在哪里搜索错误了。


编辑 2

我已经把我的第二幅草图try {...} catch(Exception ex) {ex.printStackTrace();}这样包裹起来了:

结果给了我这个错误:


编辑 4

我的Headline-Class的构造函数:

您可能也想知道useLayout(),所以这里是:

0 投票
1 回答
373 浏览

ruby - 在发送端口接收 OSC 消息

我有一个 OSC 服务器,它在收到请求消息后将数据返回到用于发送所述请求的端口。有没有办法找到用于发送消息的端口(由操作系统分配),然后在该端口上打开一个监听通道?

0 投票
0 回答
255 浏览

ios7 - NSString 转换为 NSCFString

我创建了一个NSStringClass 类别,我正在尝试做一些自定义NSString操作。
我的NSString对象正在转换为NSCFString并在调用自定义NSString方法时崩溃。

*由于未捕获的异常“NSInvalidArgumentException”而终止应用程序,原因:“-[__NSCFString stringByDeletingLastAndAddingFirstSlash]:无法识别的选择器发送到实例 0xa6015e0”

0 投票
6 回答
22074 浏览

python - 大量的 Python OSC 模块——使用哪一个?

开放式声音控制 (OSC) 是一种用于计算机、声音合成器和其他多媒体设备之间通信的协议,已针对现代网络技术进行了优化。将 OSC 与 MAX/MSP 一起使用是特别常见的——这实际上是我正在做的,使用 OSC 和 Python 与 MAX 中的另一个子系统通信。

有一堆支持 OSC 的 python 模块。伟大的。他们都声称简单、有用和完美。冒着进入主观领域的风险,您的经验对以下模块有什么建议?

我想一个简单的实现对我来说是最好的,因为我对 OSC 只熟悉了一眼。我正在使用 Python 2.7。

0 投票
1 回答
568 浏览

c++ - OSCPack external library test case in Eclipse project

Can someone explain to me how to use the oscpack library in an Eclipse workspace based project? I have created the object files with make, added the ip and osc directories to my project tree, and added these directories to the include path list in Project settings>C/C++ Build>Settings>GCC C++ Compiler>Includes.

I haven't been able to get it working in Eclipse or the g++ commandline compiler. I am running out of ideas.

The code is the SimpleReceive.cpp from the oscpack site btw.

Console output:

0 投票
1 回答
372 浏览

c++ - TUIO光标+开放框架

我正在尝试制作一个应用程序来执行一些 blob 跟踪并使用TUIO cursor消息发送 Unity3D 的所有数据,就像这样CCV做一样。这就是我对消息的看法("media"是一个在发送所有 blob 的位置/id 或发送平均值之间切换的按钮):

我的 Unity 应用程序没有收到我的消息/blob,所以我认为它们的格式不正确。有人可以告诉我可能出了什么问题吗?

0 投票
2 回答
171 浏览

osc - 为什么这个解释器变量不被理解?

我正在尝试将 OSC 消息绑定松散地耦合到处理它们的函数:

我认为这很简单。我可以在任何时候替换 f ,因此随意处理来自路径的消息/2/push1

但是当我点击按钮(发送带有路径的消息/2/push1)时,我收到一条错误消息:

所以我猜f在调用中声明的函数范围内有不同的含义OSCFunc。我想它有不同的Environment

我还尝试将函数放入常规变量中:

但这会导致相同的错误。

有没有解决的办法?当然,我不必OSCFunc每次都在其中放置整个函数体吗?