int midi_looped( int id_midi, int incio_bucle, fin_bucle )
Retorna:
(1) Si se reproduce correctamente. (0) Si se produce un error.
Descripción:
Inicia la reproducción de un módulo musical cargado previamente con la función load_midi(). La función debe recibir como parámetros el identificador del MIDI a reproducir, el inicio del bucle y final de bucle de reproducción.
Tan sólo puede reproducirse un módulo a la vez, si se inicia la reproducción de un módulo cuando otro esté sonando, se detendrá el anterior. No obstante se pueden reproducir simultáneamente a un MIDI, múltiples efectos de sonido (ver sound()).
MAIN_PROGRAM_CDIV
PRIVATE
int
id_midi;
BEGIN_PROGRAM
set_gfx(GFX_AUTODETECT_WINDOWED);
set_mode(m320x200);
id_midi = load_midi("../help.mid", 0); // Carga un sonido del disco duro
write(0, 160, 10, 1, "[ESPACIO] iniciar el midi (5..25)");
write(0, 0, 30, 0, "Posición MIDI:");
write_int(0, 120, 30, 0, (int *)&midi_pos);
write(0, 0, 40, 0, "Pos Tiempo MIDI:");
write_int(0, 130, 40, 0, (int *)&midi_time);
midi_looped(id_midi, 5, 25);
LOOP
{
if (scan_code == _space)
midi_looped(id_midi, 5, 25);
FRAME;
}
END_PROGRAMEste ejemplo carga el módulo contenido en el archivo help.mid con la función load_midi().
Entonces se inicia la reproducción del archivo con la función midi_looped() una vez se pulse la BARRA ESPACIADORA entrando en un bucle de la posición de inicio 5 a la 25.
Nota: Para finalizar la reproducción de un módulo musical se debe emplear la función stop_midi().
Ver: midi() - load_midi() - stop_midi() - sound() - midi_pos - midi_time