| Top |
| void | append-header | Run Last |
| void | append-track | Run Last |
| void | change-channel-pressure | Run Last |
| void | change-parameter | Run Last |
| void | change-pitch-bend | Run Last |
| void | change-program | Run Last |
| void | key-off | Run Last |
| void | key-on | Run Last |
| void | key-pressure | Run Last |
| void | key-signature | Run Last |
| void | midi-putc | Run Last |
| void | on-error | Run Last |
| void | quarter-frame | Run Last |
| void | sequence-number | Run Last |
| void | sequencer-meta-event | Run Last |
| void | smtpe | Run Last |
| void | song-position | Run Last |
| void | song-select | Run Last |
| void | sysex | Run Last |
| void | tempo | Run Last |
| void | text-event | Run Last |
| void | time-signature | Run Last |
| void | tune-request | Run Last |
| enum | AgsMidiBuilderFlags |
| struct | AgsMidiBuilderHeader |
| struct | AgsMidiBuilderTrack |
| #define | AGS_TYPE_MIDI_BUILDER |
| struct | AgsMidiBuilder |
| struct | AgsMidiBuilderClass |
AgsMidiBuilderHeader * ags_midi_builder_header_alloc ();
Allocate MIDI builder header.
Since: 1.0.0
void
ags_midi_builder_header_free (AgsMidiBuilderHeader *midi_builder_header);
Free MIDI builder header.
Since: 1.0.0
AgsMidiBuilderTrack * ags_midi_builder_track_alloc ();
Allocate MIDI builder track.
Since: 1.0.0
void
ags_midi_builder_track_free (AgsMidiBuilderTrack *midi_builder_track);
Free MIDI builder track.
Since: 1.0.0
GList * ags_midi_builder_track_find_delta_time_with_track_name (GList *midi_builder_track,guint64 absolute_time,gchar *track_name);
void ags_midi_builder_track_insert_midi_message (AgsMidiBuilderTrack *midi_builder_track,unsigned char *buffer,guint length);
Insert MIDI message.
midi_builder_track |
the AgsMidiBuilderTrack |
|
buffer |
the MIDI message |
|
length |
the buffer length |
Since: 1.0.0
unsigned char * ags_midi_builder_track_get_delta_time_offset (AgsMidiBuilderTrack *midi_builder_track,guint64 absolute_time);
Get offset by delta time.
Since: 1.0.0
void ags_midi_builder_midi_putc (AgsMidiBuilder *midi_builder,gint c);
Put char in MIDI file.
Since: 1.0.0
void ags_midi_builder_on_error (AgsMidiBuilder *midi_builder,GError **error);
Triggered as an error occurs.
Since: 1.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: 1.0.0
void ags_midi_builder_append_track (AgsMidiBuilder *midi_builder,gchar *track_name);
Append a track called track_name
to midi_builder
.
Since: 1.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: 1.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: 1.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: 1.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: 1.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: 1.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: 1.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: 1.0.0
void ags_midi_builder_append_sysex (AgsMidiBuilder *midi_builder,guint delta_time,unsigned char *sysex_data,guint length);
Appends sysex data.
midi_builder |
the AgsMidiBuilder |
|
delta_time |
the delta time |
|
sysex_data |
the sysex data |
|
length |
length |
Since: 1.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: 1.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: 1.0.0
void ags_midi_builder_append_song_select (AgsMidiBuilder *midi_builder,guint delta_time,guint song_select);
Appends song select.
Since: 1.0.0
void ags_midi_builder_append_tune_request (AgsMidiBuilder *midi_builder,guint delta_time);
Appends tune request.
Since: 1.0.0
void ags_midi_builder_append_sequence_number (AgsMidiBuilder *midi_builder,guint delta_time,guint sequence);
Appends sequence number.
Since: 1.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: 1.0.0
void ags_midi_builder_append_tempo (AgsMidiBuilder *midi_builder,guint delta_time,guint tempo);
Appends tempo.
Since: 1.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: 1.0.0
void ags_midi_builder_append_key_signature (AgsMidiBuilder *midi_builder,guint delta_time,guint sf,guint mi);
Appends key signature.
Since: 1.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: 1.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: 1.0.0
void ags_midi_builder_append_xml_node (AgsMidiBuilder *midi_builder,xmlNode *node);
Append from XML node node
.
Since: 1.0.0
void ags_midi_builder_from_xml_doc (AgsMidiBuilder *midi_builder,xmlDoc *doc);
Builds from XML document doc
.
Since: 1.0.0
void
ags_midi_builder_build (AgsMidiBuilder *midi_builder);
Build the MIDI data.
Since: 1.0.0
AgsMidiBuilder *
ags_midi_builder_new (FILE *file);
Creates a new AgsMidiBuilder
Since: 1.0.0
#define AGS_IS_MIDI_BUILDER(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), AGS_TYPE_MIDI_BUILDER))
#define AGS_MIDI_BUILDER(obj) (G_TYPE_CHECK_INSTANCE_CAST((obj), AGS_TYPE_MIDI_BUILDER, AgsMidiBuilder))
#define AGS_MIDI_BUILDER_CLASS(class) (G_TYPE_CHECK_CLASS_CAST((class), AGS_TYPE_MIDI_BUILDER, AgsMidiBuilderClass))
#define AGS_MIDI_BUILDER_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), AGS_TYPE_MIDI_BUILDER, AgsMidiBuilderClass))
struct AgsMidiBuilderHeader {
guint offset;
guint format;
guint count;
guint division;
guint times;
guint beat;
guint clicks;
unsigned char *data;
guint length;
};
struct AgsMidiBuilderTrack {
AgsMidiBuilder *midi_builder;
guint offset;
gchar *track_name;
guint64 absolute_time;
unsigned char *data;
guint length;
};
struct AgsMidiBuilderClass {
GObjectClass gobject;
void (*midi_putc)(AgsMidiBuilder *midi_builder,
gint c);
void (*on_error)(AgsMidiBuilder *midi_builder,
GError **error);
/* channel messages */
void (*append_header)(AgsMidiBuilder *midi_builder,
guint offset, guint format,
guint track_count, guint division,
guint times, guint bpm,
guint clicks);
void (*append_track)(AgsMidiBuilder *midi_builder,
gchar *track_name);
void (*append_key_on)(AgsMidiBuilder *midi_builder,
guint delta_time,
guint audio_channel,
guint note,
guint velocity);
void (*append_key_off)(AgsMidiBuilder *midi_builder,
guint delta_time,
guint audio_channel,
guint note,
guint velocity);
void (*append_key_pressure)(AgsMidiBuilder *midi_builder,
guint delta_time,
guint audio_channel,
guint note,
guint pressure);
void (*append_change_parameter)(AgsMidiBuilder *midi_builder,
guint delta_time,
guint channel,
guint control,
guint value);
void (*append_change_pitch_bend)(AgsMidiBuilder *midi_builder,
guint delta_time,
guint channel,
guint pitch,
guint transmitter);
void (*append_change_program)(AgsMidiBuilder *midi_builder,
guint delta_time,
guint channel,
guint program);
void (*append_change_pressure)(AgsMidiBuilder *midi_builder,
guint delta_time,
guint channel,
guint pressure);
/* sysex and system common */
void (*append_sysex)(AgsMidiBuilder *midi_builder,
guint delta_time,
unsigned char *sysex_data, guint length);
void (*append_quarter_frame)(AgsMidiBuilder *midi_builder,
guint delta_time,
guint message_type,
guint values);
void (*append_song_position)(AgsMidiBuilder *midi_builder,
guint delta_time,
guint song_position);
void (*append_song_select)(AgsMidiBuilder *midi_builder,
guint delta_time,
guint song_select);
void (*append_tune_request)(AgsMidiBuilder *midi_builder,
guint delta_time);
/* meta events */
void (*append_sequence_number)(AgsMidiBuilder *midi_builder,
guint delta_time,
guint sequence);
void (*append_smtpe)(AgsMidiBuilder *midi_builder,
guint delta_time,
guint rr, guint hr, guint mn, guint se, guint fr);
void (*append_tempo)(AgsMidiBuilder *midi_builder,
guint delta_time,
guint tempo);
void (*append_time_signature)(AgsMidiBuilder *midi_builder,
guint delta_time,
guint nn, guint dd, guint cc, guint bb);
void (*append_key_signature)(AgsMidiBuilder *midi_builder,
guint delta_time,
guint sf, guint mi);
void (*append_sequencer_meta_event)(AgsMidiBuilder *midi_builder,
guint delta_time,
guint len, guint id, guint data);
void (*append_text_event)(AgsMidiBuilder *midi_builder,
guint delta_time,
gchar *text, guint length);
};
“append-header” signalvoid user_function (AgsMidiBuilder *midi_builder, guint offset, guint format, guint track_count, guint division, guint times, guint bpm, guint clicks, gpointer user_data)
The ::append-header signal is emited during building of header.
midi_builder |
the builder |
|
offset |
start delta-time |
|
format |
format 0, 1 or 2 |
|
track_count |
the number of tracks |
|
division |
timing division |
|
times |
pulses per quarter note |
|
bpm |
beats per minute |
|
clicks |
timing clicks |
|
user_data |
user data set when the signal handler was connected. |
Flags: Run Last
Since: 1.0.0
“append-track” signalvoid user_function (AgsMidiBuilder *midi_builder, gchar *track_name, gpointer user_data)
midi_builder |
the builder |
|
track_name |
the trach name |
|
user_data |
user data set when the signal handler was connected. |
The XML node representing the track
The ::append-track signal is emited during building of track.
Flags: Run Last
Since: 1.0.0
“change-channel-pressure” signalvoid user_function (AgsMidiBuilder *midi_builder, guint delta_time, guint channel, guint pressure, gpointer user_data)
The ::change-channel-pressure signal is emited during building of event.
midi_builder |
the builder |
|
delta_time |
delta-time |
|
channel |
the audio channel |
|
pressure |
the new pressure, aftertouch |
|
user_data |
user data set when the signal handler was connected. |
Flags: Run Last
Since: 1.0.0
“change-parameter” signalvoid user_function (AgsMidiBuilder *midi_builder, guint delta_time, guint channel, guint control, guint value, gpointer user_data)
The ::change-parameter signal is emited during building of event.
midi_builder |
the builder |
|
delta_time |
delta-time |
|
channel |
the audio channel |
|
control |
the control |
|
value |
and its value |
|
user_data |
user data set when the signal handler was connected. |
Flags: Run Last
Since: 1.0.0
“change-pitch-bend” signalvoid user_function (AgsMidiBuilder *midi_builder, guint delta_time, guint channel, guint pitch, guint transmitter, gpointer user_data)
The ::change-pitch-bend signal is emited during building of event.
midi_builder |
the builder |
|
delta_time |
delta-time |
|
channel |
the audio channel |
|
pitch |
amount of pitch as 14 bit quantifier, 0, 0x2000 to 0x3fff |
|
transmitter |
sensitivy of the wheel |
|
user_data |
user data set when the signal handler was connected. |
Flags: Run Last
Since: 1.0.0
“change-program” signalvoid user_function (AgsMidiBuilder *midi_builder, guint delta_time, guint channel, guint program, gpointer user_data)
The ::change-program signal is emited during building of event.
midi_builder |
the builder |
|
delta_time |
delta-time |
|
channel |
the audio channel |
|
program |
the new programm |
|
user_data |
user data set when the signal handler was connected. |
Flags: Run Last
Since: 1.0.0
“key-off” signalvoid user_function (AgsMidiBuilder *midi_builder, guint delta_time, guint audio_channel, guint note, guint velocity, gpointer user_data)
The ::key-off signal is emited during building of event.
midi_builder |
the builders |
|
delta_time |
delta-time |
|
audio_channel |
the audio channel |
|
note |
the note to stop play from 0 to 128 |
|
velocity |
key dynamics |
|
user_data |
user data set when the signal handler was connected. |
Flags: Run Last
Since: 1.0.0
“key-on” signalvoid user_function (AgsMidiBuilder *midi_builder, guint delta_time, guint audio_channel, guint note, guint velocity, gpointer user_data)
The ::key-on signal is emited during building of event.
midi_builder |
the builder |
|
delta_time |
delta-time |
|
audio_channel |
the audio channel |
|
note |
the note to play from 0 to 128 |
|
velocity |
key dynamics |
|
user_data |
user data set when the signal handler was connected. |
Flags: Run Last
Since: 1.0.0
“key-pressure” signalvoid user_function (AgsMidiBuilder *midi_builder, guint delta_time, guint audio_channel, guint note, guint pressure, gpointer user_data)
The ::key-pressure signal is emited during building of event.
midi_builder |
the builder |
|
delta_time |
delta-time |
|
audio_channel |
the audio channel |
|
note |
the note to press from 0 to 128 |
|
pressure |
the amount of the pressure |
|
user_data |
user data set when the signal handler was connected. |
Flags: Run Last
Since: 1.0.0
“key-signature” signalvoid user_function (AgsMidiBuilder *midi_builder, guint delta_time, guint sf, gboolean mi, gpointer user_data)
The ::key-signature signal is emited during building of event.
midi_builder |
the builder |
|
delta_time |
delta-time |
|
sf |
signature frame |
|
mi |
if |
|
user_data |
user data set when the signal handler was connected. |
Flags: Run Last
Since: 1.0.0
“midi-putc” signalvoid user_function (AgsMidiBuilder *midi_builder, gint error, gpointer user_data)
The ::midi-putc signal is emited during putting char to file.
midi_builder |
the builder |
|
error |
the GError |
|
user_data |
user data set when the signal handler was connected. |
Flags: Run Last
Since: 1.0.0
“on-error” signalvoid user_function (AgsMidiBuilder *midi_builder, gpointer error, gpointer user_data)
The ::on-error signal is emited during building of event.
midi_builder |
the builder |
|
error |
the GError |
|
user_data |
user data set when the signal handler was connected. |
Flags: Run Last
Since: 1.0.0
“quarter-frame” signalvoid user_function (AgsMidiBuilder *midi_builder, guint delta_time, guint message_type, guint values, gpointer user_data)
The ::quarter-frame signal is emited during building of event.
midi_builder |
the builder |
|
delta_time |
the delta time |
|
message_type |
the message type |
|
values |
the values |
|
user_data |
user data set when the signal handler was connected. |
Flags: Run Last
Since: 1.0.0
“sequence-number” signalvoid user_function (AgsMidiBuilder *midi_builder, guint delta_time, guint sequence, gpointer user_data)
The ::sequence-number signal is emited during building of event.
midi_builder |
the builder |
|
delta_time |
delta-time |
|
sequence |
the nth sequence |
|
user_data |
user data set when the signal handler was connected. |
Flags: Run Last
Since: 1.0.0
“sequencer-meta-event” signalvoid user_function (AgsMidiBuilder *midi_builder, guint delta_time, guint len, guint id, guint data, gpointer user_data)
The ::sequencer-meta-event signal is emited during building of event.
midi_builder |
the builder |
|
delta_time |
delta-time |
|
len |
length |
|
id |
identifier |
|
data |
buffer |
|
user_data |
user data set when the signal handler was connected. |
Flags: Run Last
Since: 1.0.0
“smtpe” signalvoid user_function (AgsMidiBuilder *midi_builder, guint delta_time, guint hr, guint mn, guint se, guint fr, guint ff, gpointer user_data)
The ::smtpe signal is emited during building of event.
midi_builder |
the builder |
|
delta_time |
delta-time |
|
hr |
hours |
|
mn |
minutes |
|
se |
seconds |
|
fr |
frame number |
|
ff |
frequency |
|
user_data |
user data set when the signal handler was connected. |
Flags: Run Last
Since: 1.0.0
“song-position” signalvoid user_function (AgsMidiBuilder *midi_builder, guint delta_time, guint song_position, gpointer user_data)
The ::song-position signal is emited during building of event.
midi_builder |
the builder |
|
delta_time |
delta-time |
|
song_position |
the current position from 0x0 to 0x3fff |
|
user_data |
user data set when the signal handler was connected. |
Flags: Run Last
Since: 1.0.0
“song-select” signalvoid user_function (AgsMidiBuilder *midi_builder, guint delta_time, guint song_select, gpointer user_data)
The ::song-select signal is emited during building of event.
midi_builder |
the builder |
|
delta_time |
delta-time |
|
song_select |
the song or sequence |
|
user_data |
user data set when the signal handler was connected. |
Flags: Run Last
Since: 1.0.0
“sysex” signalvoid user_function (AgsMidiBuilder *midi_builder, guint delta_time, gpointer sysex_data, guint length, gpointer user_data)
The ::sysex signal is emited during building of event.
midi_builder |
the builder |
|
delta_time |
delta-time |
|
sysex_data |
the data array |
|
length |
the length of the array |
|
user_data |
user data set when the signal handler was connected. |
Flags: Run Last
Since: 1.0.0
“tempo” signalvoid user_function (AgsMidiBuilder *midi_builder, guint delta_time, guint tempo, gpointer user_data)
The ::tempo signal is emited during building of event.
midi_builder |
the builder |
|
delta_time |
delta-time |
|
tempo |
the tempo number as 24-bit quantifier |
|
user_data |
user data set when the signal handler was connected. |
Flags: Run Last
Since: 1.0.0
“text-event” signalvoid user_function (AgsMidiBuilder *midi_builder, guint delta_time, gchar *text, guint length, gpointer user_data)
The ::text-event signal is emited during building of event.
midi_builder |
the builder |
|
delta_time |
delta-time |
|
text |
the text |
|
length |
length |
|
user_data |
user data set when the signal handler was connected. |
Flags: Run Last
Since: 1.0.0
“time-signature” signalvoid user_function (AgsMidiBuilder *midi_builder, guint delta_time, guint nn, guint dd, guint cc, guint bb, gpointer user_data)
The ::time-signature signal is emited during building of event.
midi_builder |
the builder |
|
delta_time |
delta time |
|
nn |
numerator |
|
dd |
denominator |
|
cc |
ticks per metronome click |
|
bb |
32nd per quarter note |
|
user_data |
user data set when the signal handler was connected. |
Flags: Run Last
Since: 1.0.0
“tune-request” signalvoid user_function (AgsMidiBuilder *midi_builder, guint delta_time, gpointer user_data)
The ::tune-request signal is emited during building of event.
midi_builder |
the builder |
|
delta_time |
delta-time |
|
user_data |
user data set when the signal handler was connected. |
Flags: Run Last
Since: 1.0.0