XPresent в пользовательском приложении, запускаемом с помощью менеджера композиции.Linux

Ответить Пред. темаСлед. тема
Anonymous
 XPresent в пользовательском приложении, запускаемом с помощью менеджера композиции.

Сообщение Anonymous »

У меня есть интерактивное графическое приложение, работающее на сервере X11. Графический вывод может быть создан с помощью средств программного рендеринга (обновление буфера пикселей с помощью ЦП), а также с помощью OpenGL.
В настоящее время большинство настольных систем X11 используют менеджер композитинга. . Поэтому я решил создать буфер пикселей вручную, передавая выходные данные на сервер X11 с помощью xcb_put_image. Теперь мне нужен лучший контроль синхронизации с обновлением монитора.
Я думаю использовать расширение XPresent для протокола X11. Стратегия заключается в сокращении энергопотребления. Я хочу:

Код: Выделить всё

1. get an event that signals that compositing manager,
or X11 server has finished syncing with a monitor scanout.
2. do some computations and update pixel buffer.
3. submit pixel buffer to the X server
4. wait/sleep until next event
Вопрос
Если я предоставлю пиксельный буфер с помощью функции XPresentPixmap, будет ли он воспроизводиться хорошо с менеджером по композитингу? Я имею в виду, можно ли пользовательскому приложению использовать эту функцию? Получу ли я правильные события Notify?
Может быть, есть современный способ получать уведомления от X11/менеджера композитинга о представлении изображения в отношении обновления монитора?На данный момент я использую блокирующий epoll, который обрабатывает все события/сообщения/сигналы X11 и тому подобное. Я предпочитаю оставаться с epoll.

Подробнее здесь: https://stackoverflow.com/questions/790 ... ng-manager
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «Linux»