[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