chiark / gitweb /
server/gstdecode.c: Report more useful messages for missing plugins.
authorMark Wooding <mdw@distorted.org.uk>
Tue, 10 Jul 2018 10:26:56 +0000 (11:26 +0100)
committerMark Wooding <mdw@distorted.org.uk>
Tue, 10 Jul 2018 11:11:11 +0000 (12:11 +0100)
server/gstdecode.c

index 0ebe83a0323d2f5d7581f92ca0ca00b92c0986f9..7644475d76b176bdf284957d77cece0914b99ef4 100644 (file)
@@ -215,6 +215,10 @@ static void prepare_pipeline(void)
   GstCaps *caps;
   const struct stream_header *fmt = &config->sample_format;
 
+  if(!source || !decode || !resample || !convert || !sink)
+    disorder_fatal(0, "failed to create GStreamer elements: "
+                   "need base and good plugins");
+
 #ifndef HAVE_GSTREAMER_0_10
   static const struct fmttab {
     const char *fmt;
@@ -291,6 +295,9 @@ static void prepare_pipeline(void)
    */
   if(mode != OFF) {
     gain = gst_element_factory_make("rgvolume", "gain");
+    if(!gain)
+      disorder_fatal(0, "failed to create GStreamer elements: "
+                     "need base and good plugins");
     g_object_set(gain,
                  "album-mode", mode == ALBUM,
                  "fallback-gain", fallback,