diff options
Diffstat (limited to 'src/sydra-rtp.c')
-rw-r--r-- | src/sydra-rtp.c | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/src/sydra-rtp.c b/src/sydra-rtp.c index de65e25..dc6c3c7 100644 --- a/src/sydra-rtp.c +++ b/src/sydra-rtp.c @@ -72,6 +72,18 @@ static gboolean bus_call(GstBus *bus, GstMessage *msg, gpointer data) g_main_loop_quit(loop); break; } + case GST_MESSAGE_APPLICATION: { + log_printf(DEBUG, "Got Application Message!"); + const GstStructure* ms = gst_message_get_structure(msg); + gboolean quit; + gst_structure_get_boolean(ms, "quit", &quit); + if(quit) { + const gchar* reason = gst_structure_get_string (ms, "reason"); + log_printf(NOTICE, "closing due to message: %s", reason); + g_main_loop_quit(loop); + } + break; + } case GST_MESSAGE_INFO: { GError *info; gst_message_parse_info(msg, &info, NULL); |