Accueil > Forum > > > > [NET] capturer l'image d'une video MCI
[NET] capturer l'image d'une video MCI
lundi 7 avril 2008 à 20:49:45 |
[NET] capturer l'image d'une video MCI

sirozz
|
Salut à tous ! Je vous expose le problème... J'ai un MCI qui joue une vidéo dans un pictureBox grâce à "mciSendStringA". Tout fonctionne bien. J'essaye de capturer une image de la video grace à "bitBlt" de GDI et de la coller dans un autrePictureBox. Je procède comme ceci: ' thevid est le pictureBox qui joue la video Dim videoGraphics As Graphics = thevid.CreateGraphics Dim videoHdc As IntPtr = videoGraphics.GetHdc Dim memoryBitmap As New Bitmap(80, 80) Dim memoryGraphics As Graphics = Graphics.FromImage(memoryBitmap) Dim memoryHdc As IntPtr = memoryGraphics.GetHdc ' thedisp est le pictureBox qui récupère le snapshot Dim displayGraphics As Graphics = thedisp.CreateGraphics Dim displayHdc As IntPtr = displayGraphics.GetHdc ' copie vers la mémoire BitBlt(displayHdc, 0, 0, 80, 80, videoHdc, 0, 0, &HCC0020) ' colle vers le pictureBox BitBlt(displayHdc, 0, 0, 80, 80, memoryHdc, 0, 0, &HCC0020) Et ce que j'arrive à obtenir au mieux c'est un carré noir de 80x80. Je ne sais vraiment pas comment faire. Pour info j'ai déjà essayé d'utiliser CreateCompatibleDC mais ça marche po. J'ai aussi essayé de mettre la vidéo en pause avant de faire le shot et aussi de faire un System.Windows.Forms.Application.DoEvents() juste avant. Ou encore un me.refresh() mais pas plus de résultat. Avez-vous la solution à mon problème ? Merci. In tartiflette we trust !
|
|
mardi 8 avril 2008 à 06:09:03 |
Re : [NET] capturer l'image d'une video MCI

Renfield
|
' copie vers la mémoire
BitBlt(displayHdc, 0, 0, 80, 80, videoHdc, 0, 0, &HCC0020)
' colle vers le pictureBox
BitBlt(displayHdc, 0, 0, 80, 80, memoryHdc, 0, 0, &HCC0020)
tu devrais pas plutot avoir:
' copie vers la mémoire
BitBlt(memoryHdc, 0, 0, 80, 80, videoHdc, 0, 0, &HCC0020)
' colle vers le pictureBox
BitBlt(displayHdc, 0, 0, 80, 80, memoryHdc, 0, 0, &HCC0020)
?
de même, pourquoi ne pas faire:
BitBlt(displayHdc, 0, 0, 80, 80, videoHdc, 0, 0, &HCC0020)
|
|
mardi 8 avril 2008 à 07:31:36 |
Re : [NET] capturer l'image d'une video MCI

sirozz
|
Oui désolé c'est une erreur de frappe. Effectivement j'ai bien video->memory puis memory->display. Si je fais un BitBlt(displayHdc, 0, 0, 80, 80, videoHdc, 0, 0, &HCC0020) donc video->display je n'ai plus rien du tout. Même plus de carré noir.
|
|
mardi 8 avril 2008 à 10:01:04 |
Re : [NET] capturer l'image d'une video MCI

