-
-void
-Performance::output_header_track (Midi_stream& midi_stream)
-{
- Midi_track midi_track;
-
- // perhaps multiple text events?
- String id_str;
- String str = String (_("Creator: "));
- if (no_timestamps_global_b)
- id_str = gnu_lilypond_str ();
- else
- id_str = gnu_lilypond_version_str();
- str += id_str;
- str += "\n";
-
- /*
- This seems silly, but in fact the audio elements should
- be generated elsewhere: not midi-specific.
- */
- Audio_text creator_a (Audio_text::TEXT, str);
- Midi_text creator (&creator_a);
- midi_track.add (Moment (0), &creator);
-
- /* Better not translate this */
- str = "Generated automatically by: ";
- str += id_str;
- if (no_timestamps_global_b)
- str += ".\n";
- else
- {
- str += _(", at ");
- time_t t (time (0));
- str += ctime (&t);
- str = str.left_str (str.length_i() - 1);
- }
- Audio_text generate_a (Audio_text::TEXT, str);
- Midi_text generate (&generate_a);
- midi_track.add (Moment (0), &generate);
-
- str = _f ("from musical definition: %s", origin_str_);
-
- Audio_text from_a (Audio_text::TEXT, str);
- Midi_text from (&from_a);
- midi_track.add (Moment (0), &from);
-
- Audio_text track_name_a (Audio_text::TRACK_NAME, "Track "
- + String_convert::i2dec_str (0, 0, '0'));
- Midi_text track_name (&track_name_a);
-
- midi_track.add (Moment (0), &track_name);
-
- // Some sequencers read track 0 last.
- // Audio_tempo tempo_a (midi_l_->get_tempo_i (Moment (1, 4)));
- // Midi_tempo tempo (&tempo_a);
- // midi_track.add (Moment (0), &tempo);
-
- midi_stream << midi_track;
-}
-