GstTempo

GstTempo — helper interface for tempo synced gstreamer elements

Synopsis




                    GstTempo;
void                gst_tempo_change_tempo              (GstTempo *self,
                                                         glong beats_per_minute,
                                                         glong ticks_per_beat,
                                                         glong subticks_per_tick);

Object Hierarchy


  GInterface
   +----GstTempo

Known Implementations

GstTempo is implemented by GstSimSyn and GstAudioDelay.

Properties


  "beats-per-minute"         gulong                : Read / Write
  "subticks-per-tick"        gulong                : Read / Write
  "ticks-per-beat"           gulong                : Read / Write

Description

This interface offers three GObject properties to specify a rythmic tempo of the GStreamer pipeline. The tempo can be changed from the application side by calling gst_tempo_change_tempo().

GstElements that implement this interface should use the given tempo, to adjust their gst_object_sync_values() cycle.

The difference between the tempo iface and the tempo-tag metadata is that the metadata describes the overall tempo, but the iface allows to change the tempo during playback.

Details

GstTempo

typedef struct _GstTempo GstTempo;


gst_tempo_change_tempo ()

void                gst_tempo_change_tempo              (GstTempo *self,
                                                         glong beats_per_minute,
                                                         glong ticks_per_beat,
                                                         glong subticks_per_tick);

Set all tempo properties at once. Pass -1 to leave a value unchanged.

self : a GObject that implements GstTempo
beats_per_minute : the number of beats in a minute
ticks_per_beat : the number of ticks of one beat (measure)
subticks_per_tick : the number of subticks within one tick

Property Details

The "beats-per-minute" property

  "beats-per-minute"         gulong                : Read / Write

the number of beats per minute the top level pipeline uses.

Allowed values: >= 1


The "subticks-per-tick" property

  "subticks-per-tick"        gulong                : Read / Write

the number of subticks (for smoothing) per tick the top level pipeline uses.

Allowed values: >= 1


The "ticks-per-beat" property

  "ticks-per-beat"           gulong                : Read / Write

the number of ticks (events) per beat the top level pipeline uses.

Allowed values: >= 1