Jump to content
Fórum Script Brasil
  • 0
Sign in to follow this  
danielrgoes

(Resolvido) Webcan no delphi 2007

Question

Pessoal seguinte

Estou precisando fazer um programa que firme com a webcan e capture a imagem (frame) quando apertar um botao

Na internet achei varios exemplos mais são componentes que não funcionam no D2007 só no D7

alguém pode me ajudar ?

Share this post


Link to post
Share on other sites

24 answers to this question

Recommended Posts

  • 0
Estou precisando fazer um programa que firme com a webcan e capture a imagem (frame) quando apertar um botao

Na internet achei varios exemplos mais são componentes que não funcionam no D2007 só no D7

Voce chegou a testar este: Getting a snapshot from a webcam with Delphi ?

O exemplo está em uma pergunta em um forum, referente ao fato de o cara não usar uma câmera real (sim uma simulada), mas o código deve funcionar.

Eu já o utilizei há algum tempo com o D7 e pelo que consta na 2ª resposta que deram a ele, o programa funciona no Win7 com Delphi 2010, fazendo apenas alguns ajustes (colocados lá) - acredito que você seja capaz de entendê-lo e adaptá-lo. A vantagem seria o fato de ele não utilizar componentes.

Observe que estão todos os códigos fonte em sequência. Voce deve separá-los e adaptar o código fonte do seu form de acordo com o que ele usou no dele (WebCamMainForm).

Share this post


Link to post
Share on other sites
  • 0
É bem complicado eheheeh andei pesquisando existe um componente chamado TCamera mais não acho no D2007

Tá bom, eu compliquei.

Baixa o Zip que tem no link lá no início onde aparece: "a zip file is available here"

Share this post


Link to post
Share on other sites
  • 0

danielrgoes, isso vai ficar difícil de eu responder - eu não tenho mais o Delphi instalado para poder testar por aqui.

Mas, voce já experimentou fazer a alteração no arquivo WebCamMainForm.pas que um cara sugeriu lá:

// introducing the RGB array and a buffer
  TVideoArray = array[1..PICHEIGHT] of array[1..PICWIDTH] of TRGBTriple;
  PVideoArray = ^TVideoArray;

  TForm1 = class(TForm)
[...]
  FBuf24_1: TVideoArray;
[...]

function FrameCallbackFunction(AHandle: hWnd; VIDEOHDR: TVideoHDRPtr): bool; stdcall;
var
  I: integer;
begin
  result:= true;

  with form1 do begin
  try
    if ConvertCodecToRGB(FCodec, VideoHDR^.lpData, @FBuf2, PICWIDTH, PICHEIGHT) then
    begin
      for I:= 1 to PICHEIGHT do FBuf1[I]:= FBuf2[PICHEIGHT- (I- 1)];
      SetBitmapBits(FBitmap.Handle, PICWIDTH* PICHEIGHT* SizeOf(DWord), @FBuf1);
    end
    else
    begin  // assume RGB
      for I:= 1 to PICHEIGHT do
        FBuf24_1[I] := PVideoArray(VideoHDR^.lpData)^[PICHEIGHT-I+1];
      SetBitmapBits(FBitmap.Handle, PICWIDTH* PICHEIGHT* SizeOf(RGBTriple), @FBuf24_1);
    end;
[...]
Ainda, a título de teste, se a tal alteração não mudar nada, voce poderia modificar a callback (FrameCallbackFunction) grando o bitmap original (lá ele é convertido para jpg):
...
    FBitmap.Canvas.Font.Color:= clRed;
    FBitmap.SaveToFile('c:\webcam.bmp');  // <<====  AQUI

    FJpeg.Assign(FBitmap);

    FJpeg.CompressionQuality:= 85;
    FJpeg.ProgressiveEncoding:= true;
    FJpeg.SaveToFile('c:\webcam.jpg');
    ...

Share this post


Link to post
Share on other sites
  • 0

É uma pena. :blush:

Sugiro que dê uma procurada em componentes com o código fonte, de forma que você possa compilá-lo na sua versão de Delphi.

Dê uma olhada neste que encontrei - link

Share this post


Link to post
Share on other sites
  • 0

voce deve instalar os drives que vem junto com a webcam para que não apareça a tela preta quando estiver usando um componente do delphi.

abraço

Share this post


Link to post
Share on other sites
  • 0

deve ter vindo junto com a sua webcam, um cd de instalação ... certo ? então use o programa que vem junto com a webcam e veja se esta aparecendo corretamente a imagem

se estiver, então a imagem tambem aparecerá quando estiver usando o delphi, mas o aplicativo da camera deverá fechado, caso contrário aparecerá uma tela escura no delphi

abraço

Share this post


Link to post
Share on other sites
  • 0

sim tem alguns, dos quais já te passei

ou pode procurar na net pelo dspack2007.rar

obs: voce tambem pode baixar o dspack2006.rar mas tera que trocar a versão do Directx9

abraço

Share this post


Link to post
Share on other sites
  • 0

Jhonas o Exemplo que você me mandou tem um fonte

ele não parece ter componente algum

Como ele utiliza a Webcam?

Jhonas ve se você me da uma mao

Baixei o DSPack porem não acho o D2007 mais vi que tem como funcionar o do D7

Porem não consigo instalar o componente porque no D2007 precisa do arquivo bpl e na pasta não tem

como faz pra instalar você sabe???

Share this post


Link to post
Share on other sites
  • 0

Jhonas

Eu tenho instalado aki o QR, o Rxlib, Rttools, JEDI

mais esse realmente estou encontrando dificuldade

Sem quer abusar muito da sua boa vontade poderia me mandar um passo a passo da instalacao desse componente

Obrigado

Share this post


Link to post
Share on other sites
  • 0

Para instalar pacotes de componentes (Packages, arquivos com a extensão *.DPK), execute o Delphi e feche o projeto, acesse o menu 'File' e clique na opção 'Open', abra o arquivo que contém os componentes. Dê Ok e depois é só clicar en 'install'. Pronto seu pacote de componentes será instalado.

primeiro para o DSPack_D7.dpk

depois para o DSPackDesign_D7.dpk

esses pacotes são para o delphi 7 mas funcionam do 2007 tambem

abraço

Share this post


Link to post
Share on other sites
  • 0

Jhonas acabei demorando porque estava testandooo

O componente deu certo Muito obrigado pela atenção

Ele é bem complicado de mexer vi os demos

vamos ver se consigo usar

se tiver algum exemplo menos complexos pra mim eu agradeço

Share this post


Link to post
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.

Sign in to follow this  



  • Forum Statistics

    • Total Topics
      148438
    • Total Posts
      643881
×
×
  • Create New...