Table of Contents
X10 Airsight IP Cameras
X10’s reasonably priced “Airsight” cameras are now well supported in XTension and Video Pitcher. You can control their pan/tilt/zoom presets as well as directly control the brightness contrast and pan/tile/zoom speed from a script in XTension.
Video via JPEG Refresh
There are several ways to get video from one of the recent cameras. Video Pitcher generally should be used as a low framerate viewer and recorder for time lapse action or event review. The best way to configure an airsight camera for 2 or 3 FPS is to create a new “Generic JPEG Refresh” camera.
the ImageURL should be setup with your own IP address and your own user and password like this:
http://[your.cam.ip.address]/cgi-bin/video_snapshot.cgi?user=[user]&pwd=[password]
Make sure to also enter the userID and Password into the userid and password fields below as those are used for the camera API operation.
Video via MJPEG stream
if you wish to get more frames per second than you can get with a JPEG refresh the second choice is the MPEG stream. with this setting I can get between 6 and 10fps on my testing machines. This is a much higher load on your CPU and uses much more disk space during recordings and may not be necessary. If you wish to view the camera in it’s full resolution and speed you should switch to the cameras built in interface.
Create a new “Generic MJPEG” camera.
Enter the address and port of your camera.
The Path information to reach the MJPEG stream should be:
/cgi-bin/videostream.cgi?resolution=32&user=[username]&pwd=[password]
be sure to enter the username and password again into the next fields. That can then be used to control and adjust the camera through XTension. Lastly select “X10 Airsight” in the camera API popup.
Video via RTSP
if you wish to get full sized HD video into the program and have a fast enough CPU and enough disk resources to work with it then you can create an RTSP stream to the airsight.
Create a new “Generic RTSP” camera.
The path to the camera should be set like:
rtsp://[your.camera.IP]:554/videostream.cgi?user=[username]&passwd=[password]
also fill in the username and password into the next fields on the window and select “X10 Airsight” in the Control API popup.
The downside of the RTSP stream seems to be significant latency, it seems to buffer 6 to 10 seconds of video so you’ll never be looking at what is happening right now when you log into the stream. I would not recommend using the RTSP stream unless you need the full HD resolution. You can always switch to the cameras built in interface to view it at full frame rate and resolution.
Scripting Support
Scripting support is provided in XTension for setting the cameras built in brightness and contrast setting. You can also adjust the Pan/tilt/zoom speed from scripts so that if you wish to gently pan across the lawn but then quickly zip around to see who just drove into your driveway under scripting control you can do that. Selecting preset locations is also supported from scripting in XTension so set the PTZ Speed to fast and zoom around to the driveway in response to any action in XTension is possible.
Motion Detection
The Airsight motion detection can be sent to XTension via the JSON server After setting up a JSON server in XTension ready to accept incoming http requests open the cameras configuration tab in it’s web interface and select “Alarm Settings” and “Motion Detection” there is a checkbox for “Alarm Notification By HTTP” that you need to turn on and then in the Http URL field that will appear when that box is checked you must enter an http URL that corresponds to what you’ve setup for the JSON server.
http://[xtension.machine.address]:[JSON Server Port]/[TAG]/[UNIT ADDRESS]/on http://192.168.0.2:8081/1234567890/FRONTMOTION/on
where you’ve created a new unit in XTension with the address of “FRONTMOTION” and assigned it to the JSON interface. That unit will then receive an ON whenever the camera detects motion. The [TAG] is a unique string that helps to identify where the request is coming from and you set those up in the JSON server configuration window.