I am working on a PROCESSING deployment project at the Polytechnic University of Hong Kong in the Multimedia Lab (MLAB) that is connected to the School of Design.
We are trying to implement a Video Wall composed of a grid of 12 screens in a 4:3 ratio.
We have decided to implement PROCESSING on a group of seven (7) computers. Six (6) of the computers are dual screen machines and are configured as client computers running a PROCESSING client application with a dual headed configuration, but no keyboards or mice attached.
The last machine is implemented as a "server" and it has been configured to broadcasting the animation over a dedicated LAN. The server is playing an animation of the MLAB logo bouncing around.
The reason why we are trying to implement PROCESSING in this way is because we want to provide the University with a venue to showcase the work that is produced by the PROCESSING classes that we are running, as well as implement a clustered computing environment for another project that is involved with a render farm.
The hardware went together pretty much without a hitch and is now totally implemented. If you like, you can see the hardware implementation process unfold over a 10 day period via some slideshows available on the project page.
But during the software implementation we have bumped into what we have identified as some serious problems.
What we are trying to do now is figure out whether or not these problems are:
1) Ignorance on our part (we are pretty new to PROCESSING)
2) Configuration issues having to do with our PROCESSING implementation
3) Errors that exist within the implementation of the PROCESSING language itself
Here's what we have uncovered so far:
1) MINOR: The co-ordinate system(s) appear to be reversed across different PROCESSING implementation environments (more details from my collaborator to follow, this was noticed by him not me)
2) MAJOR: There does not seem to be a way to launch a remote PROCESSING process without needing to have console access, which is a problem for our particular implementation because we have an array of six computers running PROCESSING without keyboards or mice attached. When we try to start our client process, we get an X11 error.
3) MAJOR: The clients are not synchronized in terms of their timing. We thought it was an intrinsic feature of the PROCESSING language. We think this is going to be a big issue when we start running images that span the entire Video Wall
4) MAJOR: When the clients run for about an hour, they crash with a java HEAP error
5) MINOR: There seems to be a numbering issue in PROCESSING with some numbering systems starting with 0 and other numbering systems starting with 1. More details to follow.
I am wondering if there is anyone involved with the PROCESSING project that is available to help us with these questions? Maybe they have already been posted (and hopefully resolved) by someone else?