# jackaudiosrc

A Src that inputs data from Jack ports.

It will create N Jack ports named in_<name>_<num> where <name> is the element name and <num> is starting from 1. Each port corresponds to a gstreamer channel.

The samplerate as exposed on the caps is always the same as the samplerate of the jack server.

When the property is set to auto, this element will try to connect each input port to a random physical jack output pin.

When the property is set to none, the element will accept any number of output channels and will create (but not connect) an input port for each channel.

The element will generate an error when the Jack server is shut down when it was PAUSED or PLAYING. This element does not support dynamic rate and buffer size changes at runtime.

## Example launch line

     gst-launch-1.0 jackaudiosrc connect=0 ! jackaudiosink connect=0

Get audio input into gstreamer from jack.

## Hierarchy

    GObject
        ╰──GInitiallyUnowned
            ╰──GstObject
                ╰──GstElement
                    ╰──GstBaseSrc
                        ╰──GstPushSrc
                            ╰──GstAudioBaseSrc
                                ╰──jackaudiosrc

## Factory details

Authors: – Tristan Matthews

Classification: – `Source/Audio`

Rank – primary

Plugin – jack

Package – GStreamer Good Plug-ins

## Pad Templates

### `src`

    audio/x-raw:
             format: F32LE
             layout: interleaved
               rate: [ 1, 2147483647 ]
           channels: [ 1, 2147483647 ]

Presence – always

Direction – src

Object type – GstPad

## Properties

### client

    “client” JackClient *

Handle for jack client

Flags : Read / Write

### client-name

    “client-name” gchararray

The client name to use.

Flags : Read / Write

Default value : NULL

### connect

    “connect” GstJackConnect *

Specify how the input ports will be connected

Flags : Read / Write

Default value : auto (1)

### low-latency

    “low-latency” gboolean

Optimize all settings for lowest latency. When enabled, buffer-time and latency-time will be ignored.

Flags : Read / Write

Default value : false

### port-names

    “port-names” gchararray

Comma-separated list of port name including "client_name:" prefix

Flags : Read / Write

Default value : NULL

### port-pattern

    “port-pattern” gchararray

autoconnect to ports matching pattern, when NULL connect to physical ports

Flags : Read / Write

Default value : NULL

### server

    “server” gchararray

The Jack server to connect to (NULL = default)

Flags : Read / Write

Default value : NULL

### transport

    “transport” GstJackTransport *

Jack transport behaviour of the client

Flags : Read / Write

Default value : (none)

## Named constants

### GstJackConnect

Specify how the output ports will be connected.

#### Members

`none` (0) – Don't automatically connect ports to physical ports
`auto` (1) – Automatically connect ports to physical ports
`auto-forced` (2) – Automatically connect ports to as many physical ports as possible
`explicit` (3) – Connect ports to explicitly requested physical ports

### GstJackTransport

The jack transport state allow to sync multiple clients. This enum defines a client behaviour regarding to the transport mechanism.

#### Members

`master` (0x00000001) – Start and stop transport with state changes
`slave` (0x00000002) – Follow transport state changes

The results of the search are