Lire une video dans un picturebox avec le controle mediaplayer 11

Résolu
cs_domi123 Messages postés 43 Date d'inscription jeudi 7 août 2003 Statut Membre Dernière intervention 12 mars 2013 - 17 juil. 2007 à 21:18
cs_nathir Messages postés 5 Date d'inscription samedi 14 novembre 2009 Statut Membre Dernière intervention 13 février 2010 - 12 déc. 2009 à 12:35
Bonjour, j'aurai voulu savoir comment fait-on pour lire une vidéo dans un picturebox avec le controle Windows Media Player 11 ?
Je ne veux pas afficher la vidéo dans le lecteur mais bien dans une picturebox.

Merci et bonne journée.
A voir également:

16 réponses

Utilisateur anonyme
17 juil. 2007 à 21:34
Salut,

Autant se passer du Windows Media Player.
Documente toi sur l'api mciSendStringA.






__________
Kenji

(


3
Utilisateur anonyme
17 juil. 2007 à 23:09
Ah, pour les DVD je sais pas du tout. Mais les mpeg j'ai essayer, ca marche.
As-tu les bons codes d'installés pour les lire ?







__________
Kenji

(


3
Utilisateur anonyme
17 juil. 2007 à 23:15
Aussi, pour revenir à ta question:
pourquoi veux tu mettre la vidéo dans un picturebox ?







__________
Kenji

(


3
Utilisateur anonyme
18 juil. 2007 à 21:07
Ok, ok, en effet, j'avais pas assez tester, ca marche pas.
Donc, en effet, il faut placer la vidéo dans une picturebox :





Private Declare Function SetParent Lib "user32" (ByVal hWndChild As Long, _
  ByVal hWndNewParent As Long) As Long
Private Declare Function FindWindowEx Lib "user32" Alias "FindWindowExA" ( _
  ByVal hWnd1 As Long, ByVal hWnd2 As Long, ByVal lpsz1 As String, _
  ByVal lpsz2 As String) As Long
Private Declare Function SetWindowPos Lib "user32" (ByVal hwnd As Long, _
  ByVal hWndInsertAfter As Long, ByVal x As Long, ByVal y As Long, _
  ByVal cx As Long, ByVal cy As Long, ByVal wFlags As Long) As Long

Private Const SWP_NOSIZE = &H1
  
  
' A effectuer après que la vidéo tourne
Dim VideoHWnd As Long
VideoHWnd = FindWindowEx(Me.hwnd, &H0, "WMPVideoWindow", vbNullString)
If VideoHWnd <> 0 Then
  Call SetParent(VideoHWnd, PicVideo.hwnd)
  Call SetWindowPos(VideoHWnd, &H0, 0, 0, 100, 100, SWP_NOSIZE)
End If,

----

(
3

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

Posez votre question
Utilisateur anonyme
18 juil. 2007 à 21:20
Comme ceci :



Private Sub WMP_PlayStateChange(ByVal NewState As Long)
  If NewState = WMPLibCtl.WMPPlayState.wmppsPlaying Then
    Call SetVideoParent
  End If
End Sub

Private Sub SetVideoParent()
  Dim VideoHWnd As Long
  VideoHWnd = FindWindowEx(Me.hwnd, &H0, "WMPVideoWindow", vbNullString)
  If VideoHWnd <> 0 Then
    Call SetParent(VideoHWnd, PicVideo.hwnd)
    Call SetWindowPos(VideoHWnd, &H0, 0, 0, 0, 0, SWP_NOSIZE)
  End If
End Sub,

----

(
3
cs_domi123 Messages postés 43 Date d'inscription jeudi 7 août 2003 Statut Membre Dernière intervention 12 mars 2013
17 juil. 2007 à 22:16
En fait, j'ai vu la doc sur l'api mciSendStringA, mais le problème est qu'il ne sait pas lire les fichiers Mpeg et DVD. Je n'ai que le son et non l'image (et pourtant j'ai tout essayer avec differentes sources, meme les plus simples, avec un fichier mpeg au norme qui fonctionne sur tous les autres lecteurs). Sinon si tu as une solution, je suis preneur, ou encore m'aider avec mciSendStringA mais je n'arrive pas, j'ai regardé sur tous le site, meme sur google (et aussi en anglais), j'ai pris une partiie du code, je le colle dans un nouveau projet et cela ne fonctionne pas. En vain

Voila. Un p'tit coup de main pour la realisation de ce bout de projet. Merci.

Voici justement un extrait d'un code pour lire uniquement un fichier mpeg avec mciSendStringA :

PrivateDeclareFunction mciSendStringA Lib "winmm.dll" (ByVal lpstrCommand AsString, ByVal lpstrReturnString AsString, ByVal uReturnLength AsLong, ByVal hwndCallback AsLong) AsLong
PrivateDeclareFunction GetShortPathNameA Lib "kernel32" (ByVal lpszLongPath AsString,
ByVal lpszShortPath AsString, ByVal cchBuffer AsLong) AsLong

'ouvrir un fichier :
Sub OuvrirMM(NomFichierLong AsString)
Dim BufferNom AsString * 255
Dim BufferLen AsLong
BufferLen = GetShortPathNameA(NomFichierLong, BufferNom, 255)
NomFichierCourt$ = Left$(BufferNom, BufferLen)
CmdStr = "open MPEGVideo!" & NomFichierCourt & " alias " & AliasToUse & " parent " & Picture1.hWnd & " Style " & CStr(&H40000000)
mciSendStringA CmdStr, 0&, 0&, 0&
EndSub

'jouer le film
Sub JoueMM()
mciSendStringA "play " & AliasToUse & " from 0", 0, 0, 0
EndSub

'stopper
Sub StopMM()
mciSendStringA "stop " & AliasToUse, 0, 0, 0
EndSub
0
cs_domi123 Messages postés 43 Date d'inscription jeudi 7 août 2003 Statut Membre Dernière intervention 12 mars 2013
17 juil. 2007 à 22:18
0
cs_domi123 Messages postés 43 Date d'inscription jeudi 7 août 2003 Statut Membre Dernière intervention 12 mars 2013
18 juil. 2007 à 14:43
oui j'ai installer les bon codecs pour lire les fichiers mpeg car ca marche bien quand j'ouvre la video avec media player, nero showtime et vlc.

Je voudrais mettre la vidéo dans un picturebox pour plutart mettre un picture box pardessus et appliquer une transparence.

Donc, une idée ?
0
Utilisateur anonyme
18 juil. 2007 à 15:17
Pourquoi ne pas mettre la pictureBox par dessus le wmp ? Ca reviendra au même.







__________
Kenji

(


0
cs_domi123 Messages postés 43 Date d'inscription jeudi 7 août 2003 Statut Membre Dernière intervention 12 mars 2013
18 juil. 2007 à 16:13
et comment veut tu faire ? La picturebox ne poura etre en dessous le wmp et comment envoyer la video sur la picturebox ?

Si tu as une solution, je suis preneur.
0
Utilisateur anonyme
18 juil. 2007 à 20:45
Tu veux mettre une picture translucide par dessus la vidéo ou mettre une picturebox avec des parties transparentes ?







__________
Kenji

(


0
cs_domi123 Messages postés 43 Date d'inscription jeudi 7 août 2003 Statut Membre Dernière intervention 12 mars 2013
18 juil. 2007 à 20:49
Je voudrais bien mettre une picturebox sur la video, mais avec windowsmediaplayer (version11) cela ne fonctionne pas, la vidéo est toujours au premier plan.
Ce que j'aurai voulu faire c'est mettre une picturebox transparente sur une video avec WMP.

Comment faire ?
0
cs_domi123 Messages postés 43 Date d'inscription jeudi 7 août 2003 Statut Membre Dernière intervention 12 mars 2013
18 juil. 2007 à 21:11
Merci beaucoups, mais comment s'en sert-on ? j'insere le controle WMP et un picturebox.
0
cs_domi123 Messages postés 43 Date d'inscription jeudi 7 août 2003 Statut Membre Dernière intervention 12 mars 2013
18 juil. 2007 à 21:26
Super, un grand merci à toi Charles et aux autres, c'est exactement ce que je recherchais, c génial, je ne sais pas comment te remercier.

Encore merci.

======>>>>>  PROBLEME RESOLU <<<<<=========
0
cs_domi123 Messages postés 43 Date d'inscription jeudi 7 août 2003 Statut Membre Dernière intervention 12 mars 2013
18 juil. 2007 à 21:28
ok
0
cs_nathir Messages postés 5 Date d'inscription samedi 14 novembre 2009 Statut Membre Dernière intervention 13 février 2010
12 déc. 2009 à 12:35
slt Mr domi123,je suis nouveau en vb-france ,j'ai lu votre question ,malheureusement j'ai pas de réponse pour vous,mais je vous demandes à me dire comment faire pour importer ou lire un video par une application vb2008 ,car j'ai fais une application dans laquelle il faut lire des videos mais je ne sais pas comment faire ,svp aidez-moi le + tôt possible et je m'excuse une autre fois ,merci monsieur je vous attends..
0
Rejoignez-nous