Lire une vidéo

Résolu
romainvv Messages postés 46 Date d'inscription lundi 19 mars 2007 Statut Membre Dernière intervention 22 mai 2009 - 7 févr. 2008 à 11:43
zavier666 Messages postés 266 Date d'inscription mardi 7 septembre 2004 Statut Membre Dernière intervention 30 avril 2009 - 10 févr. 2008 à 13:27
Bonjour,
Je dois faire un travail en histoire pour que l'on découvre de facon ludique un personnage. Dans mon cas c'est Kennedy. L'idée m'est venu de faire en Visual Basic 2005 un jeu de l'oie sur Kennedy.
Le poblème est le suivant : J'aimerais lire une petite vidéo dans une des case du jeu de l'oie. J'ai cherché et j'ai trouvé ca :

Declare Function MultimediaFonction Lib "winmm.dll" Alias "mciSendStringA" (ByVal cde As String, ByVal X1 As String, ByVal X2 As Long, ByVal X3 As Long) As Long

    Private Sub PictureBox15_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles PictureBox15.Click
        Dim Commande, mode As String
        Dim ReturnCode As Long
        Dim NOMFIC As String = "c:\Count16.avi"
        Commande = "Play " & NOMFIC & mode
        ReturnCode = MultimediaFonction(Commande, 0, 0, 0)
    End Sub

Le seul problème c'est que ca ne lit pas la vidéo dans la ma picturebox ou dans un quelquonque autre conteneur. Il démarre la vidéo dans une autre form ce qui ne m'arrange pas. Et comme je comprend un peu rien au code j'ai pas trouvé un moyen de l'améliorer.

Ensuite j'ai trouvé en VB 6 qu'il existe un outil  WindowsMediaPlayer :
WindowsMediaPlayer1.URL = "C:\leFichier.mp3"

Le problème c'est que ca n'existe pas en Visual Basic 2005 ou en tout cas j'ai pas trouvé

Voila j'èspère que j'ai été claire Si vous avez une solution je suis tout ouïe !

Merci

6 réponses

zavier666 Messages postés 266 Date d'inscription mardi 7 septembre 2004 Statut Membre Dernière intervention 30 avril 2009 1
8 févr. 2008 à 20:10
bonjour,

pour récupérer le handle d'une fenêtre en vb2005 et même en vb2008:

Dim handle_fenetre
As
Integer
handle_fenetre =
Me.Handlepour envoyer le flux dans une picturebox

PictureBox1.Handle

concernant le fait de devoir transformer le nom du fichier en nom court, je pense que c'est une question d'histoire, un vieux reliqua de windows 95 (mini) où seul les noms courts étaient supportés
--------------------------------------------------
Toujours + de VB et d'API => APi @ le Loupe
http://apialaloupe.free.fr
3
zavier666 Messages postés 266 Date d'inscription mardi 7 septembre 2004 Statut Membre Dernière intervention 30 avril 2009 1
10 févr. 2008 à 13:27
je crois que mcisendstring sait trouver le codec adéquat (qui doit être présent sur le système bienentendu)

--------------------------------------------------
Toujours + de VB et d'API => APi @ le Loupe
http://apialaloupe.free.fr
3
zavier666 Messages postés 266 Date d'inscription mardi 7 septembre 2004 Statut Membre Dernière intervention 30 avril 2009 1
7 févr. 2008 à 20:42
j'ai fait un exemple complet ce mcisendstring donc essaie la .....

--------------------------------------------------
Toujours + de VB et d'API => APi @ le Loupe
http://apialaloupe.free.fr
0
romainvv Messages postés 46 Date d'inscription lundi 19 mars 2007 Statut Membre Dernière intervention 22 mai 2009
8 févr. 2008 à 12:53
       Bonjour,
J'ai regardé ton code et qualeque autre je crois que j'ai avancé un peu. Je suis un "débutant" donc j'avance un peu dans le noir.
Alors je ne comprend pas bien l'utilité de la transformation du chemin de la vidéo "long" en "courts". Suis je obligé de passé par la pour lire ma vidéo dont je connais son chemin avant la compilation ?
Ensuite j'ai trouuvé ca "open MPEGVideo!" qui apparement charge la vidéo. La je ne vois pas trop l'utilité de l'alias... Mais chose importante il y a moyen par cette commande d'indiquer dans quelle controle je veux lire la vidéo. On indique ca par Form1.hWnd en vb6 mais je n'ai pas trouvé l'équivalent vb 2005.
Donc j'ai fait une grosse soupe qui ne va pas :

        Dim aliasvideo As String
        Dim commande As String
        Dim NOMFIC As String = "c:\Count16.avi"
        commande = "open MPEGVideo!" & NOMFIC & " alias " & aliasvideo & " parent " &                 PictureBox15.Name & " Style " & CStr(&H40000000)
        mciSendStringA(commande, 0&, 0&, 0&)
        mciSendStringA("play " & aliasvideo & " from 0", 0, 0, 0)

Peut on me corriger ?
Merci :)
0

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

Posez votre question
romainvv Messages postés 46 Date d'inscription lundi 19 mars 2007 Statut Membre Dernière intervention 22 mai 2009
9 févr. 2008 à 19:19
Bonjour,
C'est parfait tout fonctionne parfaitement Mais J'ai encore une petite et dernière question :p et non des moindre :
Dans quel codec peut on lire la vidéo grace à mcisendstring ?
Merci :)
0
zavier666 Messages postés 266 Date d'inscription mardi 7 septembre 2004 Statut Membre Dernière intervention 30 avril 2009 1
10 févr. 2008 à 13:27
je crois que mcisendstring sait trouver le codec adéquat (qui doit être présent sur le système bienentendu)

--------------------------------------------------
Toujours + de VB et d'API => APi @ le Loupe
http://apialaloupe.free.fr
0
Rejoignez-nous