Hi Francois, I tried your patches with a small patch for the replay utility. http://paste.fedoraproject.org/313167/33783291/ I used an old recording of a Win7 guest a tried to replay it: ./spice-server-replay -c "spicy -h localhost -p 6000 2>/tmp/log.txt" -p 6000 /tmp/win7record.spice -S 2 -v "gstreamer:mjpeg" And it crashes: http://paste.fedoraproject.org/313166/33782911/ With "gstreamer:vp8" it hangs With "gstreamer:h264" it hangs after a while and I see a few of: ((null):24420): Spice-Warning **: gstreamer-encoder.c:726:map_format: The 8 format has not been tested yet With "spice:mjpeg" it works as expected Unsupported "spice:h264", "spice:vp8" crashes too. Maybe my usage is wrong and/or the crashes are related to "timing" of the replay utility. Have you seen the crash before? Thanks, Pavel On Mon, 2016-01-18 at 12:03 +0100, Francois Gouget wrote: > The source changed so here is the new revision of this patchset. > > This patch series adds support for using GStreamer to encode and > decode > the video streams, adding support for VP8 and h264 codecs. As before > the > patches can also be grabbed from the repositories below: > > spice: https://github.com/fgouget/spice > spice-gtk: https://github.com/fgouget/spice-gtk > xf86-video-qxl: https://github.com/fgouget/xf86-video-qxl > spice-protocol: https://github.com/fgouget/spice-protocol > > (there's also 'extras' branches with more experimental/future > patches > for the curious) > > > Changes from v8: > * Rebased on the current source. > * Adjusted the Spice protocol version requirement. > > Changes from v7: > * When the client has support for GStreamer video codecs it now > checks the presence of each supported codec before advertising > support > for it. > > Changes from v6: > * configure.ac uses the new m4 macros to check for GStreamer support > and the presence of the needed plugins. > * It separates adding checks for the client codec support from > specifying which codec to use in the server and from adding VP8 > support. > >
From 407f7268de18d92880cfe7deee9223d0e8c16c9e Mon Sep 17 00:00:00 2001 From: Pavel Grunt <pgrunt@xxxxxxxxxx> Date: Thu, 21 Jan 2016 12:49:21 +0100 Subject: [PATCH spice] replay: Add an option to change video codec --- server/tests/replay.c | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/server/tests/replay.c b/server/tests/replay.c index 2af9481..30fd47c 100644 --- a/server/tests/replay.c +++ b/server/tests/replay.c @@ -287,7 +287,7 @@ int main(int argc, char **argv) { GError *error = NULL; GOptionContext *context = NULL; - gchar *client = NULL, **file = NULL; + gchar *client = NULL, *codecs = NULL, **file = NULL; gint port = 5000, compression = SPICE_IMAGE_COMPRESSION_AUTO_GLZ; gint streaming = SPICE_STREAM_VIDEO_FILTER; gboolean wait = FALSE; @@ -297,6 +297,7 @@ int main(int argc, char **argv) { "client", 'c', 0, G_OPTION_ARG_STRING, &client, "Client", "CMD" }, { "compression", 'C', 0, G_OPTION_ARG_INT, &compression, "Compression (default 2)", "INT" }, { "streaming", 'S', 0, G_OPTION_ARG_INT, &streaming, "Streaming (default 3)", "INT" }, + { "video-codecs", 'v', 0, G_OPTION_ARG_STRING, &codecs, "Video codecs", "STRING" }, { "port", 'p', 0, G_OPTION_ARG_INT, &port, "Server port (default 5000)", "PORT" }, { "wait", 'w', 0, G_OPTION_ARG_NONE, &wait, "Wait for client", NULL }, { "slow", 's', 0, G_OPTION_ARG_INT, &slow, "Slow down replay. Delays USEC microseconds before each command", "USEC" }, @@ -377,6 +378,14 @@ int main(int argc, char **argv) server = spice_server_new(); spice_server_set_image_compression(server, compression); spice_server_set_streaming_video(server, streaming); + + if (codecs != NULL) { + if (spice_server_set_video_codecs(server, codecs) != 0) { + g_warning("could not set codecs: %s", codecs); + } + g_free(codecs); + } + spice_server_set_port(server, port); spice_server_set_noauth(server); -- 2.5.0
_______________________________________________ Spice-devel mailing list Spice-devel@xxxxxxxxxxxxxxxxxxxxx http://lists.freedesktop.org/mailman/listinfo/spice-devel