2015-09-28 3 views
0

Насколько я понимаю, X11 не поддерживает двойной \ triple буферный механизм, чтобы избежать разрыва экрана. поэтому я попытался использовать виджеты openGL, а затем понял, что нет поддержки, что когда-либо было для openGL + малины pi + qt4.Избегайте разрыва экрана в linux + QT

Все, что я прошу, это очень простая вещь, поймать кадры с видеокамеры, обработать их и показать на экране, и я получаю очень! плохой разрыв экрана.

Я знаю, что QT5 + WAYLAND + PI имеет какие-то (?) Поддержки openGL, это поможет мне решить эту проблему? (Разумно легко, и я имею в виду не большие изменения в моем приложении !!) есть ли что еще я могу сделать? (помимо изменения исходного кода X11 ...) :)

ответ

0

Если вы нацеливаетесь на малину Pi, я предлагаю вам использовать плагин eglfs Qt 5, что означает OpenGL через EGL без X11. Ярким препятствием для EGL является то, что производительность очень хорошая.

+0

У меня нет опыта работы с openGL, и я не могу найти примеры для openGL + малины. в основном у меня есть приложение, в котором есть несколько кнопок и QLabel (чтобы показать захват камеры), мое приложение находится в полноэкранном режиме все время (ведьма хороша, так как это одно из ограничений этого плагина EGTF QT5 ..) вы можете помочь мне с примером? (я не мог найти их), и насколько сложно преобразовать мое приложение в openGL? (у него очень простой gui) – Alex

+0

Нет кода OpenGL. Вы используете код Qt так же, как и на X11. Используйте QLabel для установки QPixmap с правильно преобразованными данными, поступающими с устройства. OpenGL используется прозрачно Qt. Или лучше переместить данные в QML и реализовать интерфейс в QML: снова нет кода OpenGL. –

+0

, так что я просто беру свое приложение qt4 + небольшие изменения (изменения заголовков), и все это должно работать? как я могу использовать этот «плагин qt5 egfl»? извините за тупые вопросы .. – Alex