GARANTIR DESCONTO

Fórum PROBLEMAS AO CAPTURAR WEBCAM NO WINDOWS 7 #425976

10/10/2012

0

Pessoal não sei se alguém já passou por isso, mas, vai ai uma parada sinistra.

Estou desenvolvendo para uma micro empresa um sistema de monitoramento de computadores que captura imagens diretamente da webcam. Estou fazendo uma bateria de testes com ele, e no Windows XP funciona lidamente bem, mas, quando rodo o sistema no windows 7 (que é o system da empresa), não funciona. Ou melhor, funciona capturando somente a primeira foto, depois quando é pra capturar a segunda imagem, é mostranda uma telinha do Windows pedindo pra escolher o dispositivo de vídeo, clico em OK e mesmo assim continua do mesmo jeito até que vc reinicie o pc novamente, para capturar apenas uma (a primeira).


OBS: Isto acontece tanto com o uso daquela famosa função

function capCreateCaptureWindowA(lpszWindowName: pchar; dwStyle: dword; x, y, nWidth, nHeight: word; ParentWin: dword; nId: word): dword; stdcall external 'avicap32.dll';

quanto com o uso dos componentes TCamera e Tscape32 (dentre os que ja testei).

Alguém já teve essa péssima experiência, e poderia me ajudar?

Agradeço demais.

Luiz Eduardo

Luiz Eduardo

Responder

Posts

10/10/2012

Gilvanio Gonçalves

Veja se assim funcina?.


var
HwebCam: HWND;

function capCreateCaptureWindowA(lpszWindowName: pchar; dwStyle: dword; x, y, nWidth, nHeight: word; ParentWin: dword; nId: word): dword; stdcall external 'avicap32.dll';

implementation

Function CapturarWebCam(DestinoCapBMP:string) : Boolean;
const
WM_WEBCAM = $400;
WM_CONECTAR_DRIVER_WEBCAM = WM_WEBCAM + $a;
WM_DESCONECTAR_DRIVER_WEBCAM = WM_WEBCAM + $b;
WM_GUARDAR_CAPTURA = WM_WEBCAM + 25;
WM_FECHAR_WEBCAM = $0010;
begin
if HwebCam = 0 then
begin //WS_CHILD //WS_VISIBLE
HwebCam := capCreateCaptureWindowA('CaptureWindow', $40000000 and $10000000, 0, 0, 0, 0, GetDesktopWindow, 0);
if SendMessage(HwebCam, WM_CONECTAR_DRIVER_WEBCAM, 0, 0) <> 1 then
begin
HwebCam := 0;
Result := False;
end else begin
SendMessage(HwebCam, WM_GUARDAR_CAPTURA, wparam(0), lparam(PChar(DestinoCapBMP)));
SendMessage(HwebCam, WM_FECHAR_WEBCAM, 0, 0);
SendMessage(HwebCam, WM_FECHAR_WEBCAM, 0, 0);
HwebCam := 0;
Result := True;
end;
end else
Result := False;
end;


Procedure Capturar;
Const
Captura = 'C:\Users\Gil\Desktop\WebCam Captura.bmp';
begin
if not CapturarWebCam(Captura) then
MessageBox(0,Pchar('Não foi possivél capturar a webcam'#10''),'Erro',16);
end;


tente ai.
Responder

Gostei + 0

11/10/2012

Luiz Eduardo

Valeu pela ajuda Gilvanio!

Deu certo.

Por enquanto está funcionando (no quesito de aparecer a janelinha do Windows), entretanto ainda continua capturando só a primeira; mas pelo menos metade do problema aparentemente está resolvido.

Quero compartilhar este link com vcs http://www.orkut.com/Main#CommMsgs?cmm=20052098&tid=2547289880727471094&na=1&npn=1&nid=

TRATE-SE DO MESMO ASSUNTO, MAS NESSE EXEMPLO AÍ FALA-SE TAMBEM NA CAPTURA DE VIDEOS AVI INCLUSIVE TAMBEM TEM O CÓDIGO. VALE A PENA DÁ UMA OLHADA.
Responder

Gostei + 0

11/10/2012

Deivison Melo

Experimente utilizar o componente: "Professional Screen Camera Component v.5.2.3.0 " (freeware)

link para download:

http://www.torry.net/vcl/mmedia/video/PSC.v5.2.3.0.zip

Abração!!

Espero ter ajudado!!!

Emanoel Deivison
Recife - PE
Responder

Gostei + 0

11/10/2012

Gilvanio Gonçalves

Valeu pela ajuda Gilvanio!

Deu certo.

Por enquanto está funcionando (no quesito de aparecer a janelinha do Windows), entretanto ainda continua capturando só a primeira; mas pelo menos metade do problema aparentemente está resolvido.

Quero compartilhar este link com vcs http://www.orkut.com/Main#CommMsgs?cmm=20052098&tid=2547289880727471094&na=1&npn=1&nid=

TRATE-SE DO MESMO ASSUNTO, MAS NESSE EXEMPLO AÍ FALA-SE TAMBEM NA CAPTURA DE VIDEOS AVI INCLUSIVE TAMBEM TEM O CÓDIGO. VALE A PENA DÁ UMA OLHADA.

por estar capturando só a primeira, é devido ter um uma web apenas instalada, ou seja driver video usb, veja neste link
como utilizar mais de uma usb conectado, como usar corretamente a captura de imagens? existe também um modo de gravar
a imgaem capturada e gravar no bco de dados,ok.
Link:http://www.youtube.com/watch?v=J4at7AfR5eo e aula com um Camrada famoso pos Graduado em programação: Prof Neri.
Responder

Gostei + 0

20/05/2013

Luiz Eduardo

Estou precisando usar este código indicado acima novamente, entretanto, não está aparecendo mais a imagem da Webcam, mas o restante do código funciona perfeitamente.

Alguém sabe informar o que pode ser este problema?
a imagem que gera é uma tela acinzentada rsrs.

Toda ajuda será bem vinda!
Responder

Gostei + 0

20/05/2013

Deivison Melo

Testou o componente: "Professional Screen Camera Component v.5.2.3.0 " (freeware)?

link para download:

http://www.torry.net/vcl/mmedia/video/PSC.v5.2.3.0.zip

Abração!!

Espero ter ajudado!!!

Emanoel Deivison
Recife - PE
Responder

Gostei + 0

08/06/2013

Luiz Eduardo

Não funciona tbm o PSC.

Até no Skype está com este mesmmo problema aqui no meu notbook [url]http://uploaddeimagens.com.br/imagens/skype-jpg--3[/url]. Já fui na casa de um amigo testar na Webcam dele e dá no mesmo tbm.

Por favor, alguém poderia testar o código sugerido acima e experimentar na Cam de vcs? sinceramente acho que é problema no própio sistema operacional Windows ou então do drive da webcam ( uso o que o própio windows istala na formatação e o meu Win ´w atualizado costantemente), tendo em vista que nenhum programa de captura Webcam funciona.

Por favor testem o source acima e vejam com mais clareza o problema ao qual estou me referindo.

OBS: Já testei outros sources tbm contendo essas APIs e componentes como TCamera, PSC (Professional Screen Camera), Tscap32 e não obtive êxito, e assim, persistindo este mesmo problema de tela acinzentada.

Aguardo mais sugestões de ajuda! :D
Responder

Gostei + 0

16/07/2014

Alan Campos

Pessoal,

Conseguiram resolver essse problema ? Pois estou com o mesmo problema, já tentei usar o componente do Jedi, TVideoCap e com todos só funciona na primeira captura, depois aparece a tela do drive. Estou usando o delphi 2007 no windows 7 e 8.

Obrigado.
Alan Campos
Responder

Gostei + 0

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar