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