IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

C# Discussion :

enregistrer un flux vidéo a partir de la webcam


Sujet :

C#

  1. #1
    Futur Membre du Club
    Étudiant
    Inscrit en
    Mars 2011
    Messages
    16
    Détails du profil
    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Mars 2011
    Messages : 16
    Points : 8
    Points
    8
    Par défaut enregistrer un flux vidéo a partir de la webcam
    bonjour
    je suis en train de travailler dans le même sujet que lilmemt ("d'enregistrer un vidéo a partir du webcam") bon la vérité que cette discutions elle m'aidez bien . bref le problème que j'ai rencontrer quant je fait l’exécution
    failed creating compressed stream.
    slt si quelqun un une idée à ce problème. Est ce que problème de codec ? mon System Windows xp , c'est quoi le codec convenable que je peut installer ?

  2. #2
    Futur Membre du Club
    Étudiant
    Inscrit en
    Mars 2011
    Messages
    16
    Détails du profil
    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Mars 2011
    Messages : 16
    Points : 8
    Points
    8
    Par défaut
    si quelqun est interessant j'au resolu mon probleme
    installer le codec http://www.microsoft.com/download/en...ang=en&id=6191

  3. #3
    Nouveau membre du Club
    Inscrit en
    Novembre 2009
    Messages
    59
    Détails du profil
    Informations forums :
    Inscription : Novembre 2009
    Messages : 59
    Points : 27
    Points
    27
    Par défaut
    si ça t'intéresse j'ai fini mon projet, hésite pas à me demander de l'aide

  4. #4
    Futur Membre du Club
    Étudiant
    Inscrit en
    Mars 2011
    Messages
    16
    Détails du profil
    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Mars 2011
    Messages : 16
    Points : 8
    Points
    8
    Par défaut
    merci bien ,
    oui svp je suis bloqué le problème que j'ai que le fichier avi est vide (0ko)
    bon je explique mon projet est de capturer mon webcam et je enregistrer ce dernier dans un fichier avi .
    je suis bloque dans la deuxième tache de l'enregistrement le fichier est vide
    ceci est un bou de code pour l'enregistrement :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     AVIWriter writer;
    writer = new AVIWriter("wmv3");
    writer.Open("test1.avi", 640, 480);
    Bitmap image = (Bitmap)eventArgs.Frame.Clone();
     pictureBox1.Image = image;
      writer.AddFrame(image);
    => j'au chercher dans le google j'ai trouver un code
    dans ce site http://aforge.googlecode.com/svn/tru...W/AVIWriter.cs
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
     
        /// // instantiate AVI writer, use WMV3 codec
        /// AVIWriter writer = new AVIWriter( "wmv3" );
        /// // create new AVI file and open it
        /// writer.Open( "test.avi", 320, 240 );
        /// // create frame image
        /// Bitmap image = new Bitmap( 320, 240 );
        /// image = (Bitmap)eventArgs.Frame.Clone()
        /// for ( int i = 0; i < 240; i++ )
        /// {
        ///     // update image
        ///     image.SetPixel( i, i, Color.Red );
        ///     // add the image as a new frame of video file
        ///     writer.AddFrame( image );
        /// }
        /// writer.Close( );
    => le fichier il n'est pas vide mais il filme un trais rouge dans le diagonal
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    image.SetPixel( i, i, Color.Red );
    mais je suis intéresser de filmer ce qui capter mon webcam

  5. #5
    Nouveau membre du Club
    Inscrit en
    Novembre 2009
    Messages
    59
    Détails du profil
    Informations forums :
    Inscription : Novembre 2009
    Messages : 59
    Points : 27
    Points
    27
    Par défaut
    tout d'abord vérifie que tu as la bonne résolution pour la capture, ensuite oublies pas de fermer le fichier avec Si tu ne ferme pas le fichier c'est normal.

  6. #6
    Futur Membre du Club
    Étudiant
    Inscrit en
    Mars 2011
    Messages
    16
    Détails du profil
    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Mars 2011
    Messages : 16
    Points : 8
    Points
    8
    Par défaut
    non j'ai un bouton quand je clic il ferme: et pour la résolution elle marche bien la capture et sa ce voir mais le problème l'enregistrement .
    je ne crois pas que çà le prob par raisonnement le fichier avi il faut effectuer à lui la capturation du camera mais comment çà se fait !!!

    Edit
    est ce que je utilise la bibliotheque using AForge.Video.VFW; ou bien using AForge.Video.FFMPEG; pour enregistrer un fichier avi via le capture webcam

  7. #7
    Futur Membre du Club
    Étudiant
    Inscrit en
    Mars 2011
    Messages
    16
    Détails du profil
    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Mars 2011
    Messages : 16
    Points : 8
    Points
    8
    Par défaut
    Je suis entrain de réaliser une application afin de capturer le flux vidéo de la webcam et d'enregistrer ce qui est capturé en fichier Avi. J'ai réalisé la première partie de capture mon webcam mais je suis vraiment bloqué dans l'enregistrement de flux video. J'utilise AForge comme bibliothèque et voici mon bout de code

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
      writer = new AVIWriter("wmv3");
       writer.Open("videoe.avi", 640, 480);
    private void button1_Click(object sender, EventArgs e)
            {
                Finalvideo = new VideoCaptureDevice(videoCaptureDevices[comboBox2.SelectedIndex].MonikerString);
                Finalvideo.DesiredFrameSize = new Size(160, 120);
                Finalvideo.NewFrame += new NewFrameEventHandler(FinalVideo_NewFram);
                Finalvideo.Start();
     
            }
    void FinalVideo_NewFram(object sender, NewFrameEventArgs eventArgs)
            {
     
                Bitmap image = (Bitmap)eventArgs.Frame.Clone();
                pictureBox1.Image = image;
                //Bitmap image = (Bitmap)eventArgs.Frame.Clone();
                for (int i = 0; i < 100; i++)
                {
                    writer.AddFrame(image); 
                }
    writer.close();

  8. #8
    Nouveau membre du Club
    Inscrit en
    Novembre 2009
    Messages
    59
    Détails du profil
    Informations forums :
    Inscription : Novembre 2009
    Messages : 59
    Points : 27
    Points
    27
    Par défaut
    montre ton code au complet parce que déjà ton français est zéro ! et j'ai de la peine à te comprendre.

  9. #9
    Futur Membre du Club
    Étudiant
    Inscrit en
    Mars 2011
    Messages
    16
    Détails du profil
    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Mars 2011
    Messages : 16
    Points : 8
    Points
    8
    Par défaut
    ok , Voila le code :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    101
    102
    103
    104
    105
    106
    107
    using System;
    using System.Collections.Generic;
    using System.ComponentModel;
    using System.Data;
    using System.Drawing;
    using System.Text;
    using System.Windows.Forms;
    using DevExpress.XtraEditors;
    using AForge.Video;
    using AForge.Video.DirectShow;
    using AForge.Vision.Motion;
    using System.Drawing.Imaging;
    using AForge.Imaging;
    using AForge.Video.VFW;
     
    namespace lecture_labial19mars2012.video
    {
        public partial class Aqusition : DevExpress.XtraEditors.XtraForm
        {
     
     
            private FilterInfoCollection videoCaptureDevices;
     
            private VideoCaptureDevice Finalvideo;
            AVIWriter writer;
     
            int iCpt = 0;
     
     
            MotionDetector detector = new MotionDetector(new SimpleBackgroundModelingDetector(), new MotionAreaHighlighting());
            public Aqusition()
            {
                InitializeComponent();
            }
     
       private void Aqusition_Load(object sender, EventArgs e)
            {
                videoCaptureDevices=
    new FilterInfoCollection(FilterCategory.VideoInputDevice);
     
                foreach (FilterInfo videoCaptureDevice in videoCaptureDevices)
                    {
                        comboBox2.Items.Add(videoCaptureDevice.Name);
                    }
                writer = new AVIWriter("wmv3");
     
                writer.Open("videoe_enregistrer.avi", 640, 480);
                timer1.Start();
     
                    comboBox2.SelectedIndex = 0; //make dafault to first cam
             }
     private void button1_Click(object sender, EventArgs e)
            {
                 Finalvideo = new VideoCaptureDevice(videoCaptureDevices[comboBox2.SelectedIndex].MonikerString);
                 Finalvideo.DesiredFrameSize = new Size(160, 120);
                Finalvideo.NewFrame += new NewFrameEventHandler(FinalVideo_NewFram);
                Finalvideo.Start();
                 button1.Enabled = false;
                button2.Enabled = true;
            }
     
               void FinalVideo_NewFram(object sender, NewFrameEventArgs eventArgs)
            {
     
                Bitmap image = (Bitmap)eventArgs.Frame.Clone();
                Bitmap image2 = (Bitmap)eventArgs.Frame.Clone();
                pictureBox1.Image = image;
                writer.AddFrame(image);
       if (detector.ProcessFrame(image2) > 0.5)
                {
                    Test = true;
                    //timer1.Start();
                    //timer1.Enabled = true;
                    writer.AddFrame(image2);
                }
                if (Test == true)
                {
                    writer.AddFrame(image2);
                }
     
             }
     
    private void button2_Click(object sender, EventArgs e)
            {
                writer.Close();
                timer1.Stop();
                Test = true;
                button1.Enabled = true;
                button2.Enabled = false;
                if (Finalvideo.IsRunning)
                    Finalvideo.Stop();
            }
       private void closed(object sender, FormClosedEventArgs e)
            {
                if (Finalvideo.IsRunning)
                    Finalvideo.Stop();
            }
     
            private void tick(object sender, EventArgs e)
            {
                if (iCpt < 3000)
                    iCpt += timer1.Interval;
                else
                    timer1.Stop();
            }
            }
    }

Discussions similaires

  1. Enregistrer le flux vidéo d'une caméra Axis
    Par nesrine18 dans le forum Multimédia
    Réponses: 2
    Dernier message: 09/03/2012, 11h05
  2. enregistrement des flux vidéo
    Par byn1984 dans le forum Débuter avec Java
    Réponses: 0
    Dernier message: 19/04/2011, 00h25
  3. enregistrer un flux vidéo
    Par sahar_sr dans le forum NetBeans
    Réponses: 2
    Dernier message: 30/03/2010, 12h25
  4. Phonon : enregistrer flux vidéo webcam
    Par Gulish dans le forum Qt
    Réponses: 7
    Dernier message: 14/11/2008, 23h42
  5. Récupération de flux vidéo à partir d'un tuner télé
    Par cybermarcel dans le forum OpenCV
    Réponses: 0
    Dernier message: 09/11/2007, 15h31

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo