Coriander

Coriander is the Linux graphical user interface (GUI) for controlling a Digital Camera through the IEEE1394 bus (aka FireWire, or iLink). Coriander is full featured and besides changing the parameters of the camera it will also let you record video, send images to an FTP site, convert the video to a V4L stream,... A live display is of course provided too. Best of all, Coriander will work with any camera that is compatible with the IIDC specifications (also known as DCAM specs). This includes most 1394 webcams and a majority of industrial or scientific cameras too. However, any cameras in which you can insert a video tape (camcorders,...) will NOT work with coriander. These cameras record compressed DV video on the tape, while the IIDC specify uncompressed, on-the-fly video flows. If you wish to use a camcorder you should have a look at Kino instead.

IMPORTANT NOTE (2023-09): Gnome2 support has unfortunately (and inexplicably) been removed from many recent distributions. For example, Ubuntu 18.04 is the last Ubuntu that has the required libraries available, and also the last Ubuntu release that has Coriander in its package repository. For most more recent distributions you can use my docker instructions.

Features:

Coriander almost fully implement the IIDC v1.31 specifications. This means you can control almost all features supported by your camera using the GUI. Standard IIDC features are:

  • change picture mode and format.
  • camera on/off/reset
  • control of Auto/man/one-push-auto, on/off, value and absolute value for all standard features
  • memory channel save/load
  • full Format_7 control
  • control of the external trigger
  • transmission on/off/restart

Coriander will nicely adapt itself to the features supported by your camera.

In addition to these standard features, Coriander also has several extras that are not in IIDC but which are nonetheless mandatory to make it a usefull program: a live display, image and video recording, FTP posting, error reporting, bus usage evaluation, multiple camera support, camera naming, bayer pattern decoding (6 different techniques), stereo image de-interlacing (for stereo cameras). The V4L export, which uses the vloopback module, allows you to directly use coriander as a video source for V4L programs, like gnomemeeting or Effectv!

History:

Coriander is born around Christmas 1999, shortly after libdc1394 was started by Gord Peters. It was first codenamed 'Commader' but quickly changed to 'Coriander'. How got from commander to coriander holds in this strip of Calvin and Hobbes (copyright by Bill Watterson):

(Always refer to Calvin and Hobbes if you want cool acronyms for your projects!) By the way, Calvin and Hobbes fans can have a look at the official website. Very sadly the copyright owners have shut down the great website of Martijn Reemst, which was an invaluable source of information that clearly respected the spirit of the comic books. They were probably very jaelous of its success and quality.

Other than that, coriander is a herb (and a spice) that has strictly nothing to do with this program. Visit Wikipedia to discover more about this plant.

In recent news, Coriander appeared in the issue 69 of Linux Magazine.

Download:

The source is available on the SourceForge website. For old packages check the archives. Before downloading it there you may give a try at the package management system of your distribution: Coriander packages exist for Debian, Slackware, Suse, RedHat,...

If you compile from the sources you will need the following dependencies (include the development packages):

User support:

Support can be obtained through the user mailing list. Please, please, PLEASE read the software manual before posting on the list. Besides RTFM, you might want to check the archives of the list to see if your problem has been solved before. The libdc1394 FAQ is also a very good reading.

Developers and contributors:

Contributions are always welcome, being it bug fixes, new functionalities, ideas, translations, corrections, documentation,... You can post everything on the Coriander development mailing list. To avoid spam the list is only available to subscribers. Please join the list here.

Ressources for developers include the manual as well as the usual README and source files. You can also download the IIDC specifications.

Links:

  • libdc1394: linux IEEE1394 digital camera control library
  • Univision, an API for 1394 and other V4L(2) cameras
  • IIDC API, an API for 1394 that will meet the IIDC API specifications (these specs are not released yet).
  • IEEE1394 camera list
  • Unicap, a unified API for V4L and 1394 cameras.
  • libdc1394 stuff, including a migration guide from the v1 interface to the new v2.
  • Un guide en francais pour utiliser l'iSight d'apple. Utile aussi pour d'autres webcams car l'iSight est compatible IIDC et peut donc etre substituee par d'autres modeles.

Credits:

Coriander was hacked by the following individuals. Let me know if your name is missing, incomplete or misspelled...

  • Andreas Micklei
  • Anthony Westley
  • Arne Caspari
  • Clay Kunz
  • Damien Douxchamps
  • Dan Dennedy
  • David Ergo
  • Frédéric Devernay
  • Jacob (Jack) Gryn
  • Johan Knol
  • John B. Burchett
  • John Lien
  • Konstantinos G. Derpanis
  • Laurent Bonnaud
  • L. C. Bruzenak
  • Marc Leconte
  • Marcus Lim
  • Matt Scott
  • Olaf Hering
  • Olaf Ronneberger
  • Peter De Schrijver
  • Rich Walker
  • Richard Cunningham
  • Rick Philbrick
  • Sergio
  • Toshiyuki Umeda
  • Vincent Girondel
  • Will Shackleford
  • Xiong Quanren
  • Yasutoshi Onishi

References:

Quite a few people use Coriander. Here's a (very) non exhaustive and not (at all) up-to-date list of confirmed references. You're not listed? Drop me a line! :-) I also welcome links to specific projects,... Disclaimer: these companies/institutions do not endorse Coriander in any way. They just happen to use it for the best and the worst. Companies officially supporting Coriander can be found in the sponsors section.

Universities and research institutes

Companies

Defense