ODS currently consists of two products: a communications library and a download tool. Although these two products currently reside in the same source tree and are distributed together, it is an important goal of the project to maintain a clear line between generic library functions and application-specific features. In other words, we want the library to be suitable for embedding in any application, and so we are taking care not to taint the core library with application-specific code. This distinction will become clearer as the project matures, and the products grow in their own directions.
The ODS communications library is a body of C code that implements the Digita HIS protocol and enables applications to easily interface to Digita cameras. The library API is broken into three levels:
The utility tool, currently called ks, is a small command-line program that uses the comm library to control the camera. Although other, better, tools exist (see the "Related Projects" section) for managing digital cameras, we will probably continue to develop ks to provide support for Digita-specific features not supported by more general-purpose products.
It should go without saying that we intend to flesh out the core comm library. This means fully defining the Level-0 and Level-2 APIs, and completing coding of the Level-1 and Level-2 APIs. We will add support for USB and IrDA connections as soon as linux kernel support for these devices matures.
We intend to develop ks into a tool that can use all the capabilities of Digita cameras:
Image files downloaded from Kodak Digita cameras contain embedded files in "EXIF" format. These embedded files contain information about the image, such as the date and time the photo was taken, the lens aperature and flash setting when the photo was taken, etc. When the image file is still in the camera, this information is available through the host interface. But once the image has been downloaded, it is accessible only through the EXIF file.
We want our tools to be able to read and use the information embedded in EXIF format, so the ODS project may eventually add an EXIF-access library as a product seperate from, but used by, the Digita access tools.
A number of external products are candidates for ODS support in the form of plug-ins. These plug-ins would adapt the ODS comm library Level-1 or Level-2 API to the API required by the host product. The external products we're currently thinking of supporting are:
The following project descriptions were taken from the Freshmeat appindex:
Viljo Hakala / Last modified: Sat Apr 22 12:53:39 PDT 2000