README File for Cambozola V0.935

Cambozola is a very simple (cheesey!) viewer for multipart jpeg streams that are often pumped out by a streaming webcam server, sending over multiple images per second. Netscape will display and refresh these automatically, but Internet Explorer and other browsers do not - they will only display the first image.

Cambozola is a cross-browser replacement that displays the image streams correctly. Without a signed jar, it is only able to connect to the same server that it was downloaded from. It may also be used from the command line to connect to any server.

Cambozola supports pluggable 'accessories' that may be used to display information about the stream or change its appearance on the fly.

NOTE: This release of Cambozola does not need to be recompiled with a 1.1.8 JVM specifically for the default Internet Explorer JVM. When the default JVM is used in IE, it will only be able to connect to the originating server unless the code is signed in a way that this JVM can understand [moral of the story, please use the Java plugin!].

An example of Cambozola in use, plus information about network configurations.

If you like it, hate it, or have any questions/comments/bugs or you would like to show your appreciation, then feel free to email me at wilcocka@gmail.com

Downloading

Download Cambozola as a .tar.gz file or a .zip file.

Building

Building Cambozola requires ant ( http://jakarta.apache.org/ant/). To build Cambozola, use:
ant

This will create two files in the dist/ directory:

Usage - Web page

The HTML snippet for a Netscape-readable page would be as follows:

<img src="/cgi-bin/w3cam.cgi?refresh=0.0" width="352" height="288">

The equivalent HTML snippet using the Cambozola viewer is:
.
.
.
<applet code="com.charliemouse.cambozola.Viewer" archive="cambozola.jar" width="352" height="400">
  <param name="url" value="/cgi-bin/w3cam.cgi?refresh=0.0">
</applet>
.
.
.

As it is specified, the cambozola.jar file should be in the same directory as the web page. Due to applet security restrictions, Cambozola can only connect to the machine that the web page was downloaded from.

Usage - Command line

To run the test server (on localhost, port 2020), use:

java -jar dist/cambozola-server.jar

To connect to the test server, use:

java -jar dist/cambozola.jar http://localhost:2020/

This server can accept multiple connections, and sends a short repeating loop of GIF images at around 30 frames per second. Move the mouse to the left-hand side of the image, to see the accessories.

Usage - Controlling Accessories

Cambozola comes with a default set of accessories:

These are specified using the '-accessories' parameter on the command line, some examples:

-noaccessories
Will not display any accessories
-accessories=none
Will not display any accessories
-accessories=default
Will display the default set of accessories
-accessories=ZoomIn,ZoomOut
Will display only the specified accessories
-retries={number}
Will attempt to connect to the server for the specified number of times
-delay={num}
Will wait the specified number of milliseconds (1/1000 sec) before retrying
-failureimage={url}
Will display the specified URL when unable to connect
-watermarks=image_url|location|link_url
Will display the image URL in the specified corner (top/bottom/right/left/north/south/east/west). When used in a browser, using a link url will make the watermark clickable.
To specify the accessories in a web page, use the 'attributes' applet parameter:
<param name="accessories" value="none"/>
Will not display any accessories
<param name="accessories" value="default"/>
Will display the default set of accessories
<param name="accessories" value="ZoomIn,ZoomOut"/>
Will display only the specified accessories
<param name="retries" value="5">
Will attempt to connect to the server for the specified number of times

Version 0.92 introduced profiles for the cameras. This supports on-camera controls for pan tilt and zoom if they are available (and to fall back onto handling this on the client if not). By default the client handles everything. The supported profiles are:

To use, just set the profile parameter <param name="profile" value="Panasonic_BLC30"/>

Real Examples

Just a couple of examples of streaming webcam URLs [they will not work in all browsers, but will in Cambozola - just right-click on the image, select copy image location, and use that as the Cambozola URL]:

Webcam software

If you want to stream from your own server, you'll need to use some streaming webcam software, some Linux-friendly package are:

Users of Cambozola

Older Versions

Version 0.50 as a .tar.gz file or a .zip file.

Version 0.34 as a .tar.gz file or a .zip file.

Version 0.25 as a .tar.gz file or a .zip file.

Translations

This document has been translated to Serbo-Croatian language by Anja Skrba from Webhostinggeeks.com.