Múltiples tarjetas de sonido con winmm.dll

Iniciado por DJ_MAQUINA, 31 Marzo 2011, 02:19 AM

0 Miembros y 1 Visitante están viendo este tema.

DJ_MAQUINA

Hola: He dado vueltas por todo internet intentando buscar una respuesta pero ha sido inútil.

Estoy programando una sencilla aplicación que reproduzca MP3.
pongo como ejemplo el siguiente código, que funciona al copiar cualquier MP3 a c:\archivo.mp3, iniciando un proyecto nuevo en VB6 y poner lo siguiente:



Código (vb) [Seleccionar]
Private Declare Function mciExecute Lib "winmm.dll" _
(ByVal lpstrCommand As String) As Long
Private Declare Function mciSendString _
Lib "winmm.dll" Alias "mciSendStringA" _
(ByVal lpstrCommand As String, _
ByVal lpstrReturnString As String, _
ByVal uReturnLength As Long, _
ByVal hwndCallback As Long) As Long

Private Sub Form_Load()
Dim File As String
File = "C:\archivo.mp3"
mciRet = mciSendString("open " & File & " type MPEGVideo Alias MP3", 0&, 0&, 0&)
If mciRet <> 0 Then
   MsgBox "Error abriendo MP3"
Else: mciExecute "Play MP3"
End If
End Sub


Este código me reproduce perfectamente el archivo MP3

Pero sucede que mi PC tiene 2 tarjetas de sonido. La predeterminada y otra adicional. Necesito reproducir el MP3 utilizando la otra tarjeta de sonido, y no encuentro por ningún lado cómo hacerlo.

Sé que en Soporte de Microsoft existe un código muy bueno, el problema es que utiliza "mci32.ocx" y sólo reproduce WAV.

Yo estoy utilizando directamente la API mediante "winmm.dll"

¿Alguna ayuda?

Saludos.

BlackZeroX

The Dark Shadow is my passion.