| Top |
#define AGS_MIDI_BUILDER_GET_OBJ_MUTEX(obj) (&(((AgsMidiBuilder *) obj)->obj_mutex))
AgsMidiBuilderHeader * ags_midi_builder_header_alloc ();
Allocate MIDI builder header.
Since: 3.0.0
void
ags_midi_builder_header_free (AgsMidiBuilderHeader *midi_builder_header);
Free MIDI builder header.
Since: 3.0.0
AgsMidiBuilderTrack * ags_midi_builder_track_alloc ();
Allocate MIDI builder track.
Since: 3.0.0
void
ags_midi_builder_track_free (AgsMidiBuilderTrack *midi_builder_track);
Free MIDI builder track.
Since: 3.0.0
GList * ags_midi_builder_track_find_delta_time_with_track_name (GList *midi_builder_track,guint64 absolute_time,gchar *track_name);
Finds matching AgsMidiBuilderTrack within midi_builder_track
GList.
midi_builder_track |
the AgsMidiBuilderTrack. |
[element-type gpointer][transfer none] |
absolute_time |
the absolute time |
|
track_name |
the track's string representation |
Since: 3.0.0
void ags_midi_builder_track_insert_midi_message (AgsMidiBuilderTrack *midi_builder_track,guchar *buffer,guint length);
Insert MIDI message.
midi_builder_track |
the AgsMidiBuilderTrack |
|
buffer |
the MIDI message |
|
length |
the buffer length |
Since: 3.0.0
guchar * ags_midi_builder_track_get_delta_time_offset (AgsMidiBuilderTrack *midi_builder_track,guint64 absolute_time);
Get offset by delta time.
Since: 3.0.0
void ags_midi_builder_midi_putc (AgsMidiBuilder *midi_builder,gint c);
Put char in MIDI file.
Since: 3.0.0
void ags_midi_builder_on_error (AgsMidiBuilder *midi_builder,GError **error);
Triggered as an error occurs.
Since: 3.0.0
void ags_midi_builder_append_header (AgsMidiBuilder *midi_builder,guint offset,guint format,guint track_count,guint division,guint times,guint bpm,guint clicks);
Appends MIDI header to midi_builder
.
midi_builder |
the AgsMidiBuilder |
|
offset |
start delta-time |
|
format |
either 0, 1 or 2. |
|
track_count |
the number of tracks |
|
division |
timing division |
|
times |
pulse per quarter note |
|
bpm |
beats per minute |
|
clicks |
timing clicks |
Since: 3.0.0
void ags_midi_builder_append_track (AgsMidiBuilder *midi_builder,gchar *track_name);
Append a track called track_name
to midi_builder
.
Since: 3.0.0
void ags_midi_builder_append_key_on (AgsMidiBuilder *midi_builder,guint delta_time,guint audio_channel,guint note,guint velocity);
Append key-on for note
to midi_builder
with key dynamics velocity
, at delta_time
.
midi_builder |
the AgsMidiBuilder |
|
delta_time |
delta-time |
|
audio_channel |
the audio channel |
|
note |
the note to play from 0 to 128 |
|
velocity |
key dynamics |
Since: 3.0.0
void ags_midi_builder_append_key_off (AgsMidiBuilder *midi_builder,guint delta_time,guint audio_channel,guint note,guint velocity);
Append key-off for note
to midi_builder
with key dynamics velocity
, at delta_time
.
midi_builder |
the AgsMidiBuilder |
|
delta_time |
delta-time |
|
audio_channel |
the audio channel |
|
note |
the note to play from 0 to 128 |
|
velocity |
key dynamics |
Since: 3.0.0
void ags_midi_builder_append_key_pressure (AgsMidiBuilder *midi_builder,guint delta_time,guint audio_channel,guint note,guint pressure);
Append key-pressure for note
to midi_builder
with key dynamics pressure
, at delta_time
.
midi_builder |
the AgsMidiBuilder |
|
delta_time |
delta-time |
|
audio_channel |
the audio channel |
|
note |
the note to play from 0 to 128 |
|
pressure |
key dynamics |
Since: 3.0.0
void ags_midi_builder_append_change_parameter (AgsMidiBuilder *midi_builder,guint delta_time,guint channel,guint control,guint value);
Appends change parameter.
midi_builder |
the AgsMidiBuilder |
|
delta_time |
the delta time |
|
channel |
the channel |
|
control |
the control |
|
value |
the value |
Since: 3.0.0
void ags_midi_builder_append_change_pitch_bend (AgsMidiBuilder *midi_builder,guint delta_time,guint channel,guint pitch,guint transmitter);
Change pitch bend.
midi_builder |
the AgsMidiBuilder |
|
delta_time |
the delta time |
|
channel |
the channel |
|
pitch |
the pitch |
|
transmitter |
the transmitter |
Since: 3.0.0
void ags_midi_builder_append_change_program (AgsMidiBuilder *midi_builder,guint delta_time,guint channel,guint program);
Appends change program.
midi_builder |
the AgsMidiBuilder |
|
delta_time |
the delta time |
|
channel |
the channel |
|
program |
the program |
Since: 3.0.0
void ags_midi_builder_append_change_pressure (AgsMidiBuilder *midi_builder,guint delta_time,guint channel,guint pressure);
Appends change pressure.
midi_builder |
the AgsMidiBuilder |
|
delta_time |
the delta time |
|
channel |
the channel |
|
pressure |
the pressure |
Since: 3.0.0
void ags_midi_builder_append_sysex (AgsMidiBuilder *midi_builder,guint delta_time,guchar *sysex_data,guint length);
Appends sysex data.
midi_builder |
the AgsMidiBuilder |
|
delta_time |
the delta time |
|
sysex_data |
the sysex data |
|
length |
length |
Since: 3.0.0
void ags_midi_builder_append_quarter_frame (AgsMidiBuilder *midi_builder,guint delta_time,guint message_type,guint values);
Appends quarter frame.
midi_builder |
the AgsMidiBuilder |
|
delta_time |
the delta time |
|
message_type |
the message type |
|
values |
values |
Since: 3.0.0
void ags_midi_builder_append_song_position (AgsMidiBuilder *midi_builder,guint delta_time,guint song_position);
Appends song position.
midi_builder |
the AgsMidiBuilder |
|
delta_time |
the delta time |
|
song_position |
the song position |
Since: 3.0.0
void ags_midi_builder_append_song_select (AgsMidiBuilder *midi_builder,guint delta_time,guint song_select);
Appends song select.
Since: 3.0.0
void ags_midi_builder_append_tune_request (AgsMidiBuilder *midi_builder,guint delta_time);
Appends tune request.
Since: 3.0.0
void ags_midi_builder_append_sequence_number (AgsMidiBuilder *midi_builder,guint delta_time,guint sequence);
Appends sequence number.
Since: 3.0.0
void ags_midi_builder_append_smtpe (AgsMidiBuilder *midi_builder,guint delta_time,guint rr,guint hr,guint mn,guint se,guint fr);
Appends smtpe.
midi_builder |
the AgsMidiBuilder |
|
delta_time |
the delta time |
|
rr |
rate |
|
hr |
hours |
|
mn |
minutes |
|
se |
seconds |
|
fr |
fraction |
Since: 3.0.0
void ags_midi_builder_append_tempo (AgsMidiBuilder *midi_builder,guint delta_time,guint tempo);
Appends tempo.
Since: 3.0.0
void ags_midi_builder_append_time_signature (AgsMidiBuilder *midi_builder,guint delta_time,guint nn,guint dd,guint cc,guint bb);
Appends time signature.
midi_builder |
the AgsMidiBuilder |
|
delta_time |
the delta time |
|
nn |
numerator |
|
dd |
denominator |
|
cc |
ticks per metronome click |
|
bb |
32nd per quarter note |
Since: 3.0.0
void ags_midi_builder_append_key_signature (AgsMidiBuilder *midi_builder,guint delta_time,guint sf,guint mi);
Appends key signature.
Since: 3.0.0
void ags_midi_builder_append_sequencer_meta_event (AgsMidiBuilder *midi_builder,guint delta_time,guint len,guint id,guint data);
Appends sequencer meta event.
midi_builder |
the AgsMidiBuilder |
|
delta_time |
the delta time |
|
len |
the length |
|
id |
the id |
|
data |
the data |
Since: 3.0.0
void ags_midi_builder_append_text_event (AgsMidiBuilder *midi_builder,guint delta_time,gchar *text,guint length);
Appends text event.
midi_builder |
the AgsMidiBuilder |
|
delta_time |
the delta time |
|
text |
the string |
|
length |
the string length |
Since: 3.0.0
void ags_midi_builder_append_xml_node (AgsMidiBuilder *midi_builder,xmlNode *node);
Append from XML node node
.
Since: 3.0.0
void ags_midi_builder_from_xml_doc (AgsMidiBuilder *midi_builder,xmlDoc *doc);
Builds from XML document doc
.
Since: 3.0.0
void
ags_midi_builder_build (AgsMidiBuilder *midi_builder);
Build the MIDI data.
Since: 3.0.0
void ags_midi_builder_open_filename (AgsMidiBuilder *midi_builder,gchar *filename);
Open filename
and assign FILE stream to midi_builder
.
Since: 3.2.0
guchar *
ags_midi_builder_get_data (AgsMidiBuilder *midi_builder);
Get SMF data of midi_builder
.
Since: 3.2.0
guchar * ags_midi_builder_get_data_with_length (AgsMidiBuilder *midi_builder,guint *length);
Get SMF data of midi_builder
.
Since: 3.7.24
void
ags_midi_builder_write (AgsMidiBuilder *midi_builder);
Write data of midi_builder
to file.
Since: 3.2.0
AgsMidiBuilder *
ags_midi_builder_new (FILE *file);
Creates a new instance of AgsMidiBuilder
Since: 3.0.0
AgsMidiBuilder *
ags_midi_builder_new_from_filename (gchar *filename);
Creates a new instance of AgsMidiBuilder
Since: 3.2.0