92b271
diff -ru libcanberra-0.30/src/canberra-gtk-play.c libcanberra-0.30.new/src/canberra-gtk-play.c
92b271
--- libcanberra-0.30/src/canberra-gtk-play.c	2012-09-25 02:21:07.000000000 +0200
92b271
+++ libcanberra-0.30.new/src/canberra-gtk-play.c	2019-01-03 10:01:13.090177362 +0100
92b271
@@ -33,6 +33,7 @@
92b271
 static int ret = 0;
92b271
 static ca_proplist *proplist = NULL;
92b271
 static int n_loops = 1;
92b271
+static gboolean quiet = FALSE;
92b271
 
92b271
 static void callback(ca_context *c, uint32_t id, int error, void *userdata);
92b271
 
92b271
@@ -51,7 +52,8 @@
92b271
         r = ca_context_play_full(ca_gtk_context_get(), 1, proplist, callback, NULL);
92b271
 
92b271
         if (r < 0) {
92b271
-                g_printerr("Failed to play sound: %s\n", ca_strerror(r));
92b271
+                if (!quiet)
92b271
+                        g_printerr("Failed to play sound: %s\n", ca_strerror(r));
92b271
                 ret = 1;
92b271
                 gtk_main_quit();
92b271
         }
92b271
@@ -62,7 +64,8 @@
92b271
 static void callback(ca_context *c, uint32_t id, int error, void *userdata) {
92b271
 
92b271
         if (error < 0) {
92b271
-                g_printerr("Failed to play sound (callback): %s\n", ca_strerror(error));
92b271
+                if (!quiet)
92b271
+                        g_printerr("Failed to play sound (callback): %s\n", ca_strerror(error));
92b271
                 ret = 1;
92b271
 
92b271
         } else if (n_loops > 1) {
92b271
@@ -128,6 +131,7 @@
92b271
                 { "loop",          'l', 0, G_OPTION_ARG_INT,      &n_loops,                  "Loop how many times (detault: 1)", "INTEGER" },
92b271
                 { "volume",        'V', 0, G_OPTION_ARG_STRING,   &volume,                   "A floating point dB value for the sample volume (ex: 0.0)", "STRING" },
92b271
                 { "property",      0,   0, G_OPTION_ARG_CALLBACK, (void*) property_callback, "An arbitrary property", "STRING" },
92b271
+                { "quiet",         'q', 0, G_OPTION_ARG_NONE,     &quiet,                    "Don't print error messages", NULL },
92b271
                 { NULL, 0, 0, 0, NULL, NULL, NULL }
92b271
         };
92b271
 
92b271
@@ -154,7 +158,8 @@
92b271
         }
92b271
 
92b271
         if (!event_id && !filename) {
92b271
-                g_printerr("No event id or file specified.\n");
92b271
+                if (!quiet)
92b271
+                        g_printerr("No event id or file specified.\n");
92b271
                 return 1;
92b271
         }
92b271
 
92b271
@@ -182,7 +187,8 @@
92b271
         r = ca_context_play_full(ca_gtk_context_get(), 1, proplist, callback, NULL);
92b271
 
92b271
         if (r < 0) {
92b271
-                g_printerr("Failed to play sound: %s\n", ca_strerror(r));
92b271
+                if (!quiet)
92b271
+                        g_printerr("Failed to play sound: %s\n", ca_strerror(r));
92b271
                 ret = 1;
92b271
                 goto finish;
92b271
         }