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

Langage Delphi Discussion :

Utilisation Webcam interne sur PC portable


Sujet :

Langage Delphi

  1. #1
    Candidat au Club
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Avril 2016
    Messages
    3
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Avril 2016
    Messages : 3
    Points : 3
    Points
    3
    Par défaut Utilisation Webcam interne sur PC portable
    Bonjour,

    j'utilise Delphi6 et ai un écran au travers duquel j'affiche ma webcam.
    Cela marche sans problème avec une webcam externe (depuis des années)
    mais sur les portables (différents modèles testés), lors de la première utilisation, tout est OK mais ensuite, il m'affiche un écran me demandant le choix de la source vidéo.
    Je sélectionne ma webcam mais j'ai un écran noir au lieu de mon image.
    Mon code est le suivant :
    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
    procedure TFrameSpaWebCam.OpenWebcam;
    begin
       if Handlecap <> 0 then
       begin
          ShowMessage('Erreur Connexion WebCam');
          exit;
       end;
       HandleCap := capCreateCaptureWindow('Fenetre video', WS_CHILD or WS_VISIBLE, 0, 0, Width, Height, ADNPanel1.Handle, 0);
       SendMessage(HandleCap, WM_CAP_DRIVER_CONNECT, 0, 0);
       if Handlecap <> 0 then
       begin
          Getmem(Status, Sizeof(TCapStatus));
          Getmem(DrvCaps, SizeOf(TCapDriverCaps)); 
          SendMessage(HandleCap, WM_CAP_GET_STATUS, Sizeof(TCapStatus), LongInt(Status));
          SendMessage(HandleCap, WM_CAP_DRIVER_GET_CAPS, SizeOf(TCapDriverCaps), LongInt(DrvCaps)); 
          SendMessage(HandleCap, WM_CAP_SET_PREVIEW, 1, 0);
          SendMessage(Handlecap, WM_CAP_SET_PREVIEWRATE, 1, 0);
       end;
    end;
    et
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    procedure TFrameSpaWebCam.CloseWebcam;
    begin
       if Handlecap = 0 then
       begin
          ShowMessage('Erreur Déconnexion WebCam');
          exit;
       end;
       SendMessage(Handlecap, WM_CAP_DRIVER_DISCONNECT, 0, 0);
       Handlecap := 0;
    end;
    Le choix de la source vidéo apparait sur la ligne SendMessage(HandleCap, WM_CAP_DRIVER_CONNECT, 0, 0); de ma procédure OpenWebcam
    S'agissant des portables, j'ai une petite diode à coté de la webcam,
    celle-ci est allumé lors de la première utilisation (suite à SendMessage(HandleCap, WM_CAP_DRIVER_CONNECT, 0, 0) ),
    s'éteint lorsque je fait CloseWebCam
    et ne se rallume pas lors de la seconde utilisation après choix du périphérique (l'image n'apparait pas).

    Si quelqu'un a une idée ?
    Merci d'avance

  2. #2
    Membre expert

    Homme Profil pro
    Développeur informatique
    Inscrit en
    Novembre 2007
    Messages
    3 437
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 62
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Novembre 2007
    Messages : 3 437
    Points : 3 072
    Points
    3 072
    Par défaut
    Je n'ai rien pour tester ce code mais à tout hasard, j'avais ce lien dans mes archives:

    http://stackoverflow.com/questions/9...simple-program

    La première réponse renvoie le téléchargement d'un programme à base de DirectX.
    Si ça peut dépanner pour un remplacement rapide ....
    J-L aka Papy pour les amis

Discussions similaires

  1. Réponses: 2
    Dernier message: 13/11/2014, 22h18
  2. quel language utiliser pour agir sur un log automatiquent
    Par qegukom dans le forum Langages de programmation
    Réponses: 3
    Dernier message: 05/08/2004, 21h00
  3. [REDHAT] Installation RedHat 9 sur un portable Presario 900
    Par billyboy dans le forum RedHat / CentOS / Fedora
    Réponses: 8
    Dernier message: 12/06/2004, 00h06
  4. Internet sur PC portable depuis Téléphone Mobile (via GSM)
    Par krugernet dans le forum Développement
    Réponses: 4
    Dernier message: 16/11/2003, 17h28
  5. webcam : lire sur un port usb en c/c++ ou java. sous win. ?
    Par flo007 dans le forum Choisir un environnement de développement
    Réponses: 2
    Dernier message: 24/05/2002, 23h24

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