# dc1394src

Source for IIDC (Instrumentation & Industrial Digital Camera) firewire cameras. If several cameras are connected to the system, the desired one can be selected by its GUID and an optional unit number (most cameras are single unit and do not require it). The frame size, rate and format are set from capabilities. Although the IIDC specification includes a raw video mode, many cameras use mono video modes to capture in Bayer format. Thus, for each mono video mode supported by a camera, both gray raw and Bayer corresponding video formats are exposed in the capabilities. The Bayer pattern is left unspecified.

## Example launch lines

     gst-launch-1.0 -v dc1394src ! videoconvert ! autovideosink

Capture and display frames from the first camera available in the system.

     gst-launch-1.0 dc1394src guid=00074813004DF937 \
         ! "video/x-bayer,format=gbrg,width=1280,height=960,framerate=15/2" \
         ! bayer2rgb ! videoconvert ! autovideosink

Capture and display frames from a specific camera in the desired format.

## Hierarchy

    GObject
        ╰──GInitiallyUnowned
            ╰──GstObject
                ╰──GstElement
                    ╰──GstBaseSrc
                        ╰──GstPushSrc
                            ╰──dc1394src

## Factory details

Authors: – Antoine Tremblay

Classification: – `Source/Video`

Rank – none

Plugin – dc1394

Package – GStreamer Bad Plug-ins

## Pad Templates

