Como tirar fotos instantâneas de uma webcam?

Eu quero tirar uma foto com minha webcam usando java e salvá-lo em um arquivo jpg. Quais são os passos necessários para o fazer? Um tutorial seria muito apreciado.

Saudações,
Burkhard

O JMF (Java Media Framework) é um bom ponto de partida. No entanto, eu não tive sucesso com isso.

Eu finalmente encontrei a solução aqui .

A parte importante é:

Buffer buf = frameGrabber.grabFrame(); // Convert frame to an buffered image so it can be processed and saved Image img = (new BufferToImage((VideoFormat) buf.getFormat()).createImage(buf)); buffImg = new BufferedImage(img.getWidth(this), img.getHeight(this), BufferedImage.TYPE_INT_RGB); //TODO saving the buffImg 

O que você está procurando pode ser o Java Media Framework (JMF). Veja o tutorial do Sun. Espero que isso ajude.

Eu prefiro usar o JMyron em vez do JMF. O JMyron é fácil de usar para acessar a webcam. Para salvar a imagem capturada, basta salvar o BufferedImage usando ImageIO.write (); este blog Como usar a webcam Usando o Java é útil começar a usar o JMyron.

Tente o projeto de captura de webcam .

Este código irá tirar uma foto da webcam (incorporada, conectada a uma câmera USB ou IP) e salvá-la em um arquivo JPG:

 Webcam webcam = Webcam.getDefault(); webcam.open() BufferedImage image = webcam.getImage(); ImageIO.write(image, "JPG", new File("test.jpg"));