Renfield
|
si MCI passe directement via la carte graphique (ce que je pense qu'il fait) tu l'as dans le Baba...
ca fais comme DirectX ... il passes pas par la case GDI. questionner le hDc ne changera rien
|
|
mardi 8 avril 2008 à 12:49:50 |
Re : [NET] capturer l'image d'une video MCI

sirozz
|
Arrg! Je passe par GDI mais c'est pas obligatoire. J'ai fait ça car j'avais l'habitude d'utiliser GDI en VB6 mais si tu as une autre solution je suis preneur. Idem pour MCI, je ne suis pas bloqué à ça, n'importe quoi d'autre qui fonctionne je suis preneur (même un ocx). Le problème est simple, je veux juste copier l'image d'une video lors d'un clic souris et la coller dans un pictureBox, même pas la sauvegarder, juste l'afficher dans un pictureBox. J'ai fais un gros paquet de recherches sur le net mais je n'ai rien trouvé. Si tu as des pistes ?
|
|
mardi 8 avril 2008 à 12:53:14 |
Re : [NET] capturer l'image d'une video MCI

Renfield
|
tu souhiate juste extraire les frames d'une vidéo ?
|
|
mardi 8 avril 2008 à 13:35:55 |
Re : [NET] capturer l'image d'une video MCI

sirozz
|
Oui tout à fait. C'est vrai que dit comme ça c'est plus simple. 
|
|
mardi 8 avril 2008 à 14:04:18 |
Re : [NET] capturer l'image d'une video MCI

Renfield
|
la chose, en VB6:
http://www.vbfrance.com/codes/AVI-TO-BMP-AVI-EXTRACTOR_7099.aspx
|
|
mardi 8 avril 2008 à 15:10:10 |
Re : [NET] capturer l'image d'une video MCI

sirozz
|
Merci, je regarde ça ce soir, suis au taf. J'espère que ça va pas être trop galère à convertir en .net. Merci en tout cas pour tous ces renseignements Renfield. Je pose ce post comme "réponse accepté" mais si qqun connais qque chose en vb.net merci de m'envoyer un petit message. Bye.
|
|
dimanche 13 avril 2008 à 18:01:02 |
Re : [NET] capturer l'image d'une video MCI

sirozz
|
Réponse acceptée !
Enfin... Après des heures de recherche sur le net, j'ai enfin trouvé un truc qui marche et qui est tout simple. Il suffit d'utiliser l'ocx de vlc et de désactiver l'overlay. Je pose quelques infos ici:
' déclare BitBlt de GD (utilisé pour faire le screenshot) Private Declare Auto Function BitBlt Lib "GDI32.DLL" (ByVal hdcDest As IntPtr, ByVal nXDest As Integer, ByVal nYDest As Integer, ByVal nWidth As Integer, ByVal nHeight As Integer, ByVal hdcSrc As IntPtr, ByVal nXSrc As Integer, ByVal nYSrc As Integer, ByVal dwRop As Int32) As Boolean 'charge la vidéo est désactive l'overlay 'axVlc est mon activeX VLC 'filePath est le chemin d'accès de la vidéo Dim opt() As String = {":no-overlay"} axVlc.addTarget(filePath, opt, AXVLC.VLCPlaylistMode.VLCPlayListAppendAndGo, -666)
' fait une capture d'écran grâce à BitBlt en 80x80 ' thedisp est un pictureBox qui réceptionne l'image BitBlt(thedisp.CreateGraphics.GetHdc, 0, 0, 80, 80, axVlc.CreateGraphics.GetHdc, 0, 0, &HCC0020)
|
|
Cette discussion est classée dans : image, video, capturer, graphics, mci
Répondre à ce message
Sujets en rapport avec ce message
capturer une image d'une carte d'aquisition video [ par Gi5 ]
Bonjour je cherche comment capturer une image a partir d'une carte d'aquisition video en VB6. est-ce possible ? si vous avez une idée , Merci d'avance
Nouvelle classe Image_Class : traitement trop long... [ par fsintegral ]
Bonjour ! Tout d'abord, Bonne Année à tous ! Puis, la situation : 1) Je suis débutant : je ne sais utiliser que [b]Graphics[/b]. 2) Je suis en train
Capturer image webcam + code QR [ par hugo7 ]
Bonjour à tous , tout est quasiment dans le titre , je voudrais en faite réussir a capturer l'image de ma webcam lorsque il y a un code barre QR dedan
GDI+ et problèmes divers de débutant [ par mioumiounorris ]
Bonjour bonjour ! Je suis actuellement en train d'essayer de comprendre comment dessiner avec GDI+, et j'avoue que j'ai un peu de mal à tout comprendr
Extraction de propriétés d'un fichier audio,video,image... [ par fradimed ]
Salut Je veux une solution qui m'aide a extraire les informations sur un fichier audio,video,image Ex :artist,album,dimension je veux la bibliothèque
deplacer mes fichiers texte, image, video vers des dossiers de mon choix en vb.net 2005 [ par brmdevinci ]
SVP vous pouvez me dir comment deplacer mes fichiers qq soit leurs nature , texte, image ,video, ... vers des dossiers que je choisi moi meme en vb.ne
Comment eteindre la web cam a la fin de la capture? [ par neotof ]
Bonjour j'utilise une source du site pour capturer des images via la flux video de la webcam. Le problème c est que quand j'ai fini de l'utilisé la w
Effacement image mediaplayer [ par doyen ]
Salut,Apres avoir joué la video ( avec le composant mediaplayer MSDXM.OCX) qui se trouve dans un container Picture box, je voudrais rendre invisible l
image en video [ par jackky ]
bonjour bien moi c tout simple mais je ne trouve pas! snif snif,je veux compiler environ une centaine d'image en fichier avi, mpeg ou autre ya t-il un
Livres en rapport
|
Derniers Blogs
[WP7] DYNAMICALLY CHANGE STARTUP PAGE[WP7] DYNAMICALLY CHANGE STARTUP PAGE par KooKiz
Let's say that you want to allow the user to customize the startup page of your application. You can easily change the startup page by editing the 'NavigationPage' attribute in the manifest file. But the manifest cannot be modified once the applicatio...
Cliquez pour lire la suite de l'article par KooKiz SESSION SILVERLIGHT 5 3D : SLIDES ET DEMOSSESSION SILVERLIGHT 5 3D : SLIDES ET DEMOS par Groc
Durant les techdays, j'ai eu le plaisir d'animer une session sur Silverlight 5 et la 3D avec Simon Ferquel. Comme promis, voici nos slides et mes démos (celles avec le viper BSG) ici et là. Pour mémoire, les démos utilisent toutes le viper BSG...
Cliquez pour lire la suite de l'article par Groc [TECHDAYS 2012] SESSION WEBMATRIX 2 : LE COUTEAU SUISSE GRATUIT POUR VOS DéVELOPPEMENTS WEB - SLIDES[TECHDAYS 2012] SESSION WEBMATRIX 2 : LE COUTEAU SUISSE GRATUIT POUR VOS DéVELOPPEMENTS WEB - SLIDES par gpommier
Suite à la session que j'ai présenté sur WebMatrix 2, vous pouvez trouver les slides ici, ainsi que les démos en packages nuget : démos1 et démos2 J'en profite pour remercier chaleureusement tous ceux qui sont venus très nombreux à cette sess...
Cliquez pour lire la suite de l'article par gpommier [SHAREPOINT] LES SESSIONS TECHDAYS 2012.[SHAREPOINT] LES SESSIONS TECHDAYS 2012. par Patrick Guimonet
Voici donc pour ceux qui n'ont pas pu venir, ou ceux qui n'ont pas pu toutes les suivre la liste des sessions SharePoint aux TechDays 2012, que je mettrais à jour dès que les liens des vidéo seront disponibles. Ou ici : http...
Cliquez pour lire la suite de l'article par Patrick Guimonet TECHDAYS PARIS 2012 : SESSION PLEINIèRE JOUR 3TECHDAYS PARIS 2012 : SESSION PLEINIèRE JOUR 3 par ROMELARD Fabrice
Speaker: Bernard Ourghanlian Cette session est comme chaque jour transmise en live par BrainSonic, et j'ai donc suivi cette troisième pleinière par ce moyen sur mon iPad . Elle est dédiée comme chaque année à la mise en perspective de l'é...
Cliquez pour lire la suite de l'article par ROMELARD Fabrice
Logiciels
Tribler (2012)TRIBLER (2012)Tribler est un client pair à pair (P2P/Peer-to-Peer) open source avec la capacité de regarder des... Cliquez pour télécharger Tribler OneSwarm (2012)ONESWARM (2012)Le peer-to-peer qui protège votre vie privée, c'est OneSwarm.
Ce logiciel de peer-to-peer crypté... Cliquez pour télécharger OneSwarm PONAMEDIA PREMIUM - HELLLOOO FLASH DEMO (V8.4)PONAMEDIA PREMIUM - HELLLOOO FLASH DEMO (V8.4)PONAMEDIA TV DEVIENS HELLLOOO FLASH
LA TV SUR VOTRE ORDINATEUR.
Toute une plateforme Multi... Cliquez pour télécharger PONAMEDIA PREMIUM - HELLLOOO FLASH DEMO Academy System (17.2.1.0)ACADEMY SYSTEM (17.2.1.0)Logiciel de gestion des établissements.
- élèves/étudiants (inscription, dossier, absence...)
-... Cliquez pour télécharger Academy System Easy-Planning (1.0.0.1)EASY-PLANNING (1.0.0.1)Basé sur les mêmes principes que MyPlanning, Easy-Planning permet de créer des plannings sous la ... Cliquez pour télécharger Easy-Planning
|