Sección de controles Ocx para Visual basic , Dll , Activex

164 - Módulo de clase para manejar un CD de audio

<Volver> - Anterior - Siguiente



 

Módulo con un ejemplo , que permite manejar las funciones básicas del Audio CD mediante el Api mciSendCommand

 

formulario de ejemplo

 

Este módulo tiene los siguientes métodos y propiedades para poder reproducir y acceder a un cd de audio

  1. OpenCD : Este método abre el dispositivo de audio ( Se edeb ejecutar antes que todo )
  2. CloseCD: Cierra el dispositivo abierto con OpenCD
  3. Eject : Expulsa la bandeja de cd
  4. Play : Comienza la reproducción del Track en la posición actual
  5. Pause : Pausa el track
  6. StopTrack : detiene el tema
  7. Track : propiedad que devuelve o establece el número de pista actual
  8. AllTracks : Colección con la cantidad de pistas del cd
  9. Minutos : Devuelve los minutos de la pista que se está reproduciendo
  10. Segundos : Devuelve los segundos

 

Antes de poder reproducir un track, se debe abrir el dispositivo con el método OpenCD. Si ya no se usa mas, hay que cerralo para evitar posibles errores con otra instancia del programa ( Problemas de alias )

Luego de abrirlo, ya se pueden usar los métodos y propiedades para poder reproducir los temas. Por ejemplo para obtener todos las pistas del Cd ( para hacer un PlayList ), se recorre en la colección AllTracks

 

    ' recorre la cantidad de tracks y las añade a un combobox
    For i = 1 To CD.AllTracks.Count
        Combo1.AddItem "Track n°" & i
    Next i  

 

Para reproducir un tema en concreto, se debe asignar directamente el número de pista a la propiedad Tracks, y resetear a 0 las propiedades "Segundos y Minutos ". Luego ejecutar el método Play

Por ejemplo esto reproduce la pista 3 desde el comienzo

CD.Track = 3
CD.Segundos = 0
CD.Minutos = 0
CD.Play

... Ya que si no se resetean a 0, el track se reproduce desde donde estaba posicionado

 

Los demás métodos, son muy simples y solo basta ejecutarlos para poder hacer play, stop, pause.

 

Nota importante : No se debe cerrar el programa con el Stop del IDE del visual basic , ya que si no, " No no se ejecuta el evento Terminate de la clase ", que es el que cierra el dispositivo MCI y libera el Alias para un posterior uso , es decir que al no cerrarse, si luego se vuelve a ejecutar el programa, saldrá un error del MCI , informando que el Alias está actualmente en uso, ya que no se usó el comando MCI_CLOSE de la función MciSendCommand

 

Error del dispositivo MCI

 

Descargar módulo de clase con ejemplo

 


Enlaces relacionados

 


Buscar en Recursos vb con Google