Foro de elhacker.net

Programación => Programación Visual Basic => Mensaje iniciado por: BlackZeroX en 25 Diciembre 2008, 01:05 am



Título: MCICommandString - DLL InfraMedia
Publicado por: BlackZeroX en 25 Diciembre 2008, 01:05 am
Esta es una libreria donde pongo funciones de MCI para poder manejar según los codec's instalados en la pc:
Música
Imagenes
Videos

Dichos codigos no son la gran cosa ya que cualquiera los podria crear con solo leer la MSDN, solo son funciones que sustituyen a dichos comandos MCI (abajo muestro unos 3er post secuencial.)

Usa la Api mciSendString y mciGetErrorString

Funciones que incluye la DLL:

hay funciones que piden
:::WindowsStyle::: lo tipos son:
popup
child
(creo que hay otro mmm igual pueden buscar mas info sobre MCI y asi encuentran el otro xP)

Código:
AbrirComoVentana
AbrirMedia
AcercaDe
Audio_Derecho_OFF
Audio_Derecho_ON
Audio_EstableceLeftVolume
Audio_EstableceRightVolume
Audio_EstableceVolumenGeneral
Audio_EstadoDelAudio
Audio_Izquierdo_OFF
Audio_Izquierdo_ON
Audio_ObtenerLeftVolume
Audio_ObtenerRightVolume
Audio_ObtenerVolumenGeneral
Audio_OFF
Audio_ON
CerrarMedios
ChecarError
Device_Listo
Device_Nombre
Device_Version
Disquera_Abrir
Disquera_Cerrar
Establece_PocicionEn
Establece_TamanoLocal
Establece_Velocidad
Estraer_TamanoPred
MedioX_AdelantarCuadros
MedioX_AdelantarMilisegundos
MedioX_AdelantarSegundos
MedioX_AtrasarCuadros
MedioX_CerrarMedia
MedioX_DetenerMedio
MedioX_FormatoTiempo
MedioX_FormatoTiempoFaltante
MedioX_FormatoTiempoPosicion
MedioX_MinimizarMedio
MedioX_MostrarMedio
MedioX_Obtener_CuadrosPorSegundo
MedioX_Obtener_TamanoActual
MedioX_Obtener_TamanoOriginal
MedioX_Obtener_Velocidad
MedioX_Obtener_VelocidadNominalEnCuadros
MedioX_OcultarMedio
MedioX_PausarMedio
MedioX_PosicionEnMilisegundos
MedioX_ReiniciarMedio
MedioX_ReproduceFullScreen
MedioX_Reproduciendo
MedioX_ReproducirMedia
MedioX_RestaurarMedio
MedioX_ResumirMedio
MedioX_TiempoFaltanteEnCuadros
MedioX_TiempoFaltanteEnMilisegundos
MedioX_TiempoFaltanteEnSegundos
MedioX_Video_Estado
MedioX_VideoOff
MedioX_VideoOff_ALL
MedioX_VideoOn
MedioX_VideoOn_ALL
Obtener_BitsPorPicel
Obtener_EntradaDelMedio
Obtener_EstadoDelMedio
Obtener_PosicionEnCuadros
Obtener_PosicionEnSegundos
Obtener_SalidaDelMedio
Restaurar_TamanoOriginal
stepCuadros
UrlMedia_Establece

Como ven esta muy completa esta libreria pero aun me faltan opciones a como yo lo veo.

Descargar En RAR (http://musanto.webcindario.com/InfrAngeluX/InfraMediaPlayer/InfraMedia.rar)
Descargar En Zip (http://musanto.webcindario.com/InfrAngeluX/InfraMediaPlayer/InfraMedia.zip)


Comentarios? gracias

Saludos


Título: Re: DLL InfraMedia Reproduccion de Multimedios
Publicado por: BlackZeroX en 25 Diciembre 2008, 01:11 am
ejemplos sencillos:

se nesesita solo un timer y en un formulario:

Reproduce un Medio infinitamente (gracias a que el timer verifica si se esta reproduciendo o NO xP)
Código
  1. Dim pr As New InfraMediaByOAMA
  2. private sub form_load()
  3.        With PR
  4.            '.cerrarmedios 'Cierra TODOS los medios que se abrieron con anterioridad
  5.            .UrlMedia_Establece "ruta del archivo no importa si es musica, imagen o video"
  6.            .abrirmedia
  7.            .mediox_reproducirmedia
  8.            AutoRedraw = True
  9.            Print .mediox_posicionenmilisegundos(0)
  10.            MsgBox .AcercaDe
  11.        End With
  12. end sub
  13.  
  14.  
  15. Private Sub Form_Terminate(): PR.cerrarmedios: End Sub
  16.  
  17. Private Sub Timer1_Timer()
  18.    If Not PR.mediox_reproduciendo Then
  19.        PR.mediox_reiniciarmedio
  20.    End If
  21.    info
  22. End Sub
  23.  
  24. Sub info()
  25.    Cls
  26.    With PR
  27.        Print "----------------------------------------------"
  28.        Print "Tiempo del Medio: " & vbTab & vbTab & vbTab & .MedioX_FormatoTiempoPosicion & "  " & .mediox_FormatoTiempofaltante
  29.        Print "----------------------------------------------"
  30.        Print "Velocidad Actual de Medio: " & vbTab & vbTab & .MedioX_Obtener_Velocidad
  31.        Print "----------------------------------------------"
  32.        Print "Version del Componente MCI: " & vbTab & vbTab & .device_version
  33.        Print "----------------------------------------------"
  34.        Print "estado de Componente MCI: " & vbTab & vbTab & .device_listo
  35.        Print "----------------------------------------------"
  36.    End With
  37. End Sub
  38.  

el codigo anterior si se le pone la ruta de una imagen o video este saldrá de una ventana emergente ("PopUp")
si se desea mostrar un video o imagen en un lugar especifico usar el siguiente codigo:


Código
  1. Dim pr As New InfraMediaByOAMA
  2. Private Sub form_load()
  3.        With pr
  4.            '.cerrarmedios 'Cierra TODOS los medios que se abrieron con anterioridad
  5.            .UrlMedia_Establece "ruta de la imagen o video"
  6.            .AbrirComoVentana Picture1.hWnd, "child"   '.AbrirMedia
  7.            .MedioX_ReproducirMedia
  8.            AutoRedraw = True
  9.            Print .MedioX_PosicionEnMilisegundos(0)
  10.            MsgBox .AcercaDe
  11.        End With
  12. End Sub
  13.  
  14.  
  15. Private Sub Form_Terminate(): pr.CerrarMedios: End Sub
  16.  
  17. Private Sub Timer1_Timer()
  18.    If Not pr.MedioX_Reproduciendo Then
  19.        pr.MedioX_ReiniciarMedio
  20.    End If
  21.    info
  22. End Sub
  23.  
  24. Sub info()
  25.    Cls
  26.    With pr
  27.        Print "----------------------------------------------"
  28.        Print "Tiempo del Medio: " & vbTab & vbTab & vbTab & .MedioX_FormatoTiempoPosicion & "  " & .MedioX_FormatoTiempoFaltante
  29.        Print "----------------------------------------------"
  30.        Print "Velocidad Actual de Medio: " & vbTab & vbTab & .MedioX_Obtener_Velocidad
  31.        Print "----------------------------------------------"
  32.        Print "Version del Componente MCI: " & vbTab & vbTab & .Device_Version
  33.        Print "----------------------------------------------"
  34.        Print "estado de Componente MCI: " & vbTab & vbTab & .Device_Listo
  35.        Print "----------------------------------------------"
  36.    End With
  37. End Sub
  38.  


Título: Re: DLL InfraMedia Reproduccion de Multimedios
Publicado por: BlackZeroX en 25 Diciembre 2008, 01:46 am
Podre aquí un poco de MCI Command String

use open para identificarlo posteriormente al medio actual y poder realizar los demas Comdos posteriormente por medio del identificador, Play + ruta del archivo solo reproduce pero no realiza cambios posterioes almenos que se le ponga un alias.

Código
  1. archivo="Ruta del archivo"
  2. tipo="mpeg" ' puede ser otro tipo este lo cambian según los codecs
  3. identificador="un nombre o numero" 'servira para hacerse una modificación al medio abierto posteriormente xP
  4.  
  5. "open " & chr(32) & Archivo & chr(32)  & " type " & Tipo & " alias " & Identificador & " "
  6. "play " & indetificador & " "
  7. o
  8. "play " & chr(32 & rutadelarchivo & chr(32) & " "
  9. "play " & identificador & " fullscreen"
  10.  
Código
  1. "setaudio " & identificador & " volume to " & Valor
  2. "setaudio " & identificador & " left volume to " & Valor
  3. "setaudio " & identificador & " Right volume to " & Valor
  4.  


para obtener vvolumen posicion y demas usese status
Código
  1. "status " & identificador & " volume"
  2. "status " & identificador & " left volume"
  3. "status " & identificador & " Right volume"
  4.  
Código
  1. "set " & identificador & " video off"
  2. "set " & identificador & " video on"
  3. "set " & identificador & " volume off"
  4. "set " & identificador & " audio all off"
  5. "set " & identificador & " audio all on"
  6.  

si quieren callar solo un lado seai zquierdo o derecho usese Left o Right según se dee

Si deseean mas informacion sobre los MCI Command String esta el MSDN Click para acceder (http://msdn.microsoft.com/en-us/library/ms710815(VS.85).aspx) o google (http://www.google.com.mx/)


Título: Re: MCICommandString - DLL InfraMedia
Publicado por: byway en 26 Diciembre 2008, 23:35 pm
Código:
Esta es una libreria donde pongo funciones de MCI para poder manejar según los codec's instalados en la pc:

 :o :o :o :o :o :o :o :o

Código
  1. Dim pr As New InfraMediaByOAMA

 :o :o :o :o :o :o :o :o

Código:
 InfraMediaByOAMA

 :¬¬ :¬¬ :o :o :o :o :o :o



Título: Re: MCICommandString - DLL InfraMedia
Publicado por: Karcrack en 27 Diciembre 2008, 00:44 am
Ademas de como resalta byway que el autor de la libreria no esta claro quien es....
los links no funcionan

Saludos :rolleyes:


Título: Re: MCICommandString - DLL InfraMedia
Publicado por: seba123neo en 27 Diciembre 2008, 01:16 am
no es serio esto, ¿¿al final quien es el autor?? :xD, esta linea de codigo me dejo mudo:

Código
  1. Private Sub Form_Terminate(): PR.cerrarmedios: End Sub
:-\ :-\



Título: Re: MCICommandString - DLL InfraMedia
Publicado por: BlackZeroX en 27 Diciembre 2008, 02:58 am
Antes que nada Links Arreglados.

>|------------------------>

Código
  1. Dim pr As New InfraMediaByOAMA
Código:
 InfraMediaByOAMA

OAMA

Ortega Avila Miguel Angel   =   OAMA

Siempre me a sonado a Iraqi pero bueno es mi diminutivo pero igual.¡!

no es serio esto, ¿¿al final quien es el autor?? :xD, esta linea de codigo me dejo mudo:

Código
  1. Private Sub Form_Terminate(): PR.cerrarmedios: End Sub
:-\ :-\

mmm cual es la diferencia de Terminate y Unload?, mmm (cuando termina y cuando se descarga, cual es la diferencia mmm) :-\ :-\

De igual forma pudo hacer sido:

Código
  1. pr.MedioX_cerramedio [indentificar] ' si no se pone identificador se tomara 0 por default
  2. pr.MedioX_cerramedio ' mci close id
  3.  
  4. ' Pero como cierro el APP y no deseo seguir oyendo nada mejor uso (solo solo en el VB)
  5.  
  6. pr.Cerrarmedios ' mci => close all
  7.  

Algo mas ¬¬!    :rolleyes:

P.D.: El identificaador llega hasta 100 elementos (0-99), lo realice asi para evitarme la pena de crear mas de 1 vez la dll y posibleemente hacer degradados intercalados de música (exagere con los 100 elementos lo se ¬¬).


Título: Re: MCICommandString - DLL InfraMedia
Publicado por: Karcrack en 27 Diciembre 2008, 12:21 pm
Lamento haber dudado ;)

Buen proyecto ;D ;)


Título: Re: MCICommandString - DLL InfraMedia
Publicado por: BlackZeroX en 27 Diciembre 2008, 21:04 pm
Lamento haber dudado ;)

Buen proyecto ;D ;)

Cita de: Albert Einstein
Todos somos ignorantes;lo que pasa es que no todos ignoramos las mismas cosas - Albert Einstein

No hay cuidado