From: Jeremy White <jwhite@xxxxxxxxxxxxxxx> 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. Signed-off-by: Jeremy White <jwhite@xxxxxxxxxxxxxxx> --- 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. +@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 -- 2.5.5 _______________________________________________ Spice-devel mailing list Spice-devel@xxxxxxxxxxxxxxxxxxxxx https://lists.freedesktop.org/mailman/listinfo/spice-devel