[Spice-devel] [PATCH] Add the ability to specify Spice video codecs.

Victor Toso lists at victortoso.com
Thu Mar 31 15:04:02 UTC 2016


Hi,

On Thu, Mar 31, 2016 at 12:37:31PM +0200, Fabio Fantoni wrote:
> Il 31/03/2016 12:21, Victor Toso ha scritto:
> > From: Jeremy White <jwhite at codeweavers.com>
> >
> > This patch requires the patch series provided by Francois Gouget
> > which add gstreamer support to Spice.
> >
> > It also should finally include the fix that Fabio keeps pointing out.
>
> If you mean me (I not remember other Fabio in this m.l.)

Jeremy did, long time ago. Sorry for the confusion

> I pinged many
> time the lz4 patch instead, now on my servers I use this for example:
> https://github.com/Fantu/qemu/commit/97f899344ccce288a164785c1bf026003c1c3a6a
> (is the patch from lz4 support author plus a version check fix)

I don't remember exactly why lz4 patches did not land upstream. I'll
try to check it later

> But also this patch will be useful when gstreamer patches will be
> applied upstream.
> In any case qemu patches I think should be sended also to qemu-devel.

I agree but gstreamer patches should land in spice first, I think.
I'm playing with it, I hope to give some feedback again soon to the
client side at least.

Cheers!
  toso

>
> >
> > Signed-off-by: Jeremy White <jwhite at codeweavers.com>
> > ---
> >  qemu-options.hx |  8 ++++++++
> >  ui/spice-core.c | 17 +++++++++++++++++
> >  2 files changed, 25 insertions(+)
> >
> > diff --git a/qemu-options.hx b/qemu-options.hx
> > index a770086..596c391 100644
> > --- a/qemu-options.hx
> > +++ b/qemu-options.hx
> > @@ -1050,6 +1050,7 @@ DEF("spice", HAS_ARG, QEMU_OPTION_spice,
> >      "       [,jpeg-wan-compression=[auto|never|always]]\n"
> >      "       [,zlib-glz-wan-compression=[auto|never|always]]\n"
> >      "       [,streaming-video=[off|all|filter]][,disable-copy-paste]\n"
> > +    "       [,video-codecs=<encoder1>:<codec1>[;<encoder2>:<codec2>]]\n"
> >      "       [,disable-agent-file-xfer][,agent-mouse=[on|off]]\n"
> >      "       [,playback-compression=[on|off]][,seamless-migration=[on|off]]\n"
> >      "       [,gl=[on|off]]\n"
> > @@ -1135,6 +1136,13 @@ Default is auto.
> >  @item streaming-video=[off|all|filter]
> >  Configure video stream detection.  Default is filter.
> >  
> > + at item video-codecs=encoder:codec[;encoder2:codec2]
> > +Configure what video codecs to use.  It is a semi colon separated
> > +list of encoder/codec pairs to try, in preference order.
> > +An encoder tyep of 'spice' selects built in codecs.  An encoder
> > +of 'gstreamer' indicates gstreamer.  The codec is the type
> > +of encoder; e.g. mjpeg, vp8, etc.  Default is spice:mjpeg.
> > +
> >  @item agent-mouse=[on|off]
> >  Enable/disable passing mouse events via vdagent.  Default is on.
> >  
> > diff --git a/ui/spice-core.c b/ui/spice-core.c
> > index 61db3c1..b5bb6d4 100644
> > --- a/ui/spice-core.c
> > +++ b/ui/spice-core.c
> > @@ -489,6 +489,9 @@ static QemuOptsList qemu_spice_opts = {
> >              .name = "streaming-video",
> >              .type = QEMU_OPT_STRING,
> >          },{
> > +            .name = "video-codecs",
> > +            .type = QEMU_OPT_STRING,
> > +        },{
> >              .name = "agent-mouse",
> >              .type = QEMU_OPT_BOOL,
> >          },{
> > @@ -788,6 +791,20 @@ void qemu_spice_init(void)
> >          spice_server_set_streaming_video(spice_server, SPICE_STREAM_VIDEO_OFF);
> >      }
> >  
> > +    str = qemu_opt_get(opts, "video-codecs");
> > +    if (str) {
> > +#if SPICE_SERVER_VERSION >= 0x000d01
> > +        if (spice_server_set_video_codecs(spice_server, str)) {
> > +            error_report("Invalid video codecs.");
> > +            exit(1);
> > +        }
> > +#else
> > +        error_report("this qemu build does not support the "
> > +                     "\"video-codecs\" option");
> > +        exit(1);
> > +#endif
> > +    }
> > +
> >      spice_server_set_agent_mouse
> >          (spice_server, qemu_opt_get_bool(opts, "agent-mouse", 1));
> >      spice_server_set_playback_compression
> 
> 



> _______________________________________________
> Spice-devel mailing list
> Spice-devel at lists.freedesktop.org
> https://lists.freedesktop.org/mailman/listinfo/spice-devel



More information about the Spice-devel mailing list