This project will be implemented using entirely open source software components. As mentioned earlier, Linux already supports the IEEE 1394 interface; this functionality is integrated into the 2.4 kernel, and there are patches for 2.2. kernels as well.

The dvgrab Linux utility will be used, at least initially, to provide the acquisition of DV data over the IEEE 1394 interface. Eventually it would be preferable to have more sophisticated camera control than currently exists in dvgrab.

We have chosen to target Quicktime as the streaming format for this project, for the following reasons:

  1. The Darwin Streaming Server is Open Source and runs on Linux
  2. Quicktime is flexible and open in its support of codecs
  3. Players exist for all major client platforms
  4. Quicktime is rapidly gaining acceptance in the streaming media market.

The openness of Quicktime provides a lot of flexibility in choosing a more highly compressed format for streaming delivery. Our current candidates include Motion JPEG, MPEG-1, and H.263. Ultimately, we would like to encode for MPEG-4, when this becomes feasible. The most important criterion for choosing a format, beyond a good balance between quality compression ratio, is that the codec be supported by Quicktime and thus able to be streamed using the Darwin Streaming Server. The following illustration shows a high-level view of how all of the pieces fit together.

Rationale  |  Plan  |  Tasks  |  Status