libVISCA

What is libVISCA?

libVISCA is a library for controlling a VISCA(tm) compliant camera through the RS232 port of your PC. VISCA, on its side, is a protocol developed by Sony so that a lot of machine vision cameras from Sony are compliant with VISCA. Typical cameras include the FCB-IX47 family of camera block for OEMs. Note that other devices, such as VCRs, can be controlled. Drop me a line f you know other functions that you would like to be implemented and for which you have the opcodes.

What are the capabilities of libVISCA?

libVISCA has been tested only with an FCB-IX47P. This does not mean that it's the only camera compatible, but some others might require addition/changes. In the current version, libVISCA has interface functions for every command/inquiry of the specifications. This includes zoom, focus, digital effects, white balance, and much more.

How does it work?

Every function composes an RS232 message, up to 12 bytes long. The message is then sent to a function that will actually send the 12 bytes after appending a header and footer. The function also waits for answers from the camera, such as ACK and completion messages. If it's an inquiry, the reply is stored in the input buffer of the interface structure.

What do I need to run it?

Nothing very special:
  • a VISCA camera
  • a Linux or Windows box with an free RS232 port
  • an RS232 cable
  • a C compiler (such as GCC), libtool, autoconf, automake (all this is part of any distro but I'm not sure about windows...)

Where can I get it?

The latest version is 1.1.1. Other older versions can be found on SourceForge. Sourceforge also hosts the git repository. SVN was used until August 2019, when a migration to git was performed. Yes, I know this is quite late for such a migration! :)

Contributed software: web control interface and daemon

I planned to bundle the following contributions in the examples/ directory or libvisca but I won't have the time to do it in the near future. If anybody can help let me know... The software below was written by Simon Bichler and Carsten Gunther. Please don't contact me about how it works or if there are bugs because I haven't written or tested the software myself. The perspective of controlling a camera via WWW looks great!!

Random links