com.github.sarxos.webcam.WebcamException: не удается запустить собственный граббер

0

Здесь я написал код для захвата изображения с USB-камеры с помощью java.

Ниже приведен код:

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)

Пожалуйста, предложите мне любую идею, где я ошибаюсь.

Теги:
webcam

1 ответ

0

Если вы посмотрите на исходный код, сообщение Cannot start native grabber grabber.openSession(...) Cannot start native grabber возникает, если grabber.openSession(...) возвращает false где grabber=new OpenIMAJGrabber(); который является родным прокси-сервером Bridj. Этот улов затрудняет диагностику, поскольку реальное исключение скрыто. Кажется, существует проблема с доступом к библиотеке, поэтому вы должны проверить, действительно ли .so или .dll в вашем пути к классам. Вы должны рассмотреть возможность отладки, чтобы убедиться, что grabber хорошо создан...

Ещё вопросы

Сообщество Overcoder
Наверх
Меню