Transmitting Video

This section describes the methods to control an IIDC camera when sending video data, including the way the data is transmitted and the format of the data.

Controlling the Video Stream

The IIDC Specification defines the general Status and Control Registers for the camera. Some of these registers are used to control the isochronous transmission of video data (offsets 0600h to 061Ch).  The camera can either be setup to continuously output video frames, output a single frame, or output several frames.

Isochronous Packet Size

The camera controller must know the size of the isochronous packets that will be transmitted so that 1394 isochronous bandwidth can be allocated before instructing the camera to output data.  In formats 0, 1 and 2 the packet size can be determined based on the mode and frame rate by consulting the appropriate table in the IIDC specification.

The packet size for format 7 can be determined from the format 7 control registers. These registers will also provide the number of bytes per frame and the number of packets per frame.  Note that the packet size times the number of packets per frame may be greater than the number of bytes per frame, the extra bytes may be used for padding in the last packet of a frame and should be ignored.

Features That Affect Isochronous Packet Size or Format

The following list includes standard IIDC registers as well as PixeLINK extended registers:

 

Status and Control Registers

CUR_V_FRM_RATE

CUR_V_MODE

CUR_V_FORMAT

ISO_SPEED

Feature Status and Control Registers

FRAME_RATE

TRIGGER

Format 7 Registers

IMAGE_SIZE

COLOR_CODING_ID

BYTE_PER_PACKET

Extended Registers

PIXEL ADDRESSING

DESCRIPTOR

When any of these registers are written to, ISO_EN, ONE_SHOT and MULTI_SHOT should all be set to 0.  Otherwise the written values will be ignored and an error will be returned.