【问题标题】:Using named pipes in Max for Live在 Max for Live 中使用命名管道
【发布时间】:2015-03-19 09:51:48
【问题描述】:
我需要在 C# 应用程序和 Max for Live Patch (Max 6) 之间建立一个(双向)通信通道。
可以在 Max 补丁中运行 JavaScript(相当轻量级),我考虑在 JS 中使用命名管道将数据发送到 C# 服务器。但是我不知道如何在 Max 环境中设置它们,因为不能使用 ActiveXObject 之类的东西。
这可能实现还是我必须在 C 中编写一个 Max Extension 作为代理?
(或者我应该使用网络连接?)
欢迎任何提示!
问候,
莫里茨
【问题讨论】:
标签:
javascript
c#
named-pipes
max-msp-jitter
【解决方案1】:
我承认我对命名管道没有太多经验,但无论如何我都会建议设置网络连接。
大多数需要与其他应用程序通信的 Max 用户使用本机 UDP 对象 udpsend 和 udpreceive 以及在 CNMAT 开发的 OSC 协议。我自己更喜欢 TCP / Json,并且对 Max 缺乏原生 TCP 支持感到沮丧。根据您的应用程序的需要,了解客户端何时断开连接、确保数据包以正确的顺序到达等可能非常重要——UDP 不提供这些功能。
出于这个原因,我开始使用 Unix 套接字为 Max 开发本机 TCP client。由于您使用的是 Windows,因此开箱即用并不适合您,但基本构建块仍然有用。如果你想添加 winsock 支持,这对 Max 社区来说可能是一个很大的好处。