Sending and receiving data on a network

seejayjames's icon

I'd really like to be able to stream and receive controller information via Ethernet. I'm already planning to have all my changing control data streamed to a serial port and sent out (or in from other computers) with gates, and routing data to/from multiple serials etc. using USB hubs. All that should be OK with the serial object, Windows and the USB hub handles the port assignments, no problem (except maybe speedlim and parsing, but that's another issue).

Now it gets uglier, where I'd like to be able to send/receive via Ethernet, either on a local network or (ideally) the Internet too. (Only controller information, not audio, at least for now ;) Don't see any premade object that does this easily, so I poked around with the mxj Java object. I *know* it could be done there... and I can *barely* read/understand what any Java is doing, much less write any of my own. I have little interest in learning Java (way too noob to ever catch up now ;) ... would rather be building Max patches!

Has anyone come up with a simple solution for this -- send and receive arbitrary data through Ethernet, to/from remote computer(s) (either networked or Internet)? As in, identifying IP address and such, opening ports, etc.? Remote machines running the Max patch would have some kind of "data in" object or port available (with the JVM on their machines, I imagine), and could select data streams from any/all computer(s) on the network? And did they do it without being a Java or C whiz? Or perhaps they did it without Java at all?

If need be, it could be designed where everyone sends and gets data from one master controller computer. However, I would think the networking could be arbitrarily distributed -- connecting via IP addresses or whatever. Sorta like a "Max controller stream browser".

Interactive, real-time Max performance information -- from around the lab, or around the world!

Thanks,
-CJ

keithmanlove's icon

If I read this right (and it is late) udpsend and udpreceive do just
that, and they're standard max objects. Someone correct me if I'm
wrong.

Keith

On 9/12/06, Seejay James wrote:
>
> I'd really like to be able to stream and receive controller information via Ethernet. I'm already planning to have all my changing control data streamed to a serial port and sent out (or in from other computers) with gates, and routing data to/from multiple serials etc. using USB hubs. All that should be OK with the serial object, Windows and the USB hub handles the port assignments, no problem (except maybe speedlim and parsing, but that's another issue).
>
> Now it gets uglier, where I'd like to be able to send/receive via Ethernet, either on a local network or (ideally) the Internet too. (Only controller information, not audio, at least for now ;) Don't see any premade object that does this easily, so I poked around with the mxj Java object. I *know* it could be done there... and I can *barely* read/understand what any Java is doing, much less write any of my own. I have little interest in learning Java (way too noob to ever catch up now ;) ... would rather be building Max patches!
>
> Has anyone come up with a simple solution for this -- send and receive arbitrary data through Ethernet, to/from remote computer(s) (either networked or Internet)? As in, identifying IP address and such, opening ports, etc.? Remote machines running the Max patch would have some kind of "data in" object or port available (with the JVM on their machines, I imagine), and could select data streams from any/all computer(s) on the network? And did they do it without being a Java or C whiz? Or perhaps they did it without Java at all?
>
> If need be, it could be designed where everyone sends and gets data from one master controller computer. However, I would think the networking could be arbitrarily distributed -- connecting via IP addresses or whatever. Sorta like a "Max controller stream browser".
>
> Interactive, real-time Max performance information -- from around the lab, or around the world!
>
> Thanks,
> -CJ
>
>

seejayjames's icon

Hey, there it is! Well, not *quite* where you said. I checked out the udp and another one just called "snd". "No such objects" Max declared. Ahh, though still in the New Object menu.

Looks like they've been superseded by jit.net.send and jit.net.receive.... those seem to have everything I want. Thank you Cycling!

Yet another case of not checking far enough before posting ;)

Thanks Keith!

-CJ

P.S. Anyone else doing networked interactive performance stuff?
I would imagine so......

Roald Baudoux's icon
Peter Castine's icon

On 12-Sep-2006, at 8:31, Seejay James wrote:

> Hey, there it is! Well, not *quite* where you said. I checked out
> the udp and another one just called "snd". "No such objects" Max
> declared. Ahh, though still in the New Object menu.
>
> Looks like they've been superseded by jit.net.send and
> jit.net.receive.... those seem to have everything I want. Thank
> you Cycling!

Rather the other way around. udpsend & udpreceive were introduced
quite recently (I think just now with v4.6) to non-jitterized Max/
MSP. The Jitter objects have been around for over a year.

Also, the mxj.net.* objects work well out of the box. No Java skills
required.

The snd object listed in the New Object List is an anomaly; this
looks like a bug with init/max-objectlist.txt. Possibly a legacy
thing: I seem to recall a snd object from early Max days for playing
back classic Mac OS 'snd ' resources. C74 probably dropped the object
sometime around 4.2 or 4.3.

-- P.

-------------- http://www.bek.no/~pcastine/Litter/ -------------
Peter Castine +--> Litter Power & Litter Bundle for Jitter
Universal Binaries on the way
iCE: Sequencing, Recording &
Interface Building for |home | chez nous|
Max/MSP Extremely cool |bei uns | i nostri|
http://www.dspaudio.com/ http://www.castine.de

seejayjames's icon

Thanks everyone for your helpful and speedy replies. What a great resource this forum is!

-CJ