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++Builder Discussion :

comment connecter une webcam sous builder c++


Sujet :

C++Builder

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Futur Membre du Club
    Inscrit en
    Mai 2006
    Messages
    2
    Détails du profil
    Informations forums :
    Inscription : Mai 2006
    Messages : 2
    Par défaut comment connecter une webcam sous builder c++
    salut
    je développe une application sous BUILDER C++ ; dont j'utilise une Webcam pour accueillir ces images puis faire des traitements
    et je me demande es qu’il y a une fonction ou un composant qui permet de connecter la webcam et de faire l’acquisition de ces images .
    qq'un peut m'aider
    merci

  2. #2
    Rédacteur
    Avatar de blondelle
    Homme Profil pro
    Inscrit en
    Mars 2006
    Messages
    2 738
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Mars 2006
    Messages : 2 738
    Par défaut
    je ne connais pas mais peut etre en utilisant le composant twain il y a une description sur la FAQ delphi
    bon courage

  3. #3
    Membre Expert
    Avatar de bakaneko
    Profil pro
    Inscrit en
    Février 2004
    Messages
    1 268
    Détails du profil
    Informations personnelles :
    Âge : 45
    Localisation : France

    Informations forums :
    Inscription : Février 2004
    Messages : 1 268
    Par défaut
    Je crois que tu as un composant de gestion de WebCam au sein de la JVCL.

  4. #4
    Nouveau candidat au Club
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    2
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2006
    Messages : 2
    Par défaut Photo webcam
    Si tu créer un Animate dans ta fiche et tu le lie au handle, tu vas avoir un image en «Temps Réel».

    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
    #include <vfw.h>
     
    void __fastcall TFicheVideo::FormShow(TObject *Sender)
    {
                                        //Lier le handle à l'animate.
       Handle = Animate->Handle;
                                        //Créer une capture video de 640*480.
       Handle = capCreateCaptureWindow( NULL,                
                                                        WS_CHILD|WS_VISIBLE,
                                                        0,
                                                        0,
                                                        640,
                                                        480,
                                                        Handle,
                                                        0                                  );
                                        //Connecter le driver.
       capDriverConnect(Handle, 0);
                                        //Initialiser le taux de rafraichissement a 66ms.
       capPreviewRate  (Handle, 66);
                                        //Démarer la preview video.
       capPreview      (Handle, true);
    }
     
    //Si tu cré un bouton en cliquant dessu tu vas sauvegarder un photo .bmp.
     
    void __fastcall TFicheVideo::BtnPhotoClick(TObject *Sender)
    {
    	capCaptureSingleFrameOpen(Handle);
    	capCaptureSingleFrame(Handle) ;
    	capCaptureSingleFrameClose(Handle) ;
     
    	capFileSaveDIB(Handle, "C:\TOTO.BMP");
    }
    Je pense qu'avec cela tu vas pouvoir te débrouiller pour faire ton application.

  5. #5
    Membre expérimenté Avatar de Mattetfamilly
    Profil pro
    Inscrit en
    Mai 2006
    Messages
    182
    Détails du profil
    Informations personnelles :
    Âge : 47
    Localisation : France

    Informations forums :
    Inscription : Mai 2006
    Messages : 182
    Par défaut
    Comment tu lies le TAnimate à la WebCam?

    Franchement je suis novice sur le sujet et je ne saisis pas (le F1 ne me parait pas très clair...)

    Merci d'avance, ça m'intéresses aussi.

  6. #6
    Nouveau candidat au Club
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    2
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2006
    Messages : 2
    Par défaut
    Tout d'abbord l'exemple que je t'ai donné ci-haut, il faut que tu créé un HWND Handle;. Soit une variable globale ou dans le .H de la fiche, dans la section Private, que tu a créé le TAnimate. Je te conseille cette derniere façon.

    EX CODE .h de ta fiche(Quelque chose comme ça)
    Ajoute se qui est en caractere gras.:
    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
    //---------------------------------------------------------------------------
    #ifndef FVideoH
    #define FVideoH
    
    class TFicheVideo : public TForm
    {
    __published:	// Composants gérés par l'EDI
       TAnimate *Animate;
       TButton *BtnPhoto;
       void __fastcall FormShow(TObject *Sender);
       void __fastcall FormClose(TObject *Sender, TCloseAction &Action);
       void __fastcall BtnPhotoClick(TObject *Sender);
    private:	// Déclarations utilisateur
                                        //Handle pour la capture video.
            HWND Handle;
    public:		// Déclarations utilisateur
            __fastcall TFicheVideo(TComponent* Owner);
    };
    //---------------------------------------------------------------------------
    extern PACKAGE TFicheVideo *FicheVideo;
    //---------------------------------------------------------------------------
    #endif
    Cette ligne de commande qui est tirer de l'exemple plus haut va lier l'image que tu vas recevoir de la webcam, à la boite de l'animate.

    Handle = Animate->Handle;




    Pour de l'aide regarde dans Help/SDK Windows, c'est des fonction de Windows (capDriverConnect, capDriverDisconnect, capPreviewRate, capFileSaveDIB, etc.)

    N'oublie pas de faire un capDriverDisconnect(Handle); quand ta plus besoin de ta cam.

    J'espère que je t'ai aidé.

  7. #7
    Membre confirmé
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    134
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Juin 2006
    Messages : 134
    Par défaut
    Citation Envoyé par Satan_666
    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
    #include <vfw.h>
     
    void __fastcall TFicheVideo::FormShow(TObject *Sender)
    {
                                        //Lier le handle à l'animate.
       Handle = Animate->Handle;
                                        //Créer une capture video de 640*480.
       Handle = capCreateCaptureWindow( NULL,                
                                                        WS_CHILD|WS_VISIBLE,
                                                        0,
                                                        0,
                                                        640,
                                                        480,
                                                        Handle,
                                                        0                                  );
                                        //Connecter le driver.
       capDriverConnect(Handle, 0);
                                        //Initialiser le taux de rafraichissement a 66ms.
       capPreviewRate  (Handle, 66);
                                        //Démarer la preview video.
       capPreview      (Handle, true);
    }
     
    //Si tu cré un bouton en cliquant dessu tu vas sauvegarder un photo .bmp.
     
    void __fastcall TFicheVideo::BtnPhotoClick(TObject *Sender)
    {
    	capCaptureSingleFrameOpen(Handle);
    	capCaptureSingleFrame(Handle) ;
    	capCaptureSingleFrameClose(Handle) ;
     
    	capFileSaveDIB(Handle, "C:\TOTO.BMP");
    }
    voila le code que j'utilise. C'est uniquement sur mon PC qu'il ne fonctionne pas...

  8. #8
    Expert confirmé

    Avatar de pottiez
    Homme Profil pro
    Développeur C++
    Inscrit en
    Novembre 2005
    Messages
    7 152
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Développeur C++
    Secteur : Industrie

    Informations forums :
    Inscription : Novembre 2005
    Messages : 7 152
    Par défaut
    Je peut déjà te dire que tu as une erreur lors de la sauvegarde de la photo, ce n'est peut etre pas ta priorité, mais c'est toujours bon de corriger tout de suite : lorsque tu veut mettre le caractère '\' dans un texte en brut tu doit le doublé pour lui dire que ce n'est pas un caractère spécial, mais bien le caractère \ que tu veut.

    donc tu doit remplacer ce code :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    capFileSaveDIB(Handle, "C:\TOTO.BMP");
    par celui ci :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    capFileSaveDIB(Handle, "C:\\TOTO.BMP");

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. comment connecter une webcam sous builder c++ ?
    Par hmzbouch1 dans le forum C++Builder
    Réponses: 3
    Dernier message: 07/05/2011, 16h00
  2. [SAGE ODBC] Comment connecter une BDD ?
    Par aqwz dans le forum Autres SGBD
    Réponses: 8
    Dernier message: 14/09/2006, 10h00
  3. comment créer une image sous forme d'eclipse(ronde)
    Par unix27 dans le forum Balisage (X)HTML et validation W3C
    Réponses: 2
    Dernier message: 15/05/2005, 22h16
  4. Comment créér une collection sous Delphi
    Par PsyKroPack dans le forum Langage
    Réponses: 6
    Dernier message: 11/02/2003, 13h20

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