[OSC_dev] OSC bandwidth
Stephen Sinclair
radarsat1 at gmail.com
Wed Jul 16 07:02:19 PDT 2008
Hi James,
On Wed, Jul 16, 2008 at 8:16 AM, James Sheridan
<james.sheridan at anu.edu.au> wrote:
> Hi - im looking at sending EEG data over OSC and was wondering how quick
> I can reliably transmit messages.
>
> I know it depends on message length but I'd be keeping things simple and
> sending 16 floats at a time and would like to achieve rates above 512hz?
>
> is this possible with OSC? I've tried to find some stuff on the web and
> the only thing that mentioned message rates was about how the hardware
> implementations of OSC can achieve 500hz - they didn't say if the
> receiving computer was limiting this or if it was faster than a computer
> can handle.
It's incorrect to say that OSC can "achieve" anything.. it's just a
message packet format. The speed you can achieve depends on how much
overhead it adds, vs. the capabilities of your network connection. On
today's 1 Gbps ethernet I'd say that it's more than likely possible to
go at that speed. Particularly if it's unidirectional.
In terms of raw speed, OSC adds a little overhead over custom UDP
networking, but (imho) not all that much. It adds a few bytes for the
address string, which can be short or long depending on how verbose
you want to be, and then one byte per message argument for the type
string. It requires a bit of processing on the receiving side to
parse the format and the address string.
There may be other constraints depending on what implementation you're
using and in what software/hardware context, but you haven't given any
of those kind of details. To get an answer more concretely, I suggest
you just perform some tests. This can be done pretty easily using
PureData, for example, if you want to avoid C programming.
Steve
More information about the OSC_dev
mailing list