On Thu, Jun 29, 2017 at 01:58:07PM +0200, Victor Toso wrote: > Hi, > > On Thu, Jun 29, 2017 at 10:59:16AM +0200, Pavel Grunt wrote: > > On Wed, 2017-06-28 at 14:43 +0200, Victor Toso wrote: > > > From: Victor Toso <me@xxxxxxxxxxxxxx> > > > > > > The Playbin can provide the full pipeline which reduces the > > > overall maintenance in the code as we don't need to track which > > > decoder can work with our stream type. > > > > > > We need to maintain the GstCaps per SPICE_VIDEO_CODEC_TYPE in order > > > to > > > tell Playbin the type of data we expect. This much should be covered > > > by spice-protocol and very likely we will need to extend it in the > > > future to allow more settings that might not possible to verify at > > > runtime. > > > > > > This patch keeps previous code for compatibility reasons. > > > > > > Note that we have to wait Playbin to emit "source-setup" in order to > > > configure GstAppSrc with the capabilities of input stream. If in the > > > unlikely event of frames arriving while GstAppSrc is not setup, we > > > will drop those frames. > > > > > > Signed-off-by: Victor Toso <victortoso@xxxxxxxxxx> > > > Signed-off-by: Victor Toso <me@xxxxxxxxxxxxxx> > > > --- > > > src/channel-display-gst.c | 99 > > > ++++++++++++++++++++++++++++++++++++++++++++++- > > > 1 file changed, 97 insertions(+), 2 deletions(-) > > > > > > diff --git a/src/channel-display-gst.c b/src/channel-display-gst.c > > > index 1b40002..df58de3 100644 > > > --- a/src/channel-display-gst.c > > > +++ b/src/channel-display-gst.c > > > @@ -50,6 +50,9 @@ typedef struct SpiceGstDecoder { > > > guint timer_id; > > > } SpiceGstDecoder; > > > > > > +/* FIXME: With gstreamer version 1.9.0 and higher, we are using > > > playbin to > > > + * create the pipeline for us and for that reason we don't need to > > > keep track of > > > + * decoder's name anymore. */ > > > static struct { > > > const gchar *dec_name; > > > const gchar *dec_caps; > > > @@ -83,6 +86,21 @@ G_STATIC_ASSERT(G_N_ELEMENTS(gst_opts) <= > > > SPICE_VIDEO_CODEC_TYPE_ENUM_END); > > > #define VALID_VIDEO_CODEC_TYPE(codec) \ > > > (codec > 0 && codec < G_N_ELEMENTS(gst_opts)) > > > > > > +typedef enum { > > > + GST_PLAY_FLAG_VIDEO = (1 << 0), > > > + GST_PLAY_FLAG_AUDIO = (1 << 1), > > > + GST_PLAY_FLAG_TEXT = (1 << 2), > > > + GST_PLAY_FLAG_VIS = (1 << 3), > > > + GST_PLAY_FLAG_SOFT_VOLUME = (1 << 4), > > > + GST_PLAY_FLAG_NATIVE_AUDIO = (1 << 5), > > > + GST_PLAY_FLAG_NATIVE_VIDEO = (1 << 6), > > > + GST_PLAY_FLAG_DOWNLOAD = (1 << 7), > > > + GST_PLAY_FLAG_BUFFERING = (1 << 8), > > > + GST_PLAY_FLAG_DEINTERLACE = (1 << 9), > > > + GST_PLAY_FLAG_SOFT_COLORBALANCE = (1 << 10), > > > + GST_PLAY_FLAG_FORCE_FILTERS = (1 << 11), > > > +} GstPlayFlags; > > > > It can cause problems if gstreamer exports, please give them a SPICE > > prefix > > "Thanks for the bug report, but we don't export plugin headers, sorry. > > You can copy and paste these into your code, or use API like > gst_util_set_object_arg() so you can use string nicks." > > So, it should never happen. Source: > https://bugzilla.gnome.org/show_bug.cgi?id=784279 I'd add a bug reference before the enum so that people know why you copied and pasted this. Christophe
Attachment:
signature.asc
Description: PGP signature
_______________________________________________ Spice-devel mailing list Spice-devel@xxxxxxxxxxxxxxxxxxxxx https://lists.freedesktop.org/mailman/listinfo/spice-devel