Is it possible to reduce the rate of transmission of OSC messages from widgets? I'm particularly concerned with sliders.
I'm really not a programmer, but I've dabbled in Perl for years for little stuff so when I discovered there was a CPAN module for OSC I decided to try out using it to control the lights at our theatre. It works, but I suppose maybe Perl is to slow for this task.
We use a Lanbox from http://www.lanbox.com to control the lights. The Lanbox has a very rudimentary but well documented API using one byte commands transmitted as hexidecimal ASCII over a TCP connection. Parameters are sent as additional bytes of hexidecimal.
I wrote a simple Perl script using the Net::OpenSoundControl::Server module http://search.cpan.org/~crenz/Net-OpenSoundControl-0.05/lib/Net/OpenSoundControl.pm to receive OSC messages from Control and send hexidecimal commands to the Lanbox. I'll post the script later if anyone is interested but right now it works poorly.
The problem is that it although the lights start to respond immediately after moving my finger on the iPad screen, they continue changing long after I lift my finger, especially if I drag my finger up and down the slider a couple times.
It appears that every OSC message is being dutifully send to the Lanbox, but the transmission rate of Control is much higher than the throughput of the Perl script because a backlog of level change messages continues to be sent after I lift my finger.
The messages get queued up and sent "as fast as possible" but that isn't fast enough.
It would appear that while touching a slider, Control is sending far more OSC level messages per second than I need. If I could reduce the rate to just a couple messages per second I think my script could keep up and the lights would still be plenty responsive.