программирование камеры в черной ягоде - PullRequest
2 голосов
/ 21 апреля 2011

мой следующий код возвращает ноль,

byte[] image1 = _videoControl.getSnapshot(null);

любые предложения, пожалуйста

Ответы [ 2 ]

4 голосов
/ 21 апреля 2011

Несколько важных моментов о методе VideoControl.getSnapshot:

  • некоторые производители могут не реализовывать метод getSnapshot ();
  • видоискатель должен быть виден на экране до вызова getSnapShot ();
  • однако, если вы попытаетесь сделать снимок слишком быстро, getSnapShot () может вернуть ноль. Камера требует времени, чтобы очистить свой буфер и подготовиться к следующему кадру;
  • перед захватом вы можете проверить системное свойство MMAPI для «video.snapshot.encodings»:
if (System.getProperty("video.snapshot.encodings") == null) {
        // getSnapshot() is not supported
}

Вы можете прочитать эту главу из книги "Advanced BlackBerry Development": http://books.google.com/books?id=F4Qu-lpoVncC&pg=PA53&lpg=PA53#v=onepage&q&f=false

0 голосов
/ 21 апреля 2011

Поскольку метод VideoControl.getSnapshot поддерживается не всеми устройствами, я бы рекомендовал использовать другой подход. Вы можете запустить собственное приложение BB Camera с этой строкой кода:

Invoke.invokeApplication(Invoke.APP_TYPE_CAMERA, new CameraArguments());

и затем с помощью FileSystemJournalListener поймайте полученное изображение.

BB SDK на вашем ПК содержит образцы. Найдите образец 'fileexplorerdemo', чтобы увидеть остальные детали.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...