SYNOPSIS

#include <allegro.h>

int get_midi_length(MIDI *midi);

DESCRIPTION

This function will simulate playing the given MIDI, from start to end, to determine how long it takes to play. After calling this function, midi_pos will contain the negative number of beats, and midi_time the length of the midi, in seconds.

Note that any currently playing midi is stopped when you call this function. Usually you would call it before play_midi, to get the length of the midi to be played, like in this example:

   length = get_midi_length(my_midi);
   play_midi(my_midi);
   do {
      pos = midi_time;
      textprintf_ex(screen, font, 0, 0, c, -1, "%d:%02d / %d:%02d\n",
         pos / 60, pos % 60, length / 60, length % 60);
      rest(100);
   } while(pos <= length);

RETURN VALUE

Returns the value of midi_time, the length of the midi.

RELATED TO get_midi_length…

load_midi(3alleg4), midi_time(3alleg4), midi_pos(3alleg4), exmidi(3alleg4)