Jump to content
Fórum Script Brasil
  • 0

Web Cam


José Luiz

Question

Pesquisando no Fórum, encontrei um programa para gerenciamento da WebCam.

O programa funciona perfeitamente, porém não sei como desligar a câmera.

Eu ligo a WebCam ao entrar no Form, e gostaria de desligá-la ao sair.

Como faço para desligar a WebCam ao fechar o Form ?

Rotina utilizada.

{$R *.dfm}

const WM_CAP_START  = WM_USER          ;
const WM_CAP_STOP = WM_CAP_START + 68;
const WM_CAP_DRIVER_CONNECT = WM_CAP_START + 10;
const WM_CAP_DRIVER_DISCONNECT = WM_CAP_START + 11;
const WM_CAP_SAVEDIB  = WM_CAP_START + 25;
const WM_CAP_GRAB_FRAME = WM_CAP_START + 60;
const WM_CAP_SEQUENCE = WM_CAP_START + 62;
const WM_CAP_FILE_SET_CAPTURE_FILEA  = WM_CAP_START + 20;
const WM_CAP_SEQUENCE_NOFILE  = WM_CAP_START + 63;
const WM_CAP_SET_OVERLAY  = WM_CAP_START + 51;
const WM_CAP_SET_PREVIEW  = WM_CAP_START + 50;
const WM_CAP_SET_CALLBACK_VIDEOSTREAM = WM_CAP_START +  6;
const WM_CAP_SET_CALLBACK_ERROR  = WM_CAP_START +  2;
const WM_CAP_SET_CALLBACK_STATUSA = WM_CAP_START +  3;
const WM_CAP_SET_CALLBACK_FRAME  = WM_CAP_START +  5;
const WM_CAP_SET_SCALE = WM_CAP_START + 53;
const WM_CAP_SET_PREVIEWRATE = WM_CAP_START + 52;

function capCreateCaptureWindowA ( lpszWindowName : PCHAR; dwStyle : longint; x : integer; y : integer;
         nWidth : integer; nHeight : integer; ParentWin : HWND; nId : integer ) : HWND; STDCALL; EXTERNAL 'AVICAP32.DLL';


procedure TForm1.FormShow(Sender: TObject);
begin

  hWndC := capCreateCaptureWindowA ( 'WebCam', WS_CHILD or WS_VISIBLE, Panel10.Left, Panel10.Top, 320, 240, Form1.Handle, 0 );

  if hWndC <> 0 then begin
    SendMessage ( hWndC, WM_CAP_SET_CALLBACK_VIDEOSTREAM,  0, 0 );
    SendMessage ( hWndC, WM_CAP_SET_CALLBACK_ERROR      ,  0, 0 );
    SendMessage ( hWndC, WM_CAP_SET_CALLBACK_STATUSA    ,  0, 0 );
    SendMessage ( hWndC, WM_CAP_DRIVER_CONNECT          ,  0, 0 );
    SendMessage ( hWndC, WM_CAP_SET_SCALE               ,  1, 0 );
    SendMessage ( hWndC, WM_CAP_SET_PREVIEWRATE         , 66, 0 );
    SendMessage ( hWndC, WM_CAP_SET_OVERLAY             ,  1, 0 );
    SendMessage ( hWndC, WM_CAP_SET_PREVIEW             ,  1, 0 );
  end;

Se eu fecho o From sem desligar a WebCam, ao entrar novamente, dá erro.

Obrigado,

José Luiz.

Link to comment
Share on other sites

1 answer to this question

Recommended Posts

  • 0

coloque o código completo, para poder analisar e te ajudar

outra sugestão:

use esse componente

http://mrbool.devmedia.com.br/Novo/Revista...adriano-cam.zip

e use esse código

procedure TForm1.Button1Click(Sender: TObject);
var
  p : ^TTabImage;
begin
  // ativar a camera
  Camera1.Actif:=True;
  New(p);
end;

procedure TForm1.Button2Click(Sender: TObject);
var
  p : ^TTabImage;
begin
  // desativar a camera
  Camera1.Actif:=False;
  New(p);
end;

Dica do forum ActiveDelphi

http://www.activedelphi.com.br/forum/viewt...437c4b01c18d6ac

abraço

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Answer this question...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.



  • Forum Statistics

    • Total Topics
      152.2k
    • Total Posts
      652k
×
×
  • Create New...