Программирование камеры Black Berry - PullRequest
1 голос
/ 12 апреля 2011

Я хочу делать снимки с помощью камеры с черными ягодами для моего приложения, это возможно в версии 5.0, и да, как тогда?

Ответы [ 2 ]

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

Да, это определенно возможно, но не очень простая задача, если вы заранее не получите совета.

Прежде всего, есть пример кода, который поставляется как минимум с пакетом Eclipse (CameraDemo), который показывает, как создать видоискатель, используя Field, Player и VideoScreen.Самая большая проблема заключается в том, что сторонние разработчики не могут наложить что-либо поверх видоискателя (то, что они назовут полем после того, как вы установите его как таковой с помощью VideoControl.

Кроме того, вы очень ограниченыкакой размер вы можете установить Поле - у меня только половина размера и полноэкранный режим, некоторые измерения игнорируются, а другие приводят к тому, что оно вообще не отображается.

Вот код, который показывает это:

private Field _videoField;
private Player _player;
private VideoControl _videoControl;

private void initCamera() {
        try{ 
            _player = Manager.createPlayer( "capture://video??encoding=jpeg&width=640&height=480" );
            _player.realize();
            _player.prefetch();
            _videoControl = (VideoControl)_player.getControl("VideoControl");
            _player.start();                
            if (_videoControl != null){

                _videoField = (Field) _videoControl.initDisplayMode (VideoControl.USE_GUI_PRIMITIVE, "net.rim.device.api.ui.Field");
                _videoControl.setDisplayFullScreen(true);
                add(_videoField);
            }
        }
        catch(Exception e)
        {
           //show error
        }
    }

После этого вы можете использовать

            byte[] image = _videoControl.getSnapshot(sizeAndEncodingParamters);

для привязки изображения. Чтобы определить, какие sizeAndEncodingParameters поддерживает ваше устройство, вы можете использовать System.getProperty("video.snapshot.encodings");, который вернет String[], который выможно перебрать, чтобы определить, что использовать.

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

Посмотрите примеры, которые поставляются с установкой BB SDK на вашем ПК.Есть пример CameraDemo.Вы можете просто попробовать поискать CameraDemo.java на жестком диске, если вы не уверены, где находятся эти образцы.

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