Ejemplo: Reproducir una pista de un CD audio

El siguiente procedimiento usa la interfaz de control de medios para reproducir la primera pista de un CD audio.

PARA REPRODUCIR.PISTA.1
  IGNORA MCI [open cdaudio]
  MCI [set cdaudio time format tmsf]
  MCI [play cdaudio from 1 to 2]
  ESPERA 3600
  MCI [stop cdaudio]
  MCI [close cdaudio]
FIN

Veamos más de cerca cada instrucción en el ejemplo anterior.

Primero, el procedimiento abre el dispositivo cdaudio ejecutando un comando open («abrir» en español). Este «open» no tiene nada que ver con abriendo la bandeja de CD; se lo requiere antes de que el dispositivo cdaudio aceptará cualquier otro comando. A diferencia de la mayoría de los otros comandos MCI, el comando open devuelve un valor si se ejecuta con éxito. Debido a que los programas Logo deben hacer algo con cada valor devuelto, sencillamente usamos IGNORA para ignorarlo.

Después de abrir el dispositivo, usamos el comando set («pon» en español) para especificar el formato de tiempo como «tmsf», que significa «track:minute:second:frame» en inglés («pista:minuto:segundo:cuadro» en español).

A continuación, usamos el comando play («reproducir» en español) para empezar la reproducción de un tiempo a otro. Se reproduce la pista asíncronamente, que quiere decir que FMSLogo no espera para que la pista termine antes de ejecutar la próxima instrucción. Si quisieras esperar hasta que la pista termine antes de seguir a la próxima instrucción, pudieras añadir la bandera wait («esperar» en español) al fin del comando MCI, como en:

MCI [play cdaudio from 1 to 2 wait]

Como usamos el formato TMFS, se toman los números de to y from como números de pista. Se dan los valores de TMFS en formato pp:mm:ss:cc, así que si quisiéramos reproducir los primeros 15 segundos de pista 1, pudiéramos hacerlo con la instrucción siguiente:

MCI [play cdaudio from 1 to 1:00:15]

También nota que no es necesario especificar una hora de finalización para el comando play. Si quisieras reproducir el CD entero, pudieras hacerlo con:

MCI [play cdaudio from 1]

La instrucción de ESPERA sólo espera 60 segundos. No tiene nada que ver con la MCI, sólo te da tiempo para escuchar al CD.

Usamos el comando stop («detenerse» en español) para detener a la reproducción del CD.

Finalmente, usamos el comando close («cerrar» en español) para decirle a la MCI que hemos terminado con el dispositivo cdaudio.


SourceForge.net Logo