<div dir="ltr">Thanks for the answers!<div><br></div><div>Can i force already existing versions of remote-viewer to use H264 and/or different compression algorithm by changing libspice-server so that it only advertise certain codec/algorithms?</div><div><br></div></div><div class="gmail_extra"><br clear="all"><div><div class="gmail_signature" data-smartmail="gmail_signature"><div dir="ltr">---<br>Armin ranjbar<br><div><br></div></div></div></div>
<br><div class="gmail_quote">On Wed, Aug 2, 2017 at 7:24 PM, Victor Toso <span dir="ltr"><<a href="mailto:victortoso@redhat.com" target="_blank">victortoso@redhat.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Hi Armin,<br>
<br>
Thanks for your questions.<br>
<span class=""><br>
On Wed, Aug 02, 2017 at 06:56:07PM +0430, Armin Ranjbar wrote:<br>
> Hello List,<br>
><br>
> Thanks for the effort on Spice :)<br>
><br>
> given recent changes by Victor, i'm not sure how can i verify that i'm<br>
> actually using Gstreamer to encode or decode the stream:<br>
<br>
</span>Things to consider:<br>
- GStreamer is not default option for encoding<br>
- You have to enable stream encoding [0] as it is disabled by default<br>
- mjpeg is the default encoding/decoding video-codec<br>
<br>
[0] if you use libvirt, you can add streaming mode with:<br>
virsh edit $domain<br>
  <graphics type='spice' autoport='yes'><br>
    <streaming mode='all'/><br>
  </graphics><br>
<span class=""><br>
> 1> how can i make sure that server is using gstreamer to encode the stream?<br>
> setting GST_DEBUG and SPICE_DEBUG i can't see anything gstreamer specific<br>
> in servers logs.<br>
<br>
</span>There are pending work to better configuration in the host for that. The<br>
easiest way is to use spicy and chose a video codec which is not mjpeg<br>
(h264, vp8, vp9); Go to options > preferred video codec type > h264<br>
<br>
This will send a message to the spice server to use h264 instead of<br>
mjpeg and only gstreamer can encode it.<br>
<span class=""><br>
> 2> how can i make sure same thing happens on client side? again with debug<br>
> options, i can see that spicy is streaming using channel-display.c:1840 not<br>
> channel-display-gst.c.<br>
<br>
</span>You can also use mjpeg decoders in GStremear (it actually works well)<br>
but you will need to build spice-gtk with --disable-builtin-mjpeg, so<br>
every new stream will use gstreamer.<br>
<br>
Note that we don't stream all the content all the time. Video streams<br>
start/stop based on detection of regions that have high frequency of<br>
updates, you can check [1] for a better understanding.<br>
<br>
[1] <a href="https://youtu.be/C5ox_M-k63w" rel="noreferrer" target="_blank">https://youtu.be/C5ox_M-k63w</a><br>
<span class=""><br>
><br>
> 3> afaik video encoding and compression selection is for now specific to<br>
> spicy, how can i set these options using remote-viewer?<br>
<br>
</span>The video-codec message is part of spice-protocol and implemented in<br>
spice-gtk. We have an API in spice-gtk which spicy uses but none other<br>
client does at the moment.<br>
<br>
The goal is to automatically detect which video codecs we can hw decode<br>
in the client and send this to spice-server. That is not implemented<br>
yet.<br>
<span class=""><br>
> note that i'm building both spice and spice-gtk from latest git commit,<br>
><br>
> ---<br>
> Armin ranjbar<br>
<br>
</span>Let me know if you have any issues or suggestions!<br>
<br>
Cheers,<br>
    toso<br>
</blockquote></div><br></div>