我正在尝试使用Java从PureData接收相当大的OSC Blob(超过10000个字节的数组)。

我尝试了oscP5 library,并且在1500个字节以上获得了ArrayIndexOutOfBoundsException

我对JavaOSC library具有相同的限制,但有相同的限制(来自https://wush.net/trac/lsu-idt/wiki/JavaOSC的代码示例)。

NetUtil [3] lib给我de.sciss.net.OSCException: Error while receiving OSC packet: java.nio.BufferUnderflowException

但是,使用PureData可以轻松接收那些斑点甚至更大的斑点。
所以我想我的Java配置出了点问题。

我试图使用-Xms512m甚至-Xms2048m增加VM内存,但这无济于事。

最佳答案

oscP5库的默认数据报大小为1536,这就是您遇到该限制的原因。您可以使用OSCProperties :: setDatagramSize()更改数据报的大小,该功能在OscP5对象的构造函数中使用:

OscP5(Object theParent,OscProperties theProperties)

有关处理论坛的旧示例,请参见此链接:

https://forum.processing.org/one/topic/query-re-sending-large-number-of-values-to-processing-via-osc-from-supercollider.html

粘土布丁
纽约市

09-16 05:58