<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"><channel><category>pcsoft.fr.windev</category><copyright>Copyright 2026, PC SOFT</copyright><lastBuildDate>15 Jan 2019 10:34:21 Z</lastBuildDate><pubDate>14 Jan 2019 10:56:36 Z</pubDate><description>Bonjour,&#13;
&#13;
Dans notre logiciel, nous avons voulu ajouter une petite fonctionnalité afin de pouvoir prendre en vidéo se qu'il se passe dans l'application. &#13;
&#13;
Pour ce faire, je me suis basé sur des tutoriels C# qui utilisaient la bibliothèque Aforge.Video.FFMPEG : https://www.youtube.com/watch?v=ERbzPeevjS8.&#13;
&#13;
J'ai légèrement modifié ce qu'il y a dans le tutoriel afin de l'adapter à l'utilisation du logiciel. &#13;
&#13;
J'ai créé un thread qui exécute toutes les 10 centièmes de seconde une procédure qui va me capturer ce qu'il y a sur mon écran. &#13;
Mon code est construit comme suie :&#13;
&#13;
[code:wl]&#13;
//Déclaration Globale de la fenêtre &#13;
_bitmap est un System.Drawing.Bitmap dynamic&#13;
_graphics est un System.Drawing.Graphics dynamic&#13;
_picturebximg est un PictureBox&#13;
_writer est un VideoFileWriter dynamic&#13;
_writer = new VideoFileWriter()&#13;
[/code]&#13;
&#13;
[code:wl]&#13;
//Code du bouton "Démarer la capture"&#13;
_writer:Open(GF_s_RepTemp+"\Video_"+GF_s_DateAudit+".avi",Screen.PrimaryScreen.Bounds.Width,&#13;
				Screen.PrimaryScreen.Bounds.Height,&#13;
				2,VideoCodec.MPEG4,1000000)&#13;
ChronoDébut(2)&#13;
Timer("PL_GoVideoTimer",10,1)&#13;
[/code]&#13;
&#13;
[code:wl]&#13;
PROCEDURE PL_GoVideoTimer()&#13;
&#13;
_size est un System.Drawing.Size dynamic&#13;
&#13;
_bitmap = new Bitmap(Screen.PrimaryScreen.Bounds.Width,&#13;
			Screen.PrimaryScreen.Bounds.Height,&#13;
			System.Drawing.Imaging.PixelFormat.Format24bppRgb);&#13;
&#13;
_size = new "System.Drawing".Size(Screen.PrimaryScreen.Bounds.Width,Screen.PrimaryScreen.Bounds.Height);&#13;
&#13;
_graphics = System.Drawing.Graphics.FromImage(_bitmap);&#13;
&#13;
//GF_n_Source_x = position x de l'écran sur lequel s’exécute l'application &#13;
//GF_n_Source_Y = position y de l'écran sur lequel s’exécute l'application &#13;
_graphics:CopyFromScreen(GF_n_Source_x,GF_n_Source_Y,0,0,_size);&#13;
&#13;
_picturebximg:Image = _bitmap;&#13;
_picturebximg:SizeMode = PictureBoxSizeMode.StretchImage;&#13;
&#13;
_writer:WriteVideoFrame(_bitmap);&#13;
[/code]&#13;
&#13;
[code:wl]&#13;
//Code bouton "Arrêt vidéo"&#13;
FinTimer(1)&#13;
[/code]&#13;
&#13;
L'enregistrement de la vidéo se passe très bien, or, je rencontre un problème au niveau du curseur, car il n'est pas visible dans la vidéo. &#13;
J'ai donc ajouté un icône représentant le curseur dans la vidéo pour chaque appel de ma procédure PL_GoVideoTimer() à l'aide de ce code :&#13;
&#13;
[code:wl]&#13;
//Ajout dans la déclaration globale à la fenêtre&#13;
_icon est un System.Drawing.Icon dynamic&#13;
_icon = new "System.Drawing".Icon(SystemIcons.Exclamation,40,40)&#13;
[/code]&#13;
&#13;
[code:wl]&#13;
//Ajout dans la procédure PL_GoVideoTimer&#13;
_position = CurseurPos(cpEcran)&#13;
_positionX = PoidsFaible(_position)&#13;
_positionY = PoidsFort(_position)&#13;
_graphics:DrawIcon(_icon,_positionX,_positionY)&#13;
[/code]&#13;
&#13;
Donc après l'ajout d'un icône simulant un curseur sur ma vidéo, je me suis aperçu que lors d'un clic sur un bouton contenant un menu contextuel, celui-ci n’apparaissait pas.  A partir de là je suis coincé. &#13;
&#13;
Avez-vous une idée afin de me débloquer ?&#13;
Un grand merci par avant.&#13;
&#13;
Cordialement,&#13;
Jonathan</description><ttl>30</ttl><generator>WEBDEV</generator><language>fr_FR</language><link>https://forum.pcsoft.fr/fr-FR/pcsoft.fr.windev/223281-capture-video-avec-aforge-video-ffmpeg/read.awp</link><title>Capture Vidéo avec Aforge.Video.FFMPEG</title><managingEditor>moderateur@pcsoft.fr (Le modérateur)</managingEditor><webMaster>webmaster@pcsoft.fr (Le Webmaster)</webMaster><item><author>Jonathan</author><category>pcsoft.fr.windev</category><comments>https://forum.pcsoft.fr/fr-FR/pcsoft.fr.windev/223281-capture-video-avec-aforge-video-ffmpeg-223308/read.awp</comments><pubDate>15 Jan 2019 10:34:21 Z</pubDate><description>Bonjour,&#13;
&#13;
Je vous remercie pour cette réponse rapide et plutôt efficace.  J'ignorais l’existence de ce petit projet fait par W…</description><guid isPermaLink="true">https://forum.pcsoft.fr/fr-FR/pcsoft.fr.windev/223281-capture-video-avec-aforge-video-ffmpeg-223308/read.awp</guid><link>https://forum.pcsoft.fr/fr-FR/pcsoft.fr.windev/223281-capture-video-avec-aforge-video-ffmpeg-223308/read.awp</link><source url="https://forum.pcsoft.fr/fr-FR/pcsoft.fr.windev/223281-capture-video-avec-aforge-video-ffmpeg/read.awp">Capture Vidéo avec Aforge.Video.FFMPEG</source><title>Re: Capture Vidéo avec Aforge.Video.FFMPEG</title></item><item><author>Charly CANDO</author><category>pcsoft.fr.windev</category><comments>https://forum.pcsoft.fr/fr-FR/pcsoft.fr.windev/223281-capture-video-avec-aforge-video-ffmpeg-223295/read.awp</comments><pubDate>14 Jan 2019 18:06:34 Z</pubDate><description>Coucou,&#13;
&#13;
L'utilitaire "WD Démonstration" de la LST 110 ne te convient pas ?&#13;
[code:text]&#13;
"WD Démonstration" vous permet de ca…</description><guid isPermaLink="true">https://forum.pcsoft.fr/fr-FR/pcsoft.fr.windev/223281-capture-video-avec-aforge-video-ffmpeg-223295/read.awp</guid><link>https://forum.pcsoft.fr/fr-FR/pcsoft.fr.windev/223281-capture-video-avec-aforge-video-ffmpeg-223295/read.awp</link><source url="https://forum.pcsoft.fr/fr-FR/pcsoft.fr.windev/223281-capture-video-avec-aforge-video-ffmpeg/read.awp">Capture Vidéo avec Aforge.Video.FFMPEG</source><title>Re: Capture Vidéo avec Aforge.Video.FFMPEG</title></item></channel></rss>
