> > From: Victor Toso <me@xxxxxxxxxxxxxx> > > This way we have a map of the necessary GstCaps to a given > SPICE_VIDEO_CODEC_TYPE. > > This patch is also a preparatory patch to: > > - Identify which GstElements in GstRegistry can handle this GstCaps > > - Use Playbin as wrapper to all elements beside GstAppSrc and > GstAppSink. In this case, we should rely on GstCaps to reduce > typefind errors as we should know what kind of data is expected > > Signed-off-by: Victor Toso <victortoso@xxxxxxxxxx> > Signed-off-by: Victor Toso <me@xxxxxxxxxxxxxx> > --- > src/channel-display-gst.c | 10 +++++----- > 1 file changed, 5 insertions(+), 5 deletions(-) > > diff --git a/src/channel-display-gst.c b/src/channel-display-gst.c > index 8546167..7323ce7 100644 > --- a/src/channel-display-gst.c > +++ b/src/channel-display-gst.c > @@ -62,23 +62,23 @@ static struct { > { "decodebin", "" }, > > /* SPICE_VIDEO_CODEC_TYPE_MJPEG */ > - { "jpegdec", "caps=image/jpeg" }, > + { "jpegdec", "image/jpeg" }, > > /* SPICE_VIDEO_CODEC_TYPE_VP8 > * > * typefind is unable to identify VP8 streams by design. > * See: https://bugzilla.gnome.org/show_bug.cgi?id=756457 > */ > - { "vp8dec", "caps=video/x-vp8" }, > + { "vp8dec", "video/x-vp8" }, > > /* SPICE_VIDEO_CODEC_TYPE_H264 */ > /* We need the caps for Playbin. We could also add > "stream-format=byte-stream" > * as we set that in spice-server but we might want to have support to > * different stream-format */ > - { "h264parse ! avdec_h264", "caps=video/x-h264" }, > + { "h264parse ! avdec_h264", "video/x-h264" }, > > /* SPICE_VIDEO_CODEC_TYPE_VP9 */ > - { "vp9dec", "caps=video/x-vp9" }, > + { "vp9dec", "video/x-vp9" }, > }; > > G_STATIC_ASSERT(G_N_ELEMENTS(gst_opts) <= SPICE_VIDEO_CODEC_TYPE_ENUM_END); > @@ -328,7 +328,7 @@ static gboolean create_pipeline(SpiceGstDecoder *decoder) > * needed by those that follow. > */ > desc = g_strdup_printf("appsrc name=src is-live=true format=time > max-bytes=0 block=true " > - "%s ! %s ! videoconvert ! appsink name=sink " > + "caps=%s ! %s ! videoconvert ! appsink name=sink > " > "caps=video/x-raw,format=BGRx sync=false > drop=false", > gst_opts[opt].dec_caps, gst_opts[opt].dec_name); > SPICE_DEBUG("GStreamer pipeline: %s", desc); This won't work if SPICE_GSTVIDEO_AUTO is defined (so decodebin is used). Replacing gst_opts[opt].dec_caps with gst_opts[decoder->base.codec_type].dec_caps should work. Frediano _______________________________________________ Spice-devel mailing list Spice-devel@xxxxxxxxxxxxxxxxxxxxx https://lists.freedesktop.org/mailman/listinfo/spice-devel