### `src`

    video/x-raw:
             format: IYU2
              width: 160
             height: 120
          framerate: { (fraction)15/8, (fraction)15/4, (fraction)15/2, (fraction)15/1, (fraction)30/1, (fraction)60/1, (fraction)120/1, (fraction)240/1 }
    video/x-raw:
             format: UYVY
              width: 320
             height: 240
          framerate: { (fraction)15/8, (fraction)15/4, (fraction)15/2, (fraction)15/1, (fraction)30/1, (fraction)60/1, (fraction)120/1, (fraction)240/1 }
    video/x-raw:
             format: IYU1
              width: 640
             height: 480
          framerate: { (fraction)15/8, (fraction)15/4, (fraction)15/2, (fraction)15/1, (fraction)30/1, (fraction)60/1, (fraction)120/1, (fraction)240/1 }
    video/x-raw:
             format: UYVY
              width: 640
             height: 480
          framerate: { (fraction)15/8, (fraction)15/4, (fraction)15/2, (fraction)15/1, (fraction)30/1, (fraction)60/1, (fraction)120/1, (fraction)240/1 }
    video/x-raw:
             format: RGB
              width: 640
             height: 480
          framerate: { (fraction)15/8, (fraction)15/4, (fraction)15/2, (fraction)15/1, (fraction)30/1, (fraction)60/1, (fraction)120/1, (fraction)240/1 }
    video/x-raw:
             format: GRAY8
              width: 640
             height: 480
          framerate: { (fraction)15/8, (fraction)15/4, (fraction)15/2, (fraction)15/1, (fraction)30/1, (fraction)60/1, (fraction)120/1, (fraction)240/1 }
    video/x-bayer:
             format: { bggr, rggb, grbg, gbrg }
              width: 640
             height: 480
          framerate: { (fraction)15/8, (fraction)15/4, (fraction)15/2, (fraction)15/1, (fraction)30/1, (fraction)60/1, (fraction)120/1, (fraction)240/1 }
    video/x-raw:
             format: GRAY16_BE
              width: 640
             height: 480
          framerate: { (fraction)15/8, (fraction)15/4, (fraction)15/2, (fraction)15/1, (fraction)30/1, (fraction)60/1, (fraction)120/1, (fraction)240/1 }
    video/x-raw:
             format: UYVY
              width: 800
             height: 600
          framerate: { (fraction)15/8, (fraction)15/4, (fraction)15/2, (fraction)15/1, (fraction)30/1, (fraction)60/1, (fraction)120/1, (fraction)240/1 }
    video/x-raw:
             format: RGB
              width: 800
             height: 600
          framerate: { (fraction)15/8, (fraction)15/4, (fraction)15/2, (fraction)15/1, (fraction)30/1, (fraction)60/1, (fraction)120/1, (fraction)240/1 }
    video/x-raw:
             format: GRAY8
              width: 800
             height: 600
          framerate: { (fraction)15/8, (fraction)15/4, (fraction)15/2, (fraction)15/1, (fraction)30/1, (fraction)60/1, (fraction)120/1, (fraction)240/1 }
    video/x-bayer:
             format: { bggr, rggb, grbg, gbrg }
              width: 800
             height: 600
          framerate: { (fraction)15/8, (fraction)15/4, (fraction)15/2, (fraction)15/1, (fraction)30/1, (fraction)60/1, (fraction)120/1, (fraction)240/1 }
    video/x-raw:
             format: UYVY
              width: 1024
             height: 768
          framerate: { (fraction)15/8, (fraction)15/4, (fraction)15/2, (fraction)15/1, (fraction)30/1, (fraction)60/1, (fraction)120/1, (fraction)240/1 }
    video/x-raw:
             format: RGB
              width: 1024
             height: 768
          framerate: { (fraction)15/8, (fraction)15/4, (fraction)15/2, (fraction)15/1, (fraction)30/1, (fraction)60/1, (fraction)120/1, (fraction)240/1 }
    video/x-raw:
             format: GRAY8
              width: 1024
             height: 768
          framerate: { (fraction)15/8, (fraction)15/4, (fraction)15/2, (fraction)15/1, (fraction)30/1, (fraction)60/1, (fraction)120/1, (fraction)240/1 }
    video/x-bayer:
             format: { bggr, rggb, grbg, gbrg }
              width: 1024
             height: 768
          framerate: { (fraction)15/8, (fraction)15/4, (fraction)15/2, (fraction)15/1, (fraction)30/1, (fraction)60/1, (fraction)120/1, (fraction)240/1 }
    video/x-raw:
             format: GRAY16_BE
              width: 800
             height: 600
          framerate: { (fraction)15/8, (fraction)15/4, (fraction)15/2, (fraction)15/1, (fraction)30/1, (fraction)60/1, (fraction)120/1, (fraction)240/1 }
    video/x-raw:
             format: GRAY16_BE
              width: 1024
             height: 768
          framerate: { (fraction)15/8, (fraction)15/4, (fraction)15/2, (fraction)15/1, (fraction)30/1, (fraction)60/1, (fraction)120/1, (fraction)240/1 }
    video/x-raw:
             format: UYVY
              width: 1280
             height: 960
          framerate: { (fraction)15/8, (fraction)15/4, (fraction)15/2, (fraction)15/1, (fraction)30/1, (fraction)60/1, (fraction)120/1, (fraction)240/1 }
    video/x-raw:
             format: RGB
              width: 1280
             height: 960
          framerate: { (fraction)15/8, (fraction)15/4, (fraction)15/2, (fraction)15/1, (fraction)30/1, (fraction)60/1, (fraction)120/1, (fraction)240/1 }
    video/x-raw:
             format: GRAY8
              width: 1280
             height: 960
          framerate: { (fraction)15/8, (fraction)15/4, (fraction)15/2, (fraction)15/1, (fraction)30/1, (fraction)60/1, (fraction)120/1, (fraction)240/1 }
    video/x-bayer:
             format: { bggr, rggb, grbg, gbrg }
              width: 1280
             height: 960
          framerate: { (fraction)15/8, (fraction)15/4, (fraction)15/2, (fraction)15/1, (fraction)30/1, (fraction)60/1, (fraction)120/1, (fraction)240/1 }
    video/x-raw:
             format: UYVY
              width: 1600
             height: 1200
          framerate: { (fraction)15/8, (fraction)15/4, (fraction)15/2, (fraction)15/1, (fraction)30/1, (fraction)60/1, (fraction)120/1, (fraction)240/1 }
    video/x-raw:
             format: RGB
              width: 1600
             height: 1200
          framerate: { (fraction)15/8, (fraction)15/4, (fraction)15/2, (fraction)15/1, (fraction)30/1, (fraction)60/1, (fraction)120/1, (fraction)240/1 }
    video/x-raw:
             format: GRAY8
              width: 1600
             height: 1200
          framerate: { (fraction)15/8, (fraction)15/4, (fraction)15/2, (fraction)15/1, (fraction)30/1, (fraction)60/1, (fraction)120/1, (fraction)240/1 }
    video/x-bayer:
             format: { bggr, rggb, grbg, gbrg }
              width: 1600
             height: 1200
          framerate: { (fraction)15/8, (fraction)15/4, (fraction)15/2, (fraction)15/1, (fraction)30/1, (fraction)60/1, (fraction)120/1, (fraction)240/1 }
    video/x-raw:
             format: GRAY16_BE
              width: 1280
             height: 960
          framerate: { (fraction)15/8, (fraction)15/4, (fraction)15/2, (fraction)15/1, (fraction)30/1, (fraction)60/1, (fraction)120/1, (fraction)240/1 }
    video/x-raw:
             format: GRAY16_BE
              width: 1600
             height: 1200
          framerate: { (fraction)15/8, (fraction)15/4, (fraction)15/2, (fraction)15/1, (fraction)30/1, (fraction)60/1, (fraction)120/1, (fraction)240/1 }
    video/x-raw:
             format: RGB
              width: [ 1, 2147483647 ]
             height: [ 1, 2147483647 ]
          framerate: [ 1/2147483647, 2147483647/1 ]
    video/x-raw:
             format: IYU2
              width: [ 1, 2147483647 ]
             height: [ 1, 2147483647 ]
          framerate: [ 1/2147483647, 2147483647/1 ]
    video/x-raw:
             format: UYVY
              width: [ 1, 2147483647 ]
             height: [ 1, 2147483647 ]
          framerate: [ 1/2147483647, 2147483647/1 ]
    video/x-raw:
             format: IYU1
              width: [ 1, 2147483647 ]
             height: [ 1, 2147483647 ]
          framerate: [ 1/2147483647, 2147483647/1 ]
    video/x-raw:
             format: GRAY16_BE
              width: [ 1, 2147483647 ]
             height: [ 1, 2147483647 ]
          framerate: [ 1/2147483647, 2147483647/1 ]
    video/x-bayer:
             format: { bggr, rggb, grbg, gbrg }
              width: [ 1, 2147483647 ]
             height: [ 1, 2147483647 ]
          framerate: [ 1/2147483647, 2147483647/1 ]
    video/x-raw:
             format: GRAY8
              width: [ 1, 2147483647 ]
             height: [ 1, 2147483647 ]
          framerate: [ 1/2147483647, 2147483647/1 ]
    video/x-bayer:
             format: { bggr, rggb, grbg, gbrg }
              width: [ 1, 2147483647 ]
             height: [ 1, 2147483647 ]
          framerate: [ 1/2147483647, 2147483647/1 ]

