[Spice-devel] [RFC spice-gtk 0/1] Direct rendering

Frediano Ziglio fziglio at redhat.com
Mon Mar 12 22:45:51 UTC 2018


> 
> This patch utilize the GstVideoOverlay interface when the
> client is running under x window system and it receives a
> full-screen stream that is decoded using gstreamer (gst =>
> 1.9.0)
> 
> Some notes
> - It currently checks for full screen but probably a msg
>   says it is streaming mode would make more sense (is it?
>   i think frediano has a patch for that)

Yes, there's a new flag in the surface creation message,
SPICE_SURFACE_FLAGS_STREAMING_MODE.
On "normal" display channel is possible that the full
screen is streamed but for instance menus are send with separate
messages causing them to be invisible.

> - Would it be possible to avoid spice rendering if it is not
>   a full screen?

What do you mean?

> - Does rendering directly from the decoder (channel-element)
>   breaks spice architecture?

How?

> - This currently seems stable and working well, it decreases
>   cpu (no pixman-cairo stuff) mainly in high resolutions but
>   needs to be tested with different plugins, windows...
> - Not sure what is needed in order to make it to support
>   multi-monitor in the future.

Nothing I assume, I don't see why should not work, just needs
testing.

> - Currently works only with x (xid is transferred from
>   spice-widget to spice-gst-decoder which sets the overlay)
> 

What happens on Wayland? Just don't work the optimization or nothing?

> I'd be happy to hear more comments, ideas, patches ;)
> 

I assume resize is not working. Did you try to make it work?

> Thanks, Snir.
> 
> 
> Snir Sheriber (1):
>   Gstreamer: Use GstVideoOverlay if possible
> 
>  src/channel-display-gst.c | 71
>  +++++++++++++++++++++++++++++++++++++----------
>  src/channel-display.c     | 54 +++++++++++++++++++++++++++++++++++
>  src/spice-widget.c        | 46 ++++++++++++++++++++++++++++++
>  3 files changed, 156 insertions(+), 15 deletions(-)
> 

Frediano


More information about the Spice-devel mailing list