Test fin de lecture d'une video avec le controle mediaplayer

boub1606 Messages postés 5 Date d'inscription jeudi 4 novembre 2004 Statut Membre Dernière intervention 22 novembre 2004 - 16 nov. 2004 à 12:12
 Utilisateur anonyme - 23 nov. 2004 à 09:05
boub

Pouvez-vous me dire comment tester le fin de la lecture d'une AVI avec le controle Mediaplayer (msdxm.ocx)

Si je teste tout au long de la lecture le programme est très lent:
mediaplayer.currentposition = mediaplayer.duration

MErci d'avance.

9 réponses

Utilisateur anonyme
16 nov. 2004 à 13:41
Salut, j'ai fait comme ca:

Private Sub Player1_PlayStateChange(ByVal NewState As Long)

If Left(Player1.Status, 6) = "Arrêté" Then xxx

end sub

A+
0
boub1606 Messages postés 5 Date d'inscription jeudi 4 novembre 2004 Statut Membre Dernière intervention 22 novembre 2004
18 nov. 2004 à 18:39
boub

Salut

Merci de ta réponse, mais c'est un controle Mediaplayer (et pas Windows media player) que j'utilise et je n'ai pas la propriété status.

Je n'arrive pas à tester la propriété playstate.
0
Utilisateur anonyme
20 nov. 2004 à 10:48
Re..
alors c'est parce que t'as l'anciènne version de Windows Media Player (c'est pas tout à fait la meme chose), si c'est pour de la projection vidéo je te conseille de le faire avec la serie 9, c'est plus stable.
je te l'envoi si tu veux

Alors avec ta version c'est :
private sub MediaPlayer1_EndOfStream(byval result as long)
form1.caption = "Fin du Fichier..."
end sub

A.C.I.V.E SARL
Automatismes Conception Informatique Vidéo Electronique
0
boub1606 Messages postés 5 Date d'inscription jeudi 4 novembre 2004 Statut Membre Dernière intervention 22 novembre 2004
22 nov. 2004 à 08:51
boub

Merci beaucoup pour ta réponse, c'est OK.

MAis j'ai encore un problème, car je souhaite affecter des valeurs à des variables que lorsque la vidéo est finie.

private sub MediaPlayer1_EndOfStream(byval result as long)
lecture = false
end sub

private sub MediaPlayer1_NewStream
lecture = true
end sub

do
loop until lecture=false

verr=true
lumière_verte=true

Si je fais une boucle, le programme mouline.

si tu peux m'aider ce serait très cool.

MERCI D'AVANCE.
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Utilisateur anonyme
22 nov. 2004 à 09:04
Salut
Alors un conseil change de version de media player avec celui la tu vas galerer
Regarde pour télécharger (c'est gratos) :
http://www.microsoft.com/downloads/results.aspx?productID=&freetext=media+player&DisplayLang=fr

parcontre sous VB c'est un peu différent mais tu veras on s'y fait

A.C.I.V.E SARL
Automatismes Conception Informatique Vidéo Electronique
0
boub1606 Messages postés 5 Date d'inscription jeudi 4 novembre 2004 Statut Membre Dernière intervention 22 novembre 2004
22 nov. 2004 à 09:49
boub

Ok mais avec WMP9 , la video se rembobine en fin de lecture, et moi je souhaite que la vidéo reste sur la derrière image de la vidéo.

Je n'est pas trouvé la fonction permettant celà.
0
Utilisateur anonyme
22 nov. 2004 à 10:56
RE...
Essaye :
Private Sub WindowsMediaPlayer1_PlayStateChange(ByVal NewState As Long)
If Left(WindowsMediaPlayer1.Status, 6) = "Arrêté" Then
WindowsMediaPlayer1.Controls.currentPosition = (WindowsMediaPlayer1.currentMedia.duration - 1)
WindowsMediaPlayer1.Controls.pause
end sub

A +

A.C.I.V.E SARL
Automatismes Conception Informatique Vidéo Electronique
0
boub1606 Messages postés 5 Date d'inscription jeudi 4 novembre 2004 Statut Membre Dernière intervention 22 novembre 2004
22 nov. 2004 à 11:53
boub

Merci, ça fonctionne Nikel.
je vais changer et mettre WMP9.
Mais j'ai toujours le problème pour modifier mes variables dès que la vidéo est finie. Sachant que je lance la lecture de plusieurs vidéos en fonction de l'action sur plusieurs boutons, donc mes variables sont différentes pour chaque vidéo.

La détection marche, mais la modification des variables non.

Merci de ta réponse si tu peux.

A bientôt j'espère.
0
Utilisateur anonyme
23 nov. 2004 à 09:05
Re..
As tu mis ca dans les déclarations publiques (tout en haut de ton prog)? :
dim Lecture as boolean

et puis tu ne dois pas faire le do-loop éssaie:

Private Sub WindowsMediaPlayer1_PlayStateChange(ByVal NewState As Long)
If Left(WindowsMediaPlayer1.Status, 7) = "Lecture" Then
lecture = true
else
lecture = false
end if
end sub

Voila
A +

A.C.I.V.E SARL
Automatismes Conception Informatique Vidéo Electronique
0
Rejoignez-nous