com.github.sarxos.webcam.WebcamException:无法执行任务

时间:2014-01-07 10:06:36

标签: java jquery usb webcam

这里我编写了一些代码来使用java从USBcam中捕获图像。

以下是代码:

Webcam webcam = Webcam.getDefault();
        webcam.open();
        try {
            ImageIO.write(webcam.getImage(), "PNG", new File("d:/hello-world1.png"));
            System.out.println(Thread.currentThread().getName());

        } catch (IOException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }

我已经添加了3个罐子, 但是在运行应用程序时,图像没有得到, 提出例外。

以下是例外:

Exception in thread "main" com.github.sarxos.webcam.WebcamException: Cannot execute task
    at com.github.sarxos.webcam.WebcamProcessor$AtomicProcessor.process(WebcamProcessor.java:57)
    at com.github.sarxos.webcam.WebcamProcessor.process(WebcamProcessor.java:120)
    at com.github.sarxos.webcam.WebcamTask.process(WebcamTask.java:35)
    at com.github.sarxos.webcam.ds.cgt.WebcamOpenTask.open(WebcamOpenTask.java:20)
    at com.github.sarxos.webcam.Webcam.open(Webcam.java:187)
    at com.github.sarxos.webcam.Webcam.open(Webcam.java:147)
    at ImageCapture.main(ImageCapture.java:16)
Caused by: com.github.sarxos.webcam.WebcamException: Cannot start native grabber!
    at com.github.sarxos.webcam.ds.buildin.WebcamDefaultDevice.open(WebcamDefaultDevice.java:220)
    at com.github.sarxos.webcam.ds.cgt.WebcamOpenTask.handle(WebcamOpenTask.java:38)
    at com.github.sarxos.webcam.WebcamProcessor$AtomicProcessor.run(WebcamProcessor.java:66)
    at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(Unknown Source)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
    at java.lang.Thread.run(Unknown Source)

请建议我知道哪里出错了。

2 个答案:

答案 0 :(得分:0)

public class TakePictureExample {
    public static void main(String[] args) throws IOException {

        Webcam webcam = Webcam.getDefault();

        webcam.setViewSize(new Dimension(1024,768));

        webcam.open(false);

        // get image
        BufferedImage image = webcam.getImage();

        // save image to PNG file
        ImageIO.write(image, "PNG", new File("test.png"));  
    }
}

答案 1 :(得分:0)

我知道我来晚了,但是对于Windows 10中遇到此问题的每个人:检查camera的'数据保护设置。也许那里的程序访问被阻止,这可能导致错误。