The true sign of successful specifications are revisions driven by the industry leaders in concert with the open source community. Ethernet, SCSI and JTAG specifications are decades old, in wide use today and have been updated multiple times for ease of use and enhanced benefits.
Another example is found in the recent development of an industry standard known as the Instrumentation and Industrial Digital Camera 2 specification (IIDC2), which is a major revamping of the industry standard IIDC 1.3* and Digital Camera (DCAM) specifications.
Figure 1. IIDC2-compliant cameras from Hamamatsu, Sony, and Toshiba Teli linked to a 1394b repeater and Express card from Technoscope during to demo the speed and reliability provided by the IIDC2 specification.
Digital video camera functionality generally has been bi-model, as consumer digital camcorders generate compressed audio/video streams and follow the Audio Video Control (AV/C IEC-6188* specifications). In contrast, instrumentation and industrial digital video cameras generate uncompressed video streams (no audio) and follow the DCAM and IIDC 1.3* specifications. The DCAM and IIDC 1.3* specifications include extensive camera controls, for example, brightness, frame rate, shutter speed and white balance, all of which are not included in the AV/C specifications.
Uncompressed video key for real-time applications
Digital video cameras for instrumentation and industrial applications are unique because of their focus on uncompressed video, raw frame rate and high resolution. The ability to operate with uncompressed video is critical for real time applications like security systems and automotive back-up cameras where latency cannot be tolerated. Latency is introduced by the video compression routines used in video camcorders, webcams and cell phone cameras. For safety critical applications, which are the most stringent, a maximum latency of 5 milliseconds can be tolerated. Security and machine vision systems require a high frame rate, typically greater than 60 frames/sec, to maintain surveillance and position. IIDC cameras offer standard frames rates from 60 fps to 1.875 fps. Point Grey, Basler and Sony have used the extended IIDC registers to reach 100 fps routinely and as high as 200 fps in one application. High resolution is most valuable in security and surveillance applications and IIDC cameras are available today ranging from 2448 by 2048 down to 640 by 480 with color depth ranging from 8 bits to 24 bits per pixel.
A little history…
The 1394 Trade Association developed the first digital video camera specification in 1996 as IIDC 1.04, and it was updated to IIDC 1.32 in 2008. The transport mechanism chosen for the early IIDC specifications was IEEE 1394 (FireWire) because of its high speed (400mb/sec), high bus power distribution and guaranteed delivery of video data. IIDC 1.3* cameras found wide acceptance in machine vision and computer vision applications in addition to webcams, including the hugely successful Apple iSight camera family.
The popularity of IIDC 1.3* digital video cameras grew over time because of the daisy chain (simplified cabling) and the ability to have simple, bus powered video cameras because of the high bus power (45 watt) distribution capabilities of IEEE-1394 over competing serial bus technologies, USB (2.5 watt) & Ethernet (0 watts). IIDC 1.32 became the basis for many digital video camera open source (Linux) community projects for example: libdc1394; unicap and coriander, because IEEE-1394 was an early, open standard with the appropriate technical capabilities. The "right" technical capabilities for the Linux community included the low CPU overhead benefits of IEEE-1394 that derive from the self-managed hardware features built into every IEEE-1394 device: non-CPU driven device enumeration, bus arbitration and bandwidth allocation.
The original DCAM and IIDC specifications were difficult to design products with as well, because of their fragmented and non-contiguous control and status register (CSR) organization. Basically, the IIDC 1.* series of specifications used a flat, linear register map where function additions were simply "tacked" on to the end of the linear list. The table below has been extracted from the IIDC 1.32 specification and it shows the INQ (capabilities), function enabling and status of a single feature scattered about the register map.
In addition, the original DCAM and IIDC specifications were targeted solely for the IEEE-1394 transport medium.