Presence – always

Direction – src

Object type – GstPad

## Properties

### blocksize

    “blocksize” guint

Size in bytes to read per buffer (-1 = default)

Flags : Read / Write

Default value : 4096

### dma

    “dma” guint

The number of frames in the Direct Memory Access ring buffer

Flags : Read / Write

Default value : 10

### do-timestamp

    “do-timestamp” gboolean

Apply current stream time to buffers

Flags : Read / Write

Default value : true

### guid

    “guid” gchararray

The hexadecimal representation of the GUID of the camera (use first camera available if null)

Flags : Read / Write

Default value : NULL

### iso

    “iso” GstDC1394ISOSpeed *

The ISO bandwidth in Mbps

Flags : Read / Write

Default value : 400 (400)

### num-buffers

    “num-buffers” gint

Number of buffers to output before sending EOS (-1 = unlimited)

Flags : Read / Write

Default value : -1

### typefind

    “typefind” gboolean

Run typefind before negotiating (deprecated, non-functional)

Flags : Read / Write

Default value : false

### unit

    “unit” gint

The unit number of the camera (-1 if no unit number is used)

Flags : Read / Write

Default value : -1

## Named constants

### GstDC1394ISOSpeed

#### Members

`100` (100) – DC1394 ISO speed 100
`200` (200) – DC1394 ISO speed 200
`400` (400) – DC1394 ISO speed 400
`800` (800) – DC1394 ISO speed 800
`1600` (1600) – DC1394 ISO speed 1600
`3200` (3200) – DC1394 ISO speed 3200

The results of the search are