Sistema Desktop c/ WebCam

16 respostas
H

Pessoal,
Estou desenvolvendo uma aplicação de para registro de VISITAS, para isso irei precisar tirar foto do visitante e imprimir a foto e os dados do visitante, em uma etiqueta.

Dessa forma peço ajuda para integrar esse tipo de tecnologia ao meu software. Tenho uma webCam logTec Ver. 10.5 e a impressora que irei utilizar para Teste será a Bematech 2100, isso pq ainda não tenho a impressora de etique, talvez eu compre a impressora da PIMACO!
A principio preciso que apontem alguns fotores:
Onde posso obter esse tipo de material?
O que é necessário entender ou saber, antes de trabalhar com esse tipo de tecnologia?
Com qual API fica mais facil de trabalhar?
Quais dificuldades vou encontrar?

Aguardo retorno!
att.

16 Respostas

R

Cara, no Adobe Air já existe um componente de WebCam. Para tirar foto com ela é a maior moleza. Na empresa onde trabalho usamos isso para tirar fotos e colocar no cadastro da pessoa.
E no Adobe Air 2.0 existem classes para impressão.

Dá uma olhada: http://www.riacodes.com/flash/capture-images-from-the-webcam/

[]s

H

JMF. você tira foto do pessoal com sua webcam

H

obrigado, vou dar uma pesquisada,

normalmente o pessoal utiliza o JMF mas está descontinuado correto?

H

Alguém tem mais idéias sugestões!!!
att.

A

Bom dia, alguem consegui implementar a solução do renzonuccitelli, se sim poderia me dar um explo de como faço isso…

V

Se sua aplicação Java rodar em Windows, use essa API aqui:
http://www.humatic.de/htools/dsj.htm

Se sua aplicação tiver que rodar em mais plataformas, deixe o Java de lado e use QT:
http://qt.nokia.com/

Só reforçando, em 2010 o JMF estava descontinuado, em 2012 ele continua descontinuado.

A

A princípio será pra Windows mesmo porém não sei com implementar o DJS nem JMF sou novo em programação já ouvi falar que da pra fazer com OpenCV mas não achei nem um exemplo que posse me dar mais clareza do assunto achei que a solução do renzonuccitelli seria de mais fácil compreendi mento já que quero colocar uma foto no cadastro através da web cam :?:

V

Existe um projeto chamado javacv, que é o binding do opencv.
Mas nesse caso acho que é um canhão para matar um pato (ele seria adequado se você quisesse processar a imagem).

Tem um exemplo do DirectShow java aqui:
http://www.guj.com.br/java/262227-web-cam-em-swing#1370278

A

Ok irei dar uma estudada e tentar implementar e dou um feedback

A

Ok irei dar uma estudada e tentar implementar e dou um feedback

A

tentei implementar mas ta dando o seguinte erro

Exception in thread “AWT-EventQueue-0” java.lang.NullPointerException

at WebCamUtil.(WebCamUtil.java:24)

at WebCamUtil$1.run(WebCamUtil.java:152)

at java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:251)

at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:705)

at java.awt.EventQueue.access$000(EventQueue.java:101)

at java.awt.EventQueue$3.run(EventQueue.java:666)

at java.awt.EventQueue$3.run(EventQueue.java:664)

at java.security.AccessController.doPrivileged(Native Method)

at java.security.ProtectionDomain$1.doIntersectionPrivilege(ProtectionDomain.java:76)

at java.awt.EventQueue.dispatchEvent(EventQueue.java:675)

at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:211)

at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:128)

at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:117)

at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:113)

at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:105)

at java.awt.EventDispatchThread.run(EventDispatchThread.java:90)

não faço a minima ideia o que seja mas espero que seja coisa bouba

C

Estou com o mesmo problema…
:?

Exception in thread "AWT-EventQueue-0" java.lang.NullPointerException
	at visual.WebCamUtil.<init>(WebCamUtil.java:24)
	at visual.WebCamUtil$1.run(WebCamUtil.java:152)
	at java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:251)
	at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:705)
	at java.awt.EventQueue.access$000(EventQueue.java:101)
	at java.awt.EventQueue$3.run(EventQueue.java:666)
	at java.awt.EventQueue$3.run(EventQueue.java:664)
	at java.security.AccessController.doPrivileged(Native Method)
	at java.security.ProtectionDomain$1.doIntersectionPrivilege(ProtectionDomain.java:76)
	at java.awt.EventQueue.dispatchEvent(EventQueue.java:675)
	at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:211)
	at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:128)
	at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:117)
	at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:113)
	at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:105)
	at java.awt.EventDispatchThread.run(EventDispatchThread.java:90)
V

Tentou usar o depurador?

E você tem certeza que a dll está na pasta lib, e que a pasta certa está sendo retornada pelo File?

C

1º obrigado Vini pela força!

Vamos lá eu coloquei a dll na pasta do meu projeto dentro de:

Meuprojeto\lib\dsj.dll

2º Depurei o projeto e não chega e executar o método iniciarWebCam ()

o erro ocorre no :

pnlPlayer.add (player.asComponet());

um detalhe estou usar a webcam de um notebook com windows 7 64

outra coisa já testei com as 2 dll (32 e 64)

obrigado pela ajuda!

V

Você chamou o método estático WebCamUtil.iniciarWebCam() antes de rodar o construtor?

C

Muito obrigado Vini, é o cara mesmo!
eu estava iniciando a classe assim

public WebCamUtil(java.awt.Frame parent, boolean modal) {
      
        super(parent, modal);
        initComponents();
        setLocationRelativeTo(null);
        pnlPlayer.setSize(640, 480);
        pnlPlayer.add(player.asComponent());
    }

alterei para:

public WebCamUtil(java.awt.Frame parent, boolean modal) {
      
        super(parent, modal);
        initComponents();
        setLocationRelativeTo(null);
        //-----------------------------
        iniciarWebCam();
        //-----------------------------
        pnlPlayer.setSize(640, 480);
        pnlPlayer.add(player.asComponent());
    }

agora está 100%, muuuuuuuito obrigado mesmo! :smiley:

Criado 24 de setembro de 2010
Ultima resposta 12 de jan. de 2013
Respostas 16
Participantes 6