Top | ![]() |
![]() |
![]() |
![]() |
Functions
Types and Values
#define | AGS_SEQUENCER_MAX_MIDI_CHANNELS |
#define | AGS_SEQUENCER_MAX_MIDI_KEYS |
#define | AGS_SEQUENCER_DEFAULT_SAMPLERATE |
#define | AGS_SEQUENCER_DEFAULT_BUFFER_SIZE |
#define | AGS_SEQUENCER_DEFAULT_DEVICE |
#define | AGS_SEQUENCER_DEFAULT_BPM |
#define | AGS_SEQUENCER_DEFAULT_DELAY_FACTOR |
#define | AGS_SEQUENCER_DEFAULT_JIFFIE |
#define | AGS_SEQUENCER_DEFAULT_TACT |
#define | AGS_SEQUENCER_DEFAULT_TACT_JIFFIE |
#define | AGS_SEQUENCER_DEFAULT_TACTRATE |
#define | AGS_SEQUENCER_DEFAULT_SCALE |
#define | AGS_SEQUENCER_DEFAULT_DELAY |
#define | AGS_SEQUENCER_DEFAULT_PERIOD |
#define | AGS_SEQUENCER_DEFAULT_LATENCY |
#define | AGS_TYPE_SEQUENCER |
AgsSequencer | |
struct | AgsSequencerInterface |
Functions
ags_sequencer_set_device ()
void ags_sequencer_set_device (AgsSequencer *sequencer
,);
gchar *card_id
Set device.
Since:
ags_sequencer_get_device ()
gchar * ags_sequencer_get_device (AgsSequencer *sequencer
);
Get device.
Since:
ags_sequencer_list_cards ()
void ags_sequencer_list_cards (AgsSequencer *sequencer
,,
GList **card_id);
GList **card_name
Retrieve card_id
and card_name
as a list of strings.
Parameters
sequencer |
the AgsSequencer |
|
card_id |
a list containing card ids. |
[element-type utf8][out callee-allocates][array zero-terminated=1][transfer full] |
card_name |
a list containing card names. |
[element-type utf8][out callee-allocates][array zero-terminated=1][transfer full] |
Since:
ags_sequencer_is_starting ()
gboolean ags_sequencer_is_starting (AgsSequencer *sequencer
);
Get starting.
Since:
ags_sequencer_is_playing ()
gboolean ags_sequencer_is_playing (AgsSequencer *sequencer
);
Get playing.
Since:
ags_sequencer_is_recording ()
gboolean ags_sequencer_is_recording (AgsSequencer *sequencer
);
Get recording.
Since:
ags_sequencer_play_init ()
void ags_sequencer_play_init (AgsSequencer *sequencer
,);
GError **error
Initializes the sequencer for playback.
Since:
ags_sequencer_play ()
void ags_sequencer_play (AgsSequencer *sequencer
,);
GError **error
Plays the current buffer of sequencer.
Since:
ags_sequencer_record_init ()
void ags_sequencer_record_init (AgsSequencer *sequencer
,);
GError **error
Initializes the sequencer for recording.
Since:
ags_sequencer_record ()
void ags_sequencer_record (AgsSequencer *sequencer
,);
GError **error
Records the current buffer of sequencer.
Since:
ags_sequencer_stop ()
void ags_sequencer_stop (AgsSequencer *sequencer
);
Stops the sequencer from playing to it.
Since:
ags_sequencer_tic ()
void ags_sequencer_tic (AgsSequencer *sequencer
);
Every call to play may generate a tic.
Since:
ags_sequencer_offset_changed ()
void ags_sequencer_offset_changed (AgsSequencer *sequencer
,);
guint note_offset
Callback when counter expires minor note offset.
Since:
ags_sequencer_get_buffer ()
void * ags_sequencer_get_buffer (AgsSequencer *sequencer
,);
guint *buffer_length
Get current playback buffer.
Since:
ags_sequencer_get_next_buffer ()
void * ags_sequencer_get_next_buffer (AgsSequencer *sequencer
,);
guint *buffer_length
Get future playback buffer.
Since:
ags_sequencer_lock_buffer ()
void ags_sequencer_lock_buffer (AgsSequencer *sequencer
,);
void *buffer
Lock buffer
.
Since:
ags_sequencer_unlock_buffer ()
void ags_sequencer_unlock_buffer (AgsSequencer *sequencer
,);
void *buffer
Unlock buffer
.
Since:
ags_sequencer_set_bpm ()
void ags_sequencer_set_bpm (AgsSequencer *sequencer
,);
gdouble bpm
Set current playback bpm.
Since:
ags_sequencer_get_bpm ()
gdouble ags_sequencer_get_bpm (AgsSequencer *sequencer
);
Get current playback bpm.
Since:
ags_sequencer_set_delay_factor ()
void ags_sequencer_set_delay_factor (AgsSequencer *sequencer
,);
gdouble delay_factor
Set current playback delay factor.
Since:
ags_sequencer_get_delay_factor ()
gdouble ags_sequencer_get_delay_factor (AgsSequencer *sequencer
);
Get current playback delay factor.
Since:
ags_sequencer_set_start_note_offset ()
void ags_sequencer_set_start_note_offset (AgsSequencer *sequencer
,);
guint start_note_offset
Set start playback note offset.
Since:
ags_sequencer_get_start_note_offset ()
guint ags_sequencer_get_start_note_offset (AgsSequencer *sequencer
);
Get start playback note offset.
Since:
ags_sequencer_set_note_offset ()
void ags_sequencer_set_note_offset (AgsSequencer *sequencer
,);
guint note_offset
Set current playback note offset.
Since:
ags_sequencer_get_note_offset ()
guint ags_sequencer_get_note_offset (AgsSequencer *sequencer
);
Get current playback note offset.
Since:
AGS_IS_SEQUENCER()
#define AGS_IS_SEQUENCER(obj) (G_TYPE_CHECK_INSTANCE_TYPE((obj), AGS_TYPE_SEQUENCER))
AGS_IS_SEQUENCER_INTERFACE()
#define AGS_IS_SEQUENCER_INTERFACE(vtable) (G_TYPE_CHECK_CLASS_TYPE((vtable), AGS_TYPE_SEQUENCER))
AGS_SEQUENCER()
#define AGS_SEQUENCER(obj) (G_TYPE_CHECK_INSTANCE_CAST((obj), AGS_TYPE_SEQUENCER, AgsSequencer))
AGS_SEQUENCER_GET_INTERFACE()
#define AGS_SEQUENCER_GET_INTERFACE(obj) (G_TYPE_INSTANCE_GET_INTERFACE((obj), AGS_TYPE_SEQUENCER, AgsSequencerInterface))
AGS_SEQUENCER_INTERFACE()
#define AGS_SEQUENCER_INTERFACE(vtable) (G_TYPE_CHECK_CLASS_CAST((vtable), AGS_TYPE_SEQUENCER, AgsSequencerInterface))
Types and Values
AGS_SEQUENCER_DEFAULT_JIFFIE
#define AGS_SEQUENCER_DEFAULT_JIFFIE ((double) AGS_SEQUENCER_DEFAULT_SAMPLERATE / (double) AGS_SEQUENCER_DEFAULT_BUFFER_SIZE)
AGS_SEQUENCER_DEFAULT_TACT_JIFFIE
#define AGS_SEQUENCER_DEFAULT_TACT_JIFFIE (60.0 / AGS_SEQUENCER_DEFAULT_BPM * AGS_SEQUENCER_DEFAULT_TACT)
AGS_SEQUENCER_DEFAULT_TACTRATE
#define AGS_SEQUENCER_DEFAULT_TACTRATE (1.0 / AGS_SEQUENCER_DEFAULT_TACT_JIFFIE)
AGS_SEQUENCER_DEFAULT_DELAY
#define AGS_SEQUENCER_DEFAULT_DELAY (AGS_SEQUENCER_DEFAULT_JIFFIE * (60.0 / AGS_SEQUENCER_DEFAULT_BPM))
struct AgsSequencerInterface
struct AgsSequencerInterface { GTypeInterface ginterface; void (*set_device)(AgsSequencer *sequencer, gchar *card_id); gchar* (*get_device)(AgsSequencer *sequencer); void (*list_cards)(AgsSequencer *sequencer, GList **card_id, GList **card_name); gboolean (*is_starting)(AgsSequencer *sequencer); gboolean (*is_playing)(AgsSequencer *sequencer); gboolean (*is_recording)(AgsSequencer *sequencer); void (*play_init)(AgsSequencer *sequencer, GError **error); void (*play)(AgsSequencer *sequencer, GError **error); void (*record_init)(AgsSequencer *sequencer, GError **error); void (*record)(AgsSequencer *sequencer, GError **error); void (*stop)(AgsSequencer *sequencer); void (*tic)(AgsSequencer *sequencer); void (*offset_changed)(AgsSequencer *sequencer, guint note_offset); void* (*get_buffer)(AgsSequencer *sequencer, guint *buffer_length); void* (*get_next_buffer)(AgsSequencer *sequencer, guint *buffer_length); void (*lock_buffer)(AgsSequencer *sequencer, void *buffer); void (*unlock_buffer)(AgsSequencer *sequencer, void *buffer); void (*set_bpm)(AgsSequencer *sequencer, gdouble bpm); gdouble (*get_bpm)(AgsSequencer *sequencer); void (*set_delay_factor)(AgsSequencer *sequencer, gdouble delay_factor); gdouble (*get_delay_factor)(AgsSequencer *sequencer); void (*set_start_note_offset)(AgsSequencer *sequencer, guint start_note_offset); guint (*get_start_note_offset)(AgsSequencer *sequencer); void (*set_note_offset)(AgsSequencer *sequencer, guint note_offset); guint (*get_note_offset)(AgsSequencer *sequencer); };
Signal Details
The “offset-changed”
signal
void user_function (AgsSequencer *sequencer,guint note_offset,gpointer user_data)
The ::offset-changed signal notifies about changed position within notation.
Parameters
sequencer |
the AgsSequencer object |
|
note_offset |
new notation offset |
|
user_data |
user data set when the signal handler was connected. |
Flags:
Since:
The “tic”
signal
void user_function (AgsSequencer *sequencer,gpointer user_data)
The ::tic signal is emitted every tic of the sequencer. This notifies about a newly played buffer.
Parameters
sequencer |
the AgsSequencer object |
|
user_data |
user data set when the signal handler was connected. |
Flags:
Since: