Russian Qt Forum
Ноябрь 24, 2024, 09:28 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

Войти
 
  Начало   Форум  WIKI (Вики)FAQ Помощь Поиск Войти Регистрация  

Страниц: [1]   Вниз
  Печать  
Автор Тема: Meego 1.2 Harmattan и QCamera  (Прочитано 5063 раз)
meandnano
Гость
« : Сентябрь 02, 2011, 11:50 »

Доброго времени суток!

Есть ли возможность работать с камерой на Nokia N9 с помощью QCamera из QtMobility или необходимо использовать другие методы?

Тестовая программа, которая правильно работает на Nokia C6-01 (Symbian Anna), не выводит в N9 изображение с камеры на viewfinder (QVideoWidget или QGraphicsVideoItem). Используемая версия QtMobility - 1.1.3, Qt - 4.7.3.

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

>testmobile.pro
Код:
	<...>
CONFIG += mobility
MOBILITY += multimedia
LIBS += -lQtMultimediaKit
<...>
   
>mainwindow.h
   
Код:
class MainWindow : public QWidget
{
Q_OBJECT
<...>
private:
QCamera* camera_;
QGraphicsView *view;
QGraphicsVideoItem *videoItem;
QGraphicsScene *scene;
<...>
}
   
>mainwindow.cpp
   
Код:
MainWindow::MainWindow(QWidget *parent)
    : QWidget(parent)
{
<...>
    camera_ = new QCamera;
    view = new QGraphicsView(this);
    scene = new QGraphicsScene(view);
    videoItem = new QGraphicsVideoItem;
    view->setScene(scene);
    scene->addItem(videoItem);

    QVBoxLayout *lay = new QVBoxLayout(this);
    lay->addWidget(view);
    this->setLayout(lay);
    view->show();
    camera_->setViewfinder(videoItem);

    camera_->start();
}

<...>

Есть идеи?
« Последнее редактирование: Сентябрь 02, 2011, 11:57 от meandnano » Записан
pastor
Administrator
Джедай : наставник для всех
*****
Offline Offline

Сообщений: 2901



Просмотр профиля WWW
« Ответ #1 : Сентябрь 02, 2011, 12:59 »

Как вариант обновить Qt Mobility до 1.2
Записан

Integrated Computer Solutions, Inc. (ICS)
http://www.ics.com/
meandnano
Гость
« Ответ #2 : Сентябрь 05, 2011, 09:43 »

Нашел решениe, версия QtMobility здесь ни при чем.
В Megoo есть аналог Симбиановских "capabilities" - aegis security tokens. То есть для работы с камерой нужен такой токен (разрешение).
В проект добавляется файл имя_пакета.aegis со следующим содержанием:
Код
XML
<aegis>
  <request>
       <credential name="GRP::video"/>
       <credential name="GRP::pulse-access"/>
       <for path="/opt/testmobile/bin/testmobile"/>
  </request>
</aegis>
 

В <for path> необходимо указывать полный путь к бинарнику вашего приложения. Ну и, разумеется, для другого функционала (не камеры) параметр "name" тэга <credential> должен содержать другое значение.

Подробнее можно почитать здесь.
Записан
Страниц: [1]   Вверх
  Печать  
 
Перейти в:  


Страница сгенерирована за 0.051 секунд. Запросов: 23.