[Spice-devel] [PATCH] spicy: add gstreamer options to command line

Pavel Grunt pgrunt at redhat.com
Tue May 23 13:33:59 UTC 2017


On Wed, 2017-05-17 at 14:12 +0200, Victor Toso wrote:
> Hi,
> 
> On Wed, May 17, 2017 at 01:59:44PM +0200, Pavel Grunt wrote:
> > On Wed, 2017-05-17 at 13:51 +0200, Victor Toso wrote:
> > > From: Victor Toso <me at victortoso.com>
> > > 
> > > So we can see all available options with spicy --help-gst and
> > > set
> > > them
> > > as command line argument.
> > 
> > Do you have an usage example?
> 
> Sure, for me the most interesting ones are --gst-debug-level=4
> (which
> helps me to know which elements are being used in our pipelines) and
> often I do --gst-plugin-path=/usr/lib64/gstreamer-1.0 to load
> plugins
> from my system instead of JHBuild environment.
> 
> Both of them are available using environment variables but command
> line
> support is easier to set (even more in windows)
> 
> All options in --help-gst are:
>  --gst-version                    Print the GStreamer version
>  --gst-fatal-warnings             Make all warnings fatal
>  --gst-debug-help                 Print available debug categories
> and exit
>  --gst-debug-level=LEVEL          Default debug level from 1 (only
> error) to 9 (anything) or 0 for no output
>  --gst-debug=LIST                 Comma-separated list of
> category_name:level pairs to set specific levels for the individual
> categories. Example: GST_AUTOPLUG:5,GST_ELEMENT_*:3
>  --gst-debug-no-color             Disable colored debugging output
>  --gst-debug-color-mode           Changes coloring mode of the debug
> log. Possible modes: off, on, disable, auto, unix
>  --gst-debug-disable              Disable debugging
>  --gst-plugin-spew                Enable verbose plugin loading
> diagnostics
>  --gst-plugin-path=PATHS          Colon-separated paths containing
> plugins
>  --gst-plugin-load=PLUGINS        Comma-separated list of plugins to
> preload in addition to the list stored in environment variable
> GST_PLUGIN_PATH
>  --gst-disable-segtrap            Disable trapping of segmentation
> faults during plugin loading
>  --gst-disable-registry-update    Disable updating the registry
>  --gst-disable-registry-fork      Disable spawning a helper process
> while scanning the registry
> 
> Cheers,
> 
Thanks for the explanation,

Ack

Pavel


> 
> > 
> > Thanks,
> > Pavel
> > 
> > > 
> > > Signed-off-by: Victor Toso <victortoso at redhat.com>
> > > ---
> > >  tools/Makefile.am | 4 ++++
> > >  tools/spicy.c     | 9 +++++++++
> > >  2 files changed, 13 insertions(+)
> > > 
> > > diff --git a/tools/Makefile.am b/tools/Makefile.am
> > > index c80d34a..1e3deed 100644
> > > --- a/tools/Makefile.am
> > > +++ b/tools/Makefile.am
> > > @@ -29,11 +29,15 @@ spicy_LDADD =				
> > > \
> > >  	$(top_builddir)/src/libspice-client-gtk-3.0.la	\
> > >  	$(top_builddir)/src/libspice-client-glib-2.0.la	
> > > \
> > >  	$(GTK_LIBS) \
> > > +	$(GSTAUDIO_LIBS) \
> > > +	$(GSTVIDEO_LIBS) \
> > >  	$(NULL)
> > >  
> > >  # FIXME: GtkAction and lots of GtkUIManager APIs are deprecated
> > >  spicy_CPPFLAGS =			\
> > >  	$(TOOLS_CPPFLAGS)		\
> > > +	$(GSTAUDIO_CFLAGS)		\
> > > +	$(GSTVIDEO_CFLAGS)		\
> > >  	-DSPICE_DISABLE_DEPRECATED	\
> > >  	-Wno-deprecated-declarations	\
> > >  	$(NULL)
> > > diff --git a/tools/spicy.c b/tools/spicy.c
> > > index eeb640d..40cd6b3 100644
> > > --- a/tools/spicy.c
> > > +++ b/tools/spicy.c
> > > @@ -37,6 +37,9 @@
> > >  #include "usb-device-widget.h"
> > >  
> > >  #include "spicy-connect.h"
> > > +#if HAVE_GSTAUDIO || HAVE_GSTVIDEO
> > > +#include <gst/gst.h>
> > > +#endif
> > >  
> > >  typedef struct spice_connection spice_connection;
> > >  
> > > @@ -1995,6 +1998,9 @@ int main(int argc, char *argv[])
> > >  
> > >      /* parse opts */
> > >      gtk_init(&argc, &argv);
> > > +#if HAVE_GSTAUDIO || HAVE_GSTVIDEO
> > > +    gst_init(&argc, &argv);
> > > +#endif
> > >      context = g_option_context_new("- spice client test
> > > application");
> > >      g_option_context_set_summary(context, "Gtk+ test client to
> > > connect to Spice servers.");
> > >      g_option_context_set_description(context, "Report bugs to "
> > > PACKAGE_BUGREPORT ".");
> > > @@ -2002,6 +2008,9 @@ int main(int argc, char *argv[])
> > >      g_option_context_set_main_group(context,
> > > spice_cmdline_get_option_group());
> > >      g_option_context_add_main_entries(context, cmd_entries,
> > > NULL);
> > >      g_option_context_add_group(context,
> > > gtk_get_option_group(TRUE));
> > > +#if HAVE_GSTAUDIO || HAVE_GSTVIDEO
> > > +    g_option_context_add_group(context,
> > > gst_init_get_option_group());
> > > +#endif
> > >      if (!g_option_context_parse (context, &argc, &argv,
> > > &error)) {
> > >          g_print("option parsing failed: %s\n", error->message);
> > >          exit(1);


More information about the Spice-devel mailing list