From 3208d8dca7653aa6c3f362262a9dc691244b2787 Mon Sep 17 00:00:00 2001 From: Wim Taymans Date: Mon, 26 May 2008 17:52:21 +0000 Subject: [PATCH] ext/jack/gstjackaudiosink.c: Include the element name in the port name to avoid duplicate port names. Original commit message from CVS: * ext/jack/gstjackaudiosink.c: (gst_jack_audio_sink_allocate_channels): Include the element name in the port name to avoid duplicate port names. --- ChangeLog | 6 ++++++ ext/jack/gstjackaudiosink.c | 13 ++++++++----- 2 files changed, 14 insertions(+), 5 deletions(-) diff --git a/ChangeLog b/ChangeLog index 81c4bbc740..2f20633b84 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,9 @@ +2008-05-26 Wim Taymans + + * ext/jack/gstjackaudiosink.c: + (gst_jack_audio_sink_allocate_channels): + Include the element name in the port name to avoid duplicate port names. + 2008-05-26 Sebastian Dröge * gst/interleave/deinterleave.c: diff --git a/ext/jack/gstjackaudiosink.c b/ext/jack/gstjackaudiosink.c index 5223e4d00a..27b0979292 100644 --- a/ext/jack/gstjackaudiosink.c +++ b/ext/jack/gstjackaudiosink.c @@ -29,7 +29,8 @@ * A Sink that outputs data to Jack ports. * * - * It will create N Jack ports named out_<num> where <num> is starting from 1. + * It will create N Jack ports named out_<name>_<num> where + * <name> is the element name and <num> is starting from 1. * Each port corresponds to a gstreamer channel. * * @@ -142,11 +143,13 @@ gst_jack_audio_sink_allocate_channels (GstJackAudioSink * sink, gint channels) while (sink->port_count < channels) { gchar *name; - /* port names start from 1 */ - name = g_strdup_printf ("out_%d", sink->port_count + 1); + /* port names start from 1 and are local to the element */ + name = + g_strdup_printf ("out_%s_%d", GST_ELEMENT_NAME (sink), + sink->port_count + 1); sink->ports[sink->port_count] = - jack_port_register (client, name, - JACK_DEFAULT_AUDIO_TYPE, JackPortIsOutput, 0); + jack_port_register (client, name, JACK_DEFAULT_AUDIO_TYPE, + JackPortIsOutput, 0); if (sink->ports[sink->port_count] == NULL) return FALSE;