Hi, Fabio.
Unfortunately, I haven't time for this at all.
On 03/21/2016 12:59 AM, Fabio Fantoni wrote:
I unfortunately had short time also this weekend.
I tried to search a more efficient way to limit fps send to spice
(instead of adding another buffer like xspice) and probably I found
something about increase delay with "wl_event_source_timer_update", I
tried to increased delay set to time_start in
spice_output_start_repaint_loop function but the fps are still up near
1000.
I checked in rdp compositor and seems that delay is in
rdp_output_repaint instead of rdp_output_start_repaint_loop:
"wl_event_source_timer_update(output->finish_frame_timer, 16);"
I suppose that now in spice compositor there a delay only at the loop
starts and/or "b->core->timer_start (output->wakeup_timer, 1);" in
"on_wakeup" (if is this the 1 ms delay will explain the actual fps
near to 1000)
The reason of such behavior is next. The weston always sends to spice
renderer the damage equivalent to full screen. It always thinks that
screen updates fully and on each tick. Adding
pixman_region32_subtract(&ec->primary_plane.damage,
&ec->primary_plane.damage, damage);
to the end of repaint function will resolve this issue, but also there
no output to spice client. And now I don't know why.
Can someone tell me if my assumptions are right and if right what is
the better way to add a delay, using it for limit fps and make it
settable (for example max fps minimum to 10, maximum to 100 and
default to 30) without negative effects please?
I also tried to enable a weston debug to understand something faster
and use it as help in some fast tests, I tried with a fast google
search founding only WAYLAND_DEBUG=1 but seems that weston debug
output is partial or missed, is there another way?
I also found a "#define DEBUG 2" in compositor-spice-conf.h, this I
suppose should force weston debug level using spice compositor (with
COMPOSITOR_SPICE_CONF_H) but I did a grep without finding something
using it, can someone help me to understand please?
is the file compositor-spice-conf.h needed or can be removed? (seem
used only for change debug and set spice compositor version but with a
grep version seems unused and I suppose if will be needed can be
setted always and in compositor-spice.c instead)
This is another piece of crap, left from my old code. I think, it can be
removed in case the success build.
For any developer reading this thread for the first time, here the
spice compositor repository: https://github.com/ein-shved/compositor-spice
And here latest patch to make faster see the spice compositor
additions/changes rebased on recently weston upstream:
https://github.com/Fantu/compositor-spice/commit/3a75bb84da4650dd186f3f025c3640a65600bc6d
- https://github.com/Fantu/compositor-spice/commits/rebase/spice-master
Thanks for any reply and sorry for my bad english.
I will let you know then I learn or do something new.
--
Kind Regards,
Yury Shvedov
_______________________________________________
wayland-devel mailing list
[email protected]
https://lists.freedesktop.org/mailman/listinfo/wayland-devel