none
videosourceplayer control de Aforge RRS feed

  • Pregunta

  • Hola amigos, espero que me puedan ayudar con el codigo por favor.. el problema es el siguiente tengo un componente videosourceplayer el que cargo en un winform y le asigno el dispositivo de video que cargo en un combobox con el suiguiente codigo

    public static void Mostrar_Video(FilterInfoCollection lista_webcam, ComboBox cmb_webcam, VideoSourcePlayer video)
            {
                //Establecer el dispositivo seleccionado como fuente de video
                VideoCaptureDevice FuenteDeVideo = new VideoCaptureDevice(lista_webcam[cmb_webcam.SelectedIndex].MonikerString);  
                video.VideoSource = FuenteDeVideo;
                //Inicializar el control
                video.Start();
            }

    este metodo lo hice en una clase generica porque lo necesito utilizar en varias ventanas de mi proyecto y asi lo llamo cada vez que lo necesite de la clase...

    ahora necesito que lo que este mostrando el videosourceplayer1 clonarlo a otro videosourceplayer2 pero solo una region en especifico(supongan que la region es un cuadrado de una dimension chikita no es importante) es decir lo unico que me hace falta clonar es una region del 1 para mostrarla en el 2 espero k me entiendan lo que pido gracias de antemano

    jueves, 5 de abril de 2018 21:00

Todas las respuestas

  • Mira yo hice algo aprecido espero k te sirva disculpa si es muy tarde pero soy algo nuevo en este forum y no ce como hacer para recivir las preguntas nuevas

     private void VideoSource_NewFrame1(object sender, NewFrameEventArgs eventArgs)
            {
                try
                {
                    Bitmap Imagen = (Bitmap)eventArgs.Frame.Clone();
                    //videoSourcePlayer1.BackgroundImage = Imagen;
                    vsource_Zoom1.BackgroundImage = CropImage(Imagen, section);
                }
                catch (Exception ex)
                {

                    throw ex;
                }

            } 

    VideoCaptureDevice FuenteDeVideo = new VideoCaptureDevice(monike1);
                    FuenteDeVideo.NewFrame += new NewFrameEventHandler(VideoSource_NewFrame1);
                    vcplayer.VideoSource = FuenteDeVideo;
                    vcplayer.Start(); // 1er videosource
                    vsource_Zoom1.Start(); // seccion del primer videosource

    Rectangle section = new Rectangle(new Point(236, 121), new Size(197, 132));

     private Bitmap CropImage(Bitmap source, Rectangle section)
            {

                Bitmap bmp = new Bitmap(section.Width, section.Height);
                Graphics g = Graphics.FromImage(bmp);
                g.DrawImage(source, 0, 0, section, GraphicsUnit.Pixel);
                return bmp;
            }

    aki esta todo lo que te hace falta para eso cualkier duda me dices

    miércoles, 9 de mayo de 2018 20:03