Clapper.Marker
Description: Reference for Clapper.Marker

### Class

# ClapperMarker

#### Description [src]

    final class Clapper.Marker : Gst.Object
    {
      /* No available fields */
    }

Represents a point in timeline.

Markers are a convienient way of marking points of interest within a `ClapperTimeline` of `ClapperMediaItem`. Use them to indicate certain areas on the timeline.

Markers are reference counted immutable objects. Once a marker is created it can only be inserted into a single `ClapperTimeline` at a time.

Please note that markers are independent of `ClapperMediaItem:duration` and applications should not assume that all markers must have start/end times lower or equal the item duration. This is not the case in e.g. live streams where duration is unknown, but markers are still allowed to mark entries (like EPG titles for example).

Remember that `ClapperPlayer` will also automatically insert certain markers extracted from media such as video chapters. Clapper will never “touch” the ones created by the application. If you want to differentiate your own markers, applications can define and create markers with one of the custom types from `ClapperMarkerType` enum.

Example:

    #define MY_APP_MARKER (CLAPPER_MARKER_TYPE_CUSTOM_1)

    ClapperMarker *marker = clapper_marker_new (MY_APP_MARKER, title, start, end);

    ClapperMarkerType marker_type = clapper_marker_get_marker_type (marker);

    if (marker_type == MY_APP_MARKER) {
      // Do something with your custom marker
    }

#### Hierarchy

#### Ancestors

- GstObject
- GInitiallyUnowned
- GObject

#### Constructors

###### clapper_marker_new

Creates a new `ClapperMarker` with given params.

#### Instance methods

###### clapper_marker_get_end

Get the end position (in seconds) of `marker`.

###### clapper_marker_get_marker_type

Get the `ClapperMarkerType` of `marker`.

###### clapper_marker_get_start

Get the start position (in seconds) of `marker`.

###### clapper_marker_get_title

Get the title of `marker`.

##### Methods inherited from GstObject (25)

Please see GstObject for a full list of methods.

##### Methods inherited from GObject (43)

Please see GObject for a full list of methods.

#### Properties

###### Clapper.Marker:end

Ending time of marker.

###### Clapper.Marker:marker-type

Type of stream.

###### Clapper.Marker:start

Starting time of marker.

###### Clapper.Marker:title

Title of marker.

##### Properties inherited from GstObject (2)

###### Gst.Object:name

No description available.

###### Gst.Object:parent

The parent of the object. Please note, that when changing the ‘parent’ property, we don’t emit `GObject::notify` and `GstObject::deep-notify` signals due to locking issues. In some cases one can use `GstBin::element-added` or `GstBin::element-removed` signals on the parent to achieve a similar effect.

#### Signals

##### Signals inherited from GstObject (1)

###### GstObject::deep-notify

The deep notify signal is used to be notified of property changes. It is typically attached to the toplevel bin to receive notifications from all the elements contained in that bin.

##### Signals inherited from GObject (1)

###### GObject::notify

The notify signal is emitted on an object when one of its properties has its value set through g_object_set_property(), g_object_set(), et al.

#### Class structure

    struct ClapperMarkerClass {
      GstObjectClass parent_class;

    }

No description available.

###### Class members

`parent_class: GstObjectClass`

  No description available.