我正在创建一个系统,其中用不同语言编写的代理需要使用开放声音控制(OSC)协议通过局域网进行通信。一个控制器代理将需要向多个客户端代理广播信息。我更喜欢使用多播,这样出现在网络上的任何代理都能够立即接收消息,而无需建立连接。我已经用MulticastSocket成功地用Java语言编写了程序,但是似乎很多OSC库(Java语言中的NetUtil和JavaOSC,MaxMSP中的udpsend和udpreceive )不支持组播发送。
我说对了吗?OSC库是否需要支持组播才能发送组播?或者仅仅通过发送到正确的IP地址就可以实现组播(如果是这样的话,你能展示一下如何使用java语言中的NetUtil库和/或MaxMSP中的udpsend和udpreceive对象来实现这一点吗?)
发布于 2015-02-27 17:29:33
你说对了。OSC库需要支持多播。我只能为c++说话,在那里你基本上必须正确设置套接字选项。很多OSC库都不这样做。
看看这篇关于如何在现有库中启用广播/多播的讨论,以获得一个想法:broadcasting with ofxOsc
在java中:Class StandardSocketOptions
https://stackoverflow.com/questions/27392857
复制相似问题