# GESSource

    GObject
        ╰──GInitiallyUnowned
            ╰──GESTimelineElement
                ╰──GESTrackElement
                    ╰──GESSource
                        ╰──GESAudioSource
                        ╰──GESVideoSource

Base class for single-media sources

### Class structure

#### GESSourceClass

### GES.SourceClass

## GES.Source

    GObject.Object
        ╰──GObject.InitiallyUnowned
            ╰──GES.TimelineElement
                ╰──GES.TrackElement
                    ╰──GES.Source
                        ╰──GES.AudioSource
                        ╰──GES.VideoSource

Base class for single-media sources

## GES.Source

    GObject.Object
        ╰──GObject.InitiallyUnowned
            ╰──GES.TimelineElement
                ╰──GES.TrackElement
                    ╰──GES.Source
                        ╰──GES.AudioSource
                        ╰──GES.VideoSource

Base class for single-media sources

### Virtual Methods

#### create_source

    GstElement *
    create_source (GESSource * source)

Creates the GstElement to put in the source topbin. Other elements will be queued, like a volume. In the case of a AudioUriSource, for example, the subclass will return a decodebin, and we will append a volume.

Parameters:

`source` –

The GESAudioSource

Returns ( [transfer: floating]) –

The source element to use.

Since : 1.20

#### vfunc_create_source

    function vfunc_create_source(source: GES.Source): {
        // javascript implementation of the 'create_source' virtual method
    }

Creates the GstElement to put in the source topbin. Other elements will be queued, like a volume. In the case of a AudioUriSource, for example, the subclass will return a decodebin, and we will append a volume.

Parameters:

`source` (GES.Source) –

The GES.AudioSource

Returns (Gst.Element) –

The source element to use.

Since : 1.20

#### do_create_source

    def do_create_source (source):
        #python implementation of the 'create_source' virtual method

Creates the GstElement to put in the source topbin. Other elements will be queued, like a volume. In the case of a AudioUriSource, for example, the subclass will return a decodebin, and we will append a volume.

Parameters:

`source` (GES.Source) –

The GES.AudioSource

Returns (Gst.Element) –

The source element to use.

Since : 1.20

#### select_pad

    gboolean
    select_pad (GESSource * source,
                GstPad * pad)

Check whether pad should be exposed/used.

Parameters:

`source` –

The source for which to check if pad should be used or not

`pad` –

The pad to check

Returns –

TRUE if pad should be used FALSE otherwise.

Since : 1.20

#### vfunc_select_pad

    function vfunc_select_pad(source: GES.Source, pad: Gst.Pad): {
        // javascript implementation of the 'select_pad' virtual method
    }

Check whether pad should be exposed/used.

Parameters:

`source` (GES.Source) –

The source for which to check if pad should be used or not

`pad` (Gst.Pad) –

The pad to check

Returns (Number) –

true if pad should be used false otherwise.

Since : 1.20

#### do_select_pad

    def do_select_pad (source, pad):
        #python implementation of the 'select_pad' virtual method

Check whether pad should be exposed/used.

Parameters:

`source` (GES.Source) –

The source for which to check if pad should be used or not

`pad` (Gst.Pad) –

The pad to check

Returns (bool) –

True if pad should be used False otherwise.

Since : 1.20

## Constants

### GES_TYPE_SOURCE

    #define GES_TYPE_SOURCE ges_source_get_type()

The results of the search are