int is_playing_midi()


Retorna:

 0 // No está sonando ningún MIDI.
 1 // Si está sonando un MIDI.

Descripción:

Esta función permite determinar si se está reproduciendo un módulo de música digital de un archivo MID.

Estos módulos se deben cargar con la función load_midi() y su reproducción se inicia con una llamada a midi().

Únicamente puede reproducirse un módulo a la vez, por lo que esta función no requiere ningún parámetro, simplemente devuelve 1 si hay algún módulo reproduciéndose.


MAIN_PROGRAM_CDIV

PRIVATE
   int
    id_cancion,
    sonando;

BEGIN_PROGRAM

 set_gfx(GFX_AUTODETECT_WINDOWED);

 set_mode(m320x200);

 id_cancion = load_midi("../help.mid", 1);
 midi(id_cancion);

 write(0,0,0,0,"ENTER inicia el módulo / SPACE detiene");
 write_int(0,0,10,0, &sonando);

 LOOP{
  if (key(_enter)) midi(id_cancion);
  if (key(_space)) stop_midi();

  sonando = is_playing_midi(); // Determina si está sonando

  FRAME;
 }

END_PROGRAM

Este ejemplo carga el módulo musical contenido en el archivo help.mid y permite, dentro de un bucle, iniciarlo con la tecla ENTER y detenerlo con la barra espaciadora.

Dentro de este mismo bucle se utiliza la función is_playing_midi() para determinar si este está sonando en cada momento.

Nota: Para finalizar la reproducción de un módulo musical se debe emplear la función stop_midi().


Ver: load_midi() - midi() - is_playing_midi()