[Spice-devel] [RFC spice-gtk 0/1] Direct rendering
Snir Sheriber
ssheribe at redhat.com
Tue Mar 13 09:59:25 UTC 2018
Hi,
On 03/13/2018 12:45 AM, Frediano Ziglio wrote:
>> 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?
I mean to a part to a stream that is not from spice-streaming-agent
(i.e. recognized as stream by spice)
>
>> - Does rendering directly from the decoder (channel-element)
>> breaks spice architecture?
> How?
In that it makes the spice-glib\channels part to be aware to
gtk\x\windowing system stuff
>> - 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?
Yes, currently it will just work as it was before - no gstvideoovelay
>
>> I'd be happy to hear more comments, ideas, patches ;)
>>
> I assume resize is not working. Did you try to make it work?
Seems to 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