GstBtTempo

GstBtTempo — helper interface for tempo synced gstreamer elements

Synopsis

                    GstBtTempo;
void                gstbt_tempo_change_tempo            (GstBtTempo *self,
                                                         glong beats_per_minute,
                                                         glong ticks_per_beat,
                                                         glong subticks_per_tick);

Object Hierarchy

  GInterface
   +----GstBtTempo

Known Implementations

GstBtTempo is implemented by GstBtAudioDelay, GstBtAudioSynth, GstBtFluidSynth, GstBtSidSyn, GstBtSimSyn, GstBtWaveReplay and GstBtWaveTabSyn.

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 gstbt_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

GstBtTempo

typedef struct _GstBtTempo GstBtTempo;

Opaque interface structure.


gstbt_tempo_change_tempo ()

void                gstbt_tempo_change_tempo            (GstBtTempo *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 GstBtTempo

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