Wayland presentation extension (video protocol) WIP after RFCv2

Pekka Paalanen ppaalanen at gmail.com
Wed Feb 26 01:30:02 PST 2014


Hi all,

I just wanted to mention where I am with this at the moment, as it
seems like it will be some time before I can come back to this.

The RFCv2 thread started at:
http://lists.freedesktop.org/archives/wayland-devel/2014-January/012988.html

Since then, there has been plenty of discussion, some protocol changes
towards a v3, and I have a WIP implementation. My current work can be
found at
http://cgit.collabora.com/git/user/pq/weston.git/log/?h=presentation-WIP2
for now. When I get back, the branch will be rewritten and/or
abandoned.

The last few patches in the branch make it broken as is, but I got to a
point, where queueing updates works. What's missing is to keep Weston
repainting to ensure that queued updates actually get processed.

The weston-presentation-shm demo has two modes: the feedback mode uses
immediate commits triggered by frame callbacks, and reports
presentation timings. The burst mode queues a lot of frames and then
idles until the queue has drained to the second last update, which has
a presentation feedback request to trigger filling up the queue again.

Thanks to wl_buffer.release events being not sent immediately from
weston, the burst mode client can really sleep for almost a whole
second while animating fluently on screen, assuming that no input or
other events arrive. Literally that means that no protocol traffic
happens between re-fillings of the queue.

I am also considering more additions to the Presentation protocol,
described here:
http://cgit.collabora.com/git/user/pq/weston.git/tree/buffer-queue3.txt?h=buffer-queue-spec

Those will be included somehow in a RFCv3 when I have time to work on
this again.


Thanks,
pq


More information about the wayland-devel mailing list