miércoles, 23 de marzo de 2011
Reproductor de video
Option Explicit
Dim MM As New MovieModule
' Botón Play
''''''''''''''''''''''''''
Private Sub Command1_Click()
On Error Resume Next
' play
MM.playMovie
MM.setVolume Volume.Value * 10 ' establece el volumen
' Activa el timer
Timer1.Enabled = True
' posición máxima
SliderPosition.Max = Val(MM.getLengthInSec)
MM.timeOut 0.5
' estado actual
StatusBar1.Panels(1).Text = "Status: " & MM.getStatus
' Estado del error
StatusBar1.Panels(3).Text = "Error Status: " & MM.checkError
End Sub
' botón que detiene
'''''''''''''''''''''''''
Private Sub Command2_Click()
MM.stopMovie ' detiene
Timer1.Enabled = False
MM.timeOut 1
' estado de reprodución
StatusBar1.Panels(1).Text = "Status: " & MM.getStatus
' estado de error
StatusBar1.Panels(3).Text = "Error Status: " & MM.checkError
End Sub
' botón de pausa
''''''''''''''''''''''''''''''
Private Sub Command3_Click()
If Command3.Caption = "Pausa" Then
MM.pauseMovie
Command3.Caption = "Resume"
Timer1.Enabled = False
Else
MM.resumeMovie
Command3.Caption = "Pausa"
Timer1.Enabled = True
End If
MM.timeOut 1
StatusBar1.Panels(1).Text = "Status: " & MM.getStatus
StatusBar1.Panels(3).Text = "Error Status: " & MM.checkError
End Sub
' botón que abre y carga la pelicula
''''''''''''''''''''''''''''''''''''''
Private Sub Command4_Click()
Dim a As Long
Dim b As Long
C.Filter = "Avi Files (*.avi)|*.avi|Mpeg Files (*.mpeg)|*.mpeg|Mpg Files (*.mpg)|*.mpg|Mov Files (*.mov)|*.mov|All Files (*.*)|*.*"
C.ShowOpen
MM.Filename = C.Filename
Me.Caption = C.Filename
' abre el video
' si se pasa overlapped la abre en una ventana aparte
MM.openMovieWindow Picture1.hWnd, "child"
C.Filename = ""
' actualiza los datos del movie
StatusBar1.Panels(1).Text = "Status: " & MM.getStatus
StatusBar1.Panels(3).Text = "Error Status: " & MM.checkError
End Sub
' cierra el MCI
'''''''''''''''''''''''''''
Private Sub Command5_Click()
MM.closeMovie 'close the mci device
StatusBar1.Panels(1).Text = "Status: " & MM.getStatus
StatusBar1.Panels(3).Text = "Error Status: " & MM.checkError
Timer1.Enabled = False
End Sub
Private Sub FloatButton1_Click()
End Sub
Private Sub L4_Click()
End Sub
Private Sub L3_Click()
End Sub
Private Sub Form_Resize()
Fr.Width = Me.ScaleWidth - 300
SliderPosition.Width = Me.ScaleWidth - 100
Picture1.Width = Me.ScaleWidth - 300
Picture1.Height = Me.ScaleHeight - (Picture1.top + StatusBar1.Height)
' redimensiona el tamaño del movie
MM.sizeLocateMovie 0, 0, _
(Picture1.Width / Screen.TwipsPerPixelX), _
(Picture1.Height / Screen.TwipsPerPixelY)
End Sub
Private Sub SliderPosition_Click()
'change the playback position of the movie
MM.setPositionTo SliderPosition.Value
End Sub
'Timer que actualiza los datos del video
'''''''''''''''''''''''''''''''''''
Private Sub Timer1_Timer()
On Error Resume Next
' posición en segundos
StatusBar1.Panels(2).Text = "Posicion: " & MM.getFormatPosition & " de: " & MM.getFormatLength
' posición
SliderPosition.Value = MM.getPositionInSec
End Sub
' establece los valores por defecto para el volumen y para _
la velocidad de reproducción
'''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
Private Sub Form_Load()
Volume.Value = 80
End Sub
' cierra el dispositivo
''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
Private Sub Form_Unload(Cancel As Integer)
MM.closeMovie
Unload Me
End
End Sub
'slider para cambiar el volumen
'''''''''''''''''''''''''''''''''''
Private Sub Volume_ValueChanged()
MM.setVolume Volume.Value * 10
labelVol.Caption = "Volumen: " & Volume.Value & "%"
End Sub
Suscribirse a:
Enviar comentarios (Atom)
Con la tecnología de Blogger.
Busqueda
Sabias que?
chat
Popular Posts
-
Option Explicit ' -- \\ Descripción : Módulo con presets para usar con el programa ffmpeg.exe - http://es.wikipedia.org/wik...
Muy buen ejemplo...
ResponderEliminarsiguiendo esta guía consigo reproducir el video. Pero lo que necesito ahora es reproducirlo también en otro monitor. EL problema es que cuando sitúo el form en el monitor secundario no se reproduce el vídeo, pero si lo arrastro al principal continúa en donde le corresponde según la línea de tiempo...
¿qué sucede? ¿Cómo puedo hacer para reproducirlo al mismo tiempo en el monitor principal y en el secundario?
Gracias y un saludo