Jittr

Jvcc1 - a cameratool with jittr

If you have a Canon VC-C1 communication camera, you may be insterrested in controling its movements from your Workstation. The camera connects via RS-232 to the serial port (say /dev/term/a) of the nearest host. A server process (jvcc1d) controls the unit, assigns a logical name and makes it accessible in the network.
Any number of graphical user interface tools (jvcc1t) connect to the server and allow concurrent control.

Download

The server program and the gui program are available in binary form for Solaris 2.5.
Use Shift-Click to download:

jvcc1d(server for a CANON VC-C1 camera)
jevid(a partly implemented server for a SONY EVI-D31 camera)
jevid.so(EVI-D31 camera server as a loadable module)
jvcc1t(user interface for both cameras)
libXpm.so.4.3(needed by the jvcc1t user interface)

Screenshots

Installation

My demo installation is on faui40j.informatik.uni-erlangen.de; it assumes the server binary is present as /usr/proj.stand/jittr/bin/sos5/jvcc1t and it consists of a single line added to the end of /etc/inittab:
ja:234:respawn:/usr/proj.stand/jittr/bin/sos5/jvcc1d -jport 7
448 -dev /dev/term/a -name camera1 -- netmask -add 131.188.25
5.255\; setuid >/dev/console 2>&1
It could also be started manually or from one of the /etc/init.d/rc* scripts, but the above method has the advantage of the server being automatically restarted, should it (crash or) be commanded to quit. The command line should be almost self explanatory. If you are from within the university of Erlangen, (I.e. your IP-address starts with 131.188.) you should be able to access the server via telnet protocol under port number 7447.

The usage of the interface tool is like this:
jvcc1t -addr faui40j.informatik:7447 -dev /jevid
If you test this with my demo server and it hangs, I probably got an error message from my server. If the user interface pops up, but feels dead, please check the status message in the "Misc" menu. If it contains "no response", the camera has been unplugged.

In the above example, the server at my machine is connected. Its camera device is called "/jevid", because I currently have the SONY EVI-D31 daemon running. Don't expect too much from this server.

Source code

The library and programs never reached production strength. You will need to add mor brains to the system. Download the jittr source code. It compiles under Solaris 2.x, SunOS 4.x, HP-UX, IRIX and Linux.

Experiments

With a bit of luck, there is a HTTP-Server running inside my jittr-testsuite. Check my Port Nr. 80 or 8080.

This HTTP-Server generates html-pages describing the device-tree of a Sony EVI-D31 camera daemon. Take care, the camera daemon is only parially implemented. It can be started from /etc/inittab like this:

ja:234:respawn:/usr/proj.stand/jittr/bin/sos5/jevid -jport 74
47 -device /dev/term/a -name jevid -- netmask -add 131.188.25
5.255\; modload /http /usr/proj.stand/jittr/lib/sos5/jhttpd.s
o\; eval { /http 80\; setuid } >/dev/console 2>&1

The above command runs the jevid daemon from init(1) and runs modload and setuid jittr commands in this daemon. Note that this modload is not the unix modload and jittr *.so modules cannot be loaded into the unix kernel. A simple jittr http server module is added to the daemon by the modload command. The effective UserId of the daemon process is set to 65534 (nobody) by the setuid command. This is recommended, as init runs all its childs with UserId 0 (root). Running jittr daemons as root is insecure as we cannot trust every module that a curious user might want to load.

The camera daemon currently supports primitive pan/tilt operations and direct movement to six predefined memory positions and (if you dare) feeding of raw hexadecimal command strings.

Pictures from this camera can be seen via mbone. I am transmitting on sdr-channel "Places all over the world". You can also load Snapshots with your browser.

You can drop me a message through the jittr service: open a telnet connection to port 7447 on host arluth.informatik.uni-erlangen.de. Type "help message", then use the comma (,) command.

Further information about the camera itself is available from Sony, their search engine or from Thomas Moeslund.

A camera-control package compatible with mbone tools can be found at http://www-itg.lbl.gov/mbone/devserv/