mirror of
https://gitlab.freedesktop.org/gstreamer/gstreamer.git
synced 2024-11-27 04:01:08 +00:00
another batch of connect->link fixes please let me know about issues and please refrain of making them yourself, so t...
Original commit message from CVS: another batch of connect->link fixes please let me know about issues and please refrain of making them yourself, so that I don't spend double the time resolving conflicts
This commit is contained in:
parent
562e0b2526
commit
424db0d3ae
40 changed files with 269 additions and 268 deletions
2
common
2
common
|
@ -1 +1 @@
|
|||
Subproject commit 86c508421de359776c4c2cb411a78c729330a250
|
||||
Subproject commit 2a013c06fe9bf1379966cd12e6bf8c30915c5f12
|
|
@ -922,6 +922,9 @@ if test "x$USE_ATOMIC_H" = xyes; then
|
|||
AC_DEFINE(HAVE_ATOMIC_H, 1, [Define if atomic.h header file is available])
|
||||
fi
|
||||
|
||||
# do not use deprecated stuff
|
||||
GST_CFLAGS="$GST_CFLAGS -DGST_DISABLE_DEPRECATED"
|
||||
|
||||
if test "x$USE_DEBUG" = xyes; then
|
||||
GST_CFLAGS="$GST_CFLAGS -g"
|
||||
fi
|
||||
|
|
|
@ -383,7 +383,7 @@ cb_parse_clicked (GtkButton *button, gpointer *user_data)
|
|||
gst_element_add_pad (fd->input, src_pad);
|
||||
gst_element_add_pad (fd->output, sink_pad);
|
||||
|
||||
gst_element_connect_many (fd->input, fd->filter, fd->output, NULL);
|
||||
gst_element_link_many (fd->input, fd->filter, fd->output, NULL);
|
||||
|
||||
if (fd->pipe_string) g_free (fd->pipe_string);
|
||||
fd->pipe_string = g_strdup_printf ("%s ! %s ! %s", fd->input_pipe,
|
||||
|
|
|
@ -112,15 +112,16 @@ get_track_info (GstElement *cdparanoia)
|
|||
}
|
||||
|
||||
if (res) {
|
||||
/* for the first track (i==0) we wait until we have the
|
||||
/* for the first track (i==0) we wait until we have the
|
||||
* time of the next track */
|
||||
if (i > 0) {
|
||||
gint64 length = time - time_count;
|
||||
|
||||
g_print ("track %d: %lld:%02lld -> %lld:%02lld, length: %lld:%02lld\n", i-1,
|
||||
time_count/60, time_count%60,
|
||||
time/60, time%60,
|
||||
length/60, length%60);
|
||||
g_print ("track %d: %lld:%02lld -> %lld:%02lld, length: %lld:%02lld\n",
|
||||
i-1,
|
||||
time_count / 60, time_count % 60,
|
||||
time / 60, time % 60,
|
||||
length / 60, length % 60);
|
||||
}
|
||||
}
|
||||
else {
|
||||
|
@ -142,7 +143,7 @@ main (int argc, char **argv)
|
|||
GstEvent *event;
|
||||
gint count;
|
||||
gboolean res;
|
||||
|
||||
|
||||
gst_init (&argc, &argv);
|
||||
|
||||
pipeline = gst_pipeline_new ("pipeline");
|
||||
|
@ -157,11 +158,11 @@ main (int argc, char **argv)
|
|||
gst_bin_add (GST_BIN (pipeline), cdparanoia);
|
||||
gst_bin_add (GST_BIN (pipeline), osssink);
|
||||
|
||||
gst_element_connect_pads (cdparanoia, "src", osssink, "sink");
|
||||
gst_element_link_pads (cdparanoia, "src", osssink, "sink");
|
||||
|
||||
g_signal_connect (G_OBJECT (pipeline), "deep_notify",
|
||||
g_signal_connect (G_OBJECT (pipeline), "deep_notify",
|
||||
G_CALLBACK (gst_element_default_deep_notify), NULL);
|
||||
|
||||
|
||||
gst_element_set_state (pipeline, GST_STATE_PAUSED);
|
||||
|
||||
/* now we go into probe mode */
|
||||
|
@ -177,7 +178,7 @@ main (int argc, char **argv)
|
|||
/* seek to track3 */
|
||||
event = gst_event_new_seek (track_format |
|
||||
GST_SEEK_METHOD_SET |
|
||||
GST_SEEK_FLAG_FLUSH,
|
||||
GST_SEEK_FLAG_FLUSH,
|
||||
3);
|
||||
|
||||
res = gst_pad_send_event (pad, event);
|
||||
|
@ -198,7 +199,7 @@ main (int argc, char **argv)
|
|||
/* seek to some seconds */
|
||||
event = gst_event_new_segment_seek (GST_FORMAT_TIME |
|
||||
GST_SEEK_METHOD_SET |
|
||||
GST_SEEK_FLAG_FLUSH,
|
||||
GST_SEEK_FLAG_FLUSH,
|
||||
25 * GST_SECOND, 29 * GST_SECOND);
|
||||
res = gst_pad_send_event (pad, event);
|
||||
if (!res)
|
||||
|
|
|
@ -28,17 +28,17 @@ typedef struct
|
|||
const gchar *padname;
|
||||
GstPad *target;
|
||||
GstElement *bin;
|
||||
} dyn_connect;
|
||||
} dyn_link;
|
||||
|
||||
static void
|
||||
dynamic_connect (GstPadTemplate *templ, GstPad *newpad, gpointer data)
|
||||
dynamic_link (GstPadTemplate *templ, GstPad *newpad, gpointer data)
|
||||
{
|
||||
dyn_connect *connect = (dyn_connect *) data;
|
||||
dyn_link *connect = (dyn_link *) data;
|
||||
|
||||
if (!strcmp (gst_pad_get_name (newpad), connect->padname)) {
|
||||
gst_element_set_state (pipeline, GST_STATE_PAUSED);
|
||||
gst_bin_add (GST_BIN (pipeline), connect->bin);
|
||||
gst_pad_connect (newpad, connect->target);
|
||||
gst_pad_link (newpad, connect->target);
|
||||
gst_element_set_state (pipeline, GST_STATE_PLAYING);
|
||||
|
||||
seekable_pads = g_list_prepend (seekable_pads, newpad);
|
||||
|
@ -47,16 +47,16 @@ dynamic_connect (GstPadTemplate *templ, GstPad *newpad, gpointer data)
|
|||
}
|
||||
|
||||
static void
|
||||
setup_dynamic_connection (GstElement *element, const gchar *padname, GstPad *target, GstElement *bin)
|
||||
setup_dynamic_linkion (GstElement *element, const gchar *padname, GstPad *target, GstElement *bin)
|
||||
{
|
||||
dyn_connect *connect;
|
||||
dyn_link *connect;
|
||||
|
||||
connect = g_new0 (dyn_connect, 1);
|
||||
connect = g_new0 (dyn_link, 1);
|
||||
connect->padname = g_strdup (padname);
|
||||
connect->target = target;
|
||||
connect->bin = bin;
|
||||
|
||||
g_signal_connect (G_OBJECT (element), "new_pad", G_CALLBACK (dynamic_connect), connect);
|
||||
g_signal_connect (G_OBJECT (element), "new_pad", G_CALLBACK (dynamic_link), connect);
|
||||
}
|
||||
|
||||
static GstElement*
|
||||
|
@ -79,8 +79,8 @@ make_mod_pipeline (const gchar *location)
|
|||
gst_bin_add (GST_BIN (pipeline), decoder);
|
||||
gst_bin_add (GST_BIN (pipeline), audiosink);
|
||||
|
||||
gst_element_connect (src, decoder);
|
||||
gst_element_connect (decoder, audiosink);
|
||||
gst_element_link (src, decoder);
|
||||
gst_element_link (decoder, audiosink);
|
||||
|
||||
seekable = gst_element_get_pad (decoder, "src");
|
||||
seekable_pads = g_list_prepend (seekable_pads, seekable);
|
||||
|
@ -112,9 +112,9 @@ make_dv_pipeline (const gchar *location)
|
|||
gst_bin_add (GST_BIN (pipeline), audiosink);
|
||||
gst_bin_add (GST_BIN (pipeline), videosink);
|
||||
|
||||
gst_element_connect (src, decoder);
|
||||
gst_element_connect (decoder, audiosink);
|
||||
gst_element_connect (decoder, videosink);
|
||||
gst_element_link (src, decoder);
|
||||
gst_element_link (decoder, audiosink);
|
||||
gst_element_link (decoder, videosink);
|
||||
|
||||
seekable = gst_element_get_pad (decoder, "video");
|
||||
seekable_pads = g_list_prepend (seekable_pads, seekable);
|
||||
|
@ -147,8 +147,8 @@ make_wav_pipeline (const gchar *location)
|
|||
gst_bin_add (GST_BIN (pipeline), decoder);
|
||||
gst_bin_add (GST_BIN (pipeline), audiosink);
|
||||
|
||||
gst_element_connect (src, decoder);
|
||||
gst_element_connect (decoder, audiosink);
|
||||
gst_element_link (src, decoder);
|
||||
gst_element_link (decoder, audiosink);
|
||||
|
||||
seekable = gst_element_get_pad (decoder, "src");
|
||||
seekable_pads = g_list_prepend (seekable_pads, seekable);
|
||||
|
@ -178,8 +178,8 @@ make_flac_pipeline (const gchar *location)
|
|||
gst_bin_add (GST_BIN (pipeline), decoder);
|
||||
gst_bin_add (GST_BIN (pipeline), audiosink);
|
||||
|
||||
gst_element_connect (src, decoder);
|
||||
gst_element_connect (decoder, audiosink);
|
||||
gst_element_link (src, decoder);
|
||||
gst_element_link (decoder, audiosink);
|
||||
|
||||
seekable = gst_element_get_pad (decoder, "src");
|
||||
seekable_pads = g_list_prepend (seekable_pads, seekable);
|
||||
|
@ -209,8 +209,8 @@ make_sid_pipeline (const gchar *location)
|
|||
gst_bin_add (GST_BIN (pipeline), decoder);
|
||||
gst_bin_add (GST_BIN (pipeline), audiosink);
|
||||
|
||||
gst_element_connect (src, decoder);
|
||||
gst_element_connect (decoder, audiosink);
|
||||
gst_element_link (src, decoder);
|
||||
gst_element_link (decoder, audiosink);
|
||||
|
||||
seekable = gst_element_get_pad (decoder, "src");
|
||||
seekable_pads = g_list_prepend (seekable_pads, seekable);
|
||||
|
@ -241,8 +241,8 @@ make_parse_pipeline (const gchar *location)
|
|||
gst_bin_add (GST_BIN (pipeline), parser);
|
||||
gst_bin_add (GST_BIN (pipeline), fakesink);
|
||||
|
||||
gst_element_connect (src, parser);
|
||||
gst_element_connect (parser, fakesink);
|
||||
gst_element_link (src, parser);
|
||||
gst_element_link (parser, fakesink);
|
||||
|
||||
seekable = gst_element_get_pad (parser, "src");
|
||||
seekable_pads = g_list_prepend (seekable_pads, seekable);
|
||||
|
@ -272,8 +272,8 @@ make_vorbis_pipeline (const gchar *location)
|
|||
gst_bin_add (GST_BIN (pipeline), decoder);
|
||||
gst_bin_add (GST_BIN (pipeline), audiosink);
|
||||
|
||||
gst_element_connect (src, decoder);
|
||||
gst_element_connect (decoder, audiosink);
|
||||
gst_element_link (src, decoder);
|
||||
gst_element_link (decoder, audiosink);
|
||||
|
||||
seekable = gst_element_get_pad (decoder, "src");
|
||||
seekable_pads = g_list_prepend (seekable_pads, seekable);
|
||||
|
@ -310,9 +310,9 @@ make_mp3_pipeline (const gchar *location)
|
|||
gst_bin_add (GST_BIN (audio_thread), osssink);
|
||||
gst_bin_add (GST_BIN (pipeline), audio_thread);
|
||||
|
||||
gst_element_connect (src, decoder);
|
||||
gst_element_connect (decoder, queue);
|
||||
gst_element_connect (queue, osssink);
|
||||
gst_element_link (src, decoder);
|
||||
gst_element_link (decoder, queue);
|
||||
gst_element_link (queue, osssink);
|
||||
|
||||
seekable = gst_element_get_pad (queue, "src");
|
||||
seekable_pads = g_list_prepend (seekable_pads, seekable);
|
||||
|
@ -340,7 +340,7 @@ make_avi_pipeline (const gchar *location)
|
|||
|
||||
gst_bin_add (GST_BIN (pipeline), src);
|
||||
gst_bin_add (GST_BIN (pipeline), demux);
|
||||
gst_element_connect (src, demux);
|
||||
gst_element_link (src, demux);
|
||||
|
||||
audio_bin = gst_bin_new ("a_decoder_bin");
|
||||
a_decoder = gst_element_factory_make_or_warn ("mad", "a_dec");
|
||||
|
@ -348,15 +348,15 @@ make_avi_pipeline (const gchar *location)
|
|||
audiosink = gst_element_factory_make_or_warn ("osssink", "a_sink");
|
||||
//g_object_set (G_OBJECT (audiosink), "fragment", 0x00180008, NULL);
|
||||
a_queue = gst_element_factory_make_or_warn ("queue", "a_queue");
|
||||
gst_element_connect (a_decoder, a_queue);
|
||||
gst_element_connect (a_queue, audiosink);
|
||||
gst_element_link (a_decoder, a_queue);
|
||||
gst_element_link (a_queue, audiosink);
|
||||
gst_bin_add (GST_BIN (audio_bin), a_decoder);
|
||||
gst_bin_add (GST_BIN (audio_bin), audio_thread);
|
||||
gst_bin_add (GST_BIN (audio_thread), a_queue);
|
||||
gst_bin_add (GST_BIN (audio_thread), audiosink);
|
||||
gst_element_set_state (audio_bin, GST_STATE_PAUSED);
|
||||
|
||||
setup_dynamic_connection (demux, "audio_00", gst_element_get_pad (a_decoder, "sink"), audio_bin);
|
||||
setup_dynamic_linkion (demux, "audio_00", gst_element_get_pad (a_decoder, "sink"), audio_bin);
|
||||
|
||||
seekable = gst_element_get_pad (a_queue, "src");
|
||||
seekable_pads = g_list_prepend (seekable_pads, seekable);
|
||||
|
@ -373,8 +373,8 @@ make_avi_pipeline (const gchar *location)
|
|||
//g_object_set (G_OBJECT (videosink), "sync", TRUE, NULL);
|
||||
v_queue = gst_element_factory_make_or_warn ("queue", "v_queue");
|
||||
//g_object_set (G_OBJECT (v_queue), "max_level", 10, NULL);
|
||||
gst_element_connect (v_decoder, v_queue);
|
||||
gst_element_connect (v_queue, videosink);
|
||||
gst_element_link (v_decoder, v_queue);
|
||||
gst_element_link (v_queue, videosink);
|
||||
gst_bin_add (GST_BIN (video_bin), v_decoder);
|
||||
gst_bin_add (GST_BIN (video_bin), video_thread);
|
||||
gst_bin_add (GST_BIN (video_thread), v_queue);
|
||||
|
@ -382,7 +382,7 @@ make_avi_pipeline (const gchar *location)
|
|||
|
||||
gst_element_set_state (video_bin, GST_STATE_PAUSED);
|
||||
|
||||
setup_dynamic_connection (demux, "video_00", gst_element_get_pad (v_decoder, "sink"), video_bin);
|
||||
setup_dynamic_linkion (demux, "video_00", gst_element_get_pad (v_decoder, "sink"), video_bin);
|
||||
|
||||
seekable = gst_element_get_pad (v_queue, "src");
|
||||
seekable_pads = g_list_prepend (seekable_pads, seekable);
|
||||
|
@ -413,7 +413,7 @@ make_mpeg_pipeline (const gchar *location)
|
|||
|
||||
gst_bin_add (GST_BIN (pipeline), src);
|
||||
gst_bin_add (GST_BIN (pipeline), demux);
|
||||
gst_element_connect (src, demux);
|
||||
gst_element_link (src, demux);
|
||||
|
||||
audio_bin = gst_bin_new ("a_decoder_bin");
|
||||
a_decoder = gst_element_factory_make_or_warn ("mad", "a_dec");
|
||||
|
@ -421,14 +421,14 @@ make_mpeg_pipeline (const gchar *location)
|
|||
a_queue = gst_element_factory_make_or_warn ("queue", "a_queue");
|
||||
audiosink = gst_element_factory_make_or_warn ("osssink", "a_sink");
|
||||
g_object_set (G_OBJECT (audiosink), "fragment", 0x00180008, NULL);
|
||||
gst_element_connect (a_decoder, a_queue);
|
||||
gst_element_connect (a_queue, audiosink);
|
||||
gst_element_link (a_decoder, a_queue);
|
||||
gst_element_link (a_queue, audiosink);
|
||||
gst_bin_add (GST_BIN (audio_bin), a_decoder);
|
||||
gst_bin_add (GST_BIN (audio_bin), audio_thread);
|
||||
gst_bin_add (GST_BIN (audio_thread), a_queue);
|
||||
gst_bin_add (GST_BIN (audio_thread), audiosink);
|
||||
|
||||
setup_dynamic_connection (demux, "audio_00", gst_element_get_pad (a_decoder, "sink"), audio_bin);
|
||||
setup_dynamic_linkion (demux, "audio_00", gst_element_get_pad (a_decoder, "sink"), audio_bin);
|
||||
|
||||
seekable = gst_element_get_pad (a_queue, "src");
|
||||
seekable_pads = g_list_prepend (seekable_pads, seekable);
|
||||
|
@ -442,13 +442,13 @@ make_mpeg_pipeline (const gchar *location)
|
|||
v_queue = gst_element_factory_make_or_warn ("queue", "v_queue");
|
||||
v_filter = gst_element_factory_make_or_warn ("colorspace", "v_filter");
|
||||
videosink = gst_element_factory_make_or_warn ("xvideosink", "v_sink");
|
||||
gst_element_connect_many (v_decoder, v_queue, v_filter, NULL);
|
||||
gst_element_link_many (v_decoder, v_queue, v_filter, NULL);
|
||||
|
||||
gst_element_connect_pads (v_filter, "src", videosink, "sink");
|
||||
gst_element_link (v_filter, videosink);
|
||||
gst_bin_add_many (GST_BIN (video_bin), v_decoder, video_thread, NULL);
|
||||
gst_bin_add_many (GST_BIN (video_thread), v_queue, v_filter, videosink, NULL);
|
||||
|
||||
setup_dynamic_connection (demux, "video_00", gst_element_get_pad (v_decoder, "sink"), video_bin);
|
||||
setup_dynamic_linkion (demux, "video_00", gst_element_get_pad (v_decoder, "sink"), video_bin);
|
||||
|
||||
seekable = gst_element_get_pad (v_queue, "src");
|
||||
seekable_pads = g_list_prepend (seekable_pads, seekable);
|
||||
|
@ -479,7 +479,7 @@ make_mpegnt_pipeline (const gchar *location)
|
|||
|
||||
gst_bin_add (GST_BIN (pipeline), src);
|
||||
gst_bin_add (GST_BIN (pipeline), demux);
|
||||
gst_element_connect (src, demux);
|
||||
gst_element_link (src, demux);
|
||||
|
||||
audio_bin = gst_bin_new ("a_decoder_bin");
|
||||
a_decoder = gst_element_factory_make_or_warn ("mad", "a_dec");
|
||||
|
@ -488,14 +488,14 @@ make_mpegnt_pipeline (const gchar *location)
|
|||
audiosink = gst_element_factory_make_or_warn ("osssink", "a_sink");
|
||||
//g_object_set (G_OBJECT (audiosink), "fragment", 0x00180008, NULL);
|
||||
g_object_set (G_OBJECT (audiosink), "sync", FALSE, NULL);
|
||||
gst_element_connect (a_decoder, a_queue);
|
||||
gst_element_connect (a_queue, audiosink);
|
||||
gst_element_link (a_decoder, a_queue);
|
||||
gst_element_link (a_queue, audiosink);
|
||||
gst_bin_add (GST_BIN (audio_bin), a_decoder);
|
||||
gst_bin_add (GST_BIN (audio_bin), audio_thread);
|
||||
gst_bin_add (GST_BIN (audio_thread), a_queue);
|
||||
gst_bin_add (GST_BIN (audio_thread), audiosink);
|
||||
|
||||
setup_dynamic_connection (demux, "audio_00", gst_element_get_pad (a_decoder, "sink"), audio_bin);
|
||||
setup_dynamic_linkion (demux, "audio_00", gst_element_get_pad (a_decoder, "sink"), audio_bin);
|
||||
|
||||
seekable = gst_element_get_pad (a_queue, "src");
|
||||
seekable_pads = g_list_prepend (seekable_pads, seekable);
|
||||
|
@ -506,12 +506,11 @@ make_mpegnt_pipeline (const gchar *location)
|
|||
v_decoder = gst_element_factory_make_or_warn ("mpeg2dec", "v_dec");
|
||||
v_filter = gst_element_factory_make_or_warn ("colorspace", "v_filter");
|
||||
videosink = gst_element_factory_make_or_warn ("xvideosink", "v_sink");
|
||||
gst_element_connect_many (v_decoder, v_filter, NULL);
|
||||
gst_element_link_many (v_decoder, v_filter, videosink, NULL);
|
||||
|
||||
gst_element_connect_pads (v_filter, "src", videosink, "sink");
|
||||
gst_bin_add_many (GST_BIN (video_bin), v_decoder, v_filter, videosink, NULL);
|
||||
|
||||
setup_dynamic_connection (demux, "video_00", gst_element_get_pad (v_decoder, "sink"), video_bin);
|
||||
setup_dynamic_linkion (demux, "video_00", gst_element_get_pad (v_decoder, "sink"), video_bin);
|
||||
|
||||
seekable = gst_element_get_pad (v_decoder, "src");
|
||||
seekable_pads = g_list_prepend (seekable_pads, seekable);
|
||||
|
|
|
@ -56,11 +56,11 @@ make_spider_pipeline (const gchar *location, gboolean thread)
|
|||
gst_bin_add (GST_BIN (pipeline), a_thread);
|
||||
gst_bin_add (GST_BIN (pipeline), v_thread);
|
||||
|
||||
gst_element_connect (src, decoder);
|
||||
gst_element_connect (v_queue, videosink);
|
||||
gst_element_connect (decoder, v_queue);
|
||||
gst_element_connect (a_queue, audiosink);
|
||||
gst_element_connect (decoder, a_queue);
|
||||
gst_element_link (src, decoder);
|
||||
gst_element_link (v_queue, videosink);
|
||||
gst_element_link (decoder, v_queue);
|
||||
gst_element_link (a_queue, audiosink);
|
||||
gst_element_link (decoder, a_queue);
|
||||
|
||||
seekable_elements = g_list_prepend (seekable_elements, videosink);
|
||||
seekable_elements = g_list_prepend (seekable_elements, audiosink);
|
||||
|
|
|
@ -55,14 +55,12 @@ print_caps (GstCaps *caps)
|
|||
default:
|
||||
break;
|
||||
}
|
||||
|
||||
walk = g_list_next (walk);
|
||||
}
|
||||
}
|
||||
else {
|
||||
g_print (" unkown caps type\n");
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
static void
|
||||
|
@ -92,7 +90,7 @@ static void
|
|||
print_lbs_info (struct probe_context *context, gint stream)
|
||||
{
|
||||
const GstFormat *formats;
|
||||
|
||||
|
||||
/* FIXME: need a better name here */
|
||||
g_print (" stream info:\n");
|
||||
|
||||
|
@ -114,10 +112,10 @@ print_lbs_info (struct probe_context *context, gint stream)
|
|||
definition = gst_format_get_details (format);
|
||||
|
||||
/* get start and end position of this stream */
|
||||
res = gst_pad_convert (context->pad,
|
||||
res = gst_pad_convert (context->pad,
|
||||
context->ls_format, stream,
|
||||
&format, &value_start);
|
||||
res &= gst_pad_convert (context->pad,
|
||||
res &= gst_pad_convert (context->pad,
|
||||
context->ls_format, stream + 1,
|
||||
&format, &value_end);
|
||||
|
||||
|
@ -127,7 +125,7 @@ print_lbs_info (struct probe_context *context, gint stream)
|
|||
|
||||
if (format == GST_FORMAT_TIME) {
|
||||
value_end /= (GST_SECOND/100);
|
||||
g_print (" %s: %lld:%02lld.%02lld\n", definition->nick,
|
||||
g_print (" %s: %lld:%02lld.%02lld\n", definition->nick,
|
||||
value_end/6000, (value_end/100)%60, (value_end%100));
|
||||
}
|
||||
else {
|
||||
|
@ -148,13 +146,13 @@ deep_notify (GObject *object, GstObject *origin,
|
|||
GValue value = { 0, };
|
||||
|
||||
if (!strcmp (pspec->name, "metadata")) {
|
||||
|
||||
|
||||
g_value_init (&value, pspec->value_type);
|
||||
g_object_get_property (G_OBJECT (origin), pspec->name, &value);
|
||||
context->metadata = g_value_peek_pointer (&value);
|
||||
}
|
||||
else if (!strcmp (pspec->name, "streaminfo")) {
|
||||
|
||||
|
||||
g_value_init (&value, pspec->value_type);
|
||||
g_object_get_property (G_OBJECT (origin), pspec->name, &value);
|
||||
context->streaminfo = g_value_peek_pointer (&value);
|
||||
|
@ -175,7 +173,7 @@ collect_logical_stream_properties (struct probe_context *context, gint stream)
|
|||
GstEvent *event;
|
||||
gboolean res;
|
||||
gint count;
|
||||
|
||||
|
||||
g_print ("info for logical stream %d:\n", stream);
|
||||
|
||||
/* seek to stream */
|
||||
|
@ -196,14 +194,14 @@ collect_logical_stream_properties (struct probe_context *context, gint stream)
|
|||
count++;
|
||||
if (count > 10) break;
|
||||
}
|
||||
|
||||
|
||||
print_caps (context->metadata);
|
||||
print_caps (context->streaminfo);
|
||||
print_format (context->caps);
|
||||
print_lbs_info (context, stream);
|
||||
|
||||
g_print ("\n");
|
||||
|
||||
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
|
@ -226,11 +224,11 @@ collect_stream_properties (struct probe_context *context)
|
|||
gint64 value;
|
||||
gboolean res;
|
||||
GstFormat format;
|
||||
|
||||
|
||||
format = *formats;
|
||||
formats++;
|
||||
|
||||
res = gst_pad_query (context->pad, GST_QUERY_TOTAL,
|
||||
res = gst_pad_query (context->pad, GST_QUERY_TOTAL,
|
||||
&format, &value);
|
||||
|
||||
definition = gst_format_get_details (format);
|
||||
|
@ -238,7 +236,7 @@ collect_stream_properties (struct probe_context *context)
|
|||
if (res) {
|
||||
if (format == GST_FORMAT_TIME) {
|
||||
value /= (GST_SECOND/100);
|
||||
g_print (" total %s: %lld:%02lld.%02lld\n", definition->nick,
|
||||
g_print (" total %s: %lld:%02lld.%02lld\n", definition->nick,
|
||||
value/6000, (value/100)%60, (value%100));
|
||||
}
|
||||
else {
|
||||
|
@ -265,7 +263,7 @@ main (int argc, char **argv)
|
|||
GstFormat logical_stream_format;
|
||||
struct probe_context *context;
|
||||
gint stream;
|
||||
|
||||
|
||||
gst_init (&argc, &argv);
|
||||
|
||||
if (argc < 2) {
|
||||
|
@ -286,7 +284,7 @@ main (int argc, char **argv)
|
|||
gst_bin_add (GST_BIN (pipeline), filesrc);
|
||||
gst_bin_add (GST_BIN (pipeline), vorbisfile);
|
||||
|
||||
gst_element_connect_pads (filesrc, "src", vorbisfile, "sink");
|
||||
gst_element_link_pads (filesrc, "src", vorbisfile, "sink");
|
||||
|
||||
pad = gst_element_get_pad (vorbisfile, "src");
|
||||
g_assert (pad);
|
||||
|
@ -300,9 +298,9 @@ main (int argc, char **argv)
|
|||
context->pad = pad;
|
||||
context->ls_format = logical_stream_format;
|
||||
|
||||
g_signal_connect (G_OBJECT (pipeline), "deep_notify",
|
||||
g_signal_connect (G_OBJECT (pipeline), "deep_notify",
|
||||
G_CALLBACK (deep_notify), context);
|
||||
|
||||
|
||||
gst_element_set_state (pipeline, GST_STATE_PLAYING);
|
||||
|
||||
/* at this point we can inspect the stream */
|
||||
|
@ -314,7 +312,7 @@ main (int argc, char **argv)
|
|||
collect_logical_stream_properties (context, stream);
|
||||
stream++;
|
||||
}
|
||||
|
||||
|
||||
/* stop probe */
|
||||
gst_element_set_state (pipeline, GST_STATE_NULL);
|
||||
|
||||
|
|
|
@ -94,7 +94,7 @@ gst_gsmdec_init (GstGSMDec *gsmdec)
|
|||
gsmdec->sinkpad = gst_pad_new_from_template (gsmdec_sink_template, "sink");
|
||||
gst_element_add_pad (GST_ELEMENT (gsmdec), gsmdec->sinkpad);
|
||||
gst_pad_set_chain_function (gsmdec->sinkpad, gst_gsmdec_chain);
|
||||
gst_pad_set_connect_function (gsmdec->sinkpad, gst_gsmdec_sinkconnect);
|
||||
gst_pad_set_link_function (gsmdec->sinkpad, gst_gsmdec_sinkconnect);
|
||||
|
||||
gsmdec->srcpad = gst_pad_new_from_template (gsmdec_src_template, "src");
|
||||
gst_element_add_pad (GST_ELEMENT (gsmdec), gsmdec->srcpad);
|
||||
|
@ -112,7 +112,7 @@ gst_gsmdec_sinkconnect (GstPad *pad, GstCaps *caps)
|
|||
gsmdec = GST_GSMDEC (gst_pad_get_parent (pad));
|
||||
|
||||
if (!GST_CAPS_IS_FIXED (caps))
|
||||
return GST_PAD_CONNECT_DELAYED;
|
||||
return GST_PAD_LINK_DELAYED;
|
||||
|
||||
gst_caps_get_int (caps, "rate", &rate);
|
||||
|
||||
|
@ -130,9 +130,9 @@ gst_gsmdec_sinkconnect (GstPad *pad, GstCaps *caps)
|
|||
"channels", GST_PROPS_INT (1)
|
||||
)) > 0)
|
||||
{
|
||||
return GST_PAD_CONNECT_OK;
|
||||
return GST_PAD_LINK_OK;
|
||||
}
|
||||
return GST_PAD_CONNECT_REFUSED;
|
||||
return GST_PAD_LINK_REFUSED;
|
||||
}
|
||||
|
||||
static void
|
||||
|
|
|
@ -103,7 +103,7 @@ gst_gsmenc_init (GstGSMEnc *gsmenc)
|
|||
gsmenc->sinkpad = gst_pad_new_from_template (gsmenc_sink_template, "sink");
|
||||
gst_element_add_pad (GST_ELEMENT (gsmenc), gsmenc->sinkpad);
|
||||
gst_pad_set_chain_function (gsmenc->sinkpad, gst_gsmenc_chain);
|
||||
gst_pad_set_connect_function (gsmenc->sinkpad, gst_gsmenc_sinkconnect);
|
||||
gst_pad_set_link_function (gsmenc->sinkpad, gst_gsmenc_sinkconnect);
|
||||
|
||||
gsmenc->srcpad = gst_pad_new_from_template (gsmenc_src_template, "src");
|
||||
gst_element_add_pad (GST_ELEMENT (gsmenc), gsmenc->srcpad);
|
||||
|
@ -122,7 +122,7 @@ gst_gsmenc_sinkconnect (GstPad *pad, GstCaps *caps)
|
|||
gsmenc = GST_GSMENC (gst_pad_get_parent (pad));
|
||||
|
||||
if (!GST_CAPS_IS_FIXED (caps))
|
||||
return GST_PAD_CONNECT_DELAYED;
|
||||
return GST_PAD_LINK_DELAYED;
|
||||
|
||||
gst_caps_get_int (caps, "rate", &gsmenc->rate);
|
||||
if (gst_pad_try_set_caps (gsmenc->srcpad, GST_CAPS_NEW (
|
||||
|
@ -131,9 +131,9 @@ gst_gsmenc_sinkconnect (GstPad *pad, GstCaps *caps)
|
|||
"rate", GST_PROPS_INT (gsmenc->rate)
|
||||
)) > 0)
|
||||
{
|
||||
return GST_PAD_CONNECT_OK;
|
||||
return GST_PAD_LINK_OK;
|
||||
}
|
||||
return GST_PAD_CONNECT_REFUSED;
|
||||
return GST_PAD_LINK_REFUSED;
|
||||
|
||||
}
|
||||
|
||||
|
|
|
@ -295,7 +295,7 @@ gst_colorspace_sinkconnect (GstPad *pad, GstCaps *caps)
|
|||
space = GST_COLORSPACE (gst_pad_get_parent (pad));
|
||||
|
||||
if (!GST_CAPS_IS_FIXED (caps)) {
|
||||
return GST_PAD_CONNECT_DELAYED;
|
||||
return GST_PAD_LINK_DELAYED;
|
||||
}
|
||||
|
||||
gst_caps_get_int (caps, "width", &space->width);
|
||||
|
@ -309,11 +309,11 @@ gst_colorspace_sinkconnect (GstPad *pad, GstCaps *caps)
|
|||
if (peer) {
|
||||
if (gst_colorspace_srcconnect_func (pad, gst_pad_get_allowed_caps (space->srcpad), FALSE) < 1) {
|
||||
space->sinkcaps = NULL;
|
||||
return GST_PAD_CONNECT_REFUSED;
|
||||
return GST_PAD_LINK_REFUSED;
|
||||
}
|
||||
}
|
||||
|
||||
return GST_PAD_CONNECT_OK;
|
||||
return GST_PAD_LINK_OK;
|
||||
}
|
||||
|
||||
static GstPadConnectReturn
|
||||
|
@ -337,7 +337,7 @@ gst_colorspace_srcconnect_func (GstPad *pad, GstCaps *caps, gboolean newcaps)
|
|||
if (newcaps)
|
||||
gst_pad_recalc_allowed_caps (space->sinkpad);
|
||||
|
||||
return GST_PAD_CONNECT_DELAYED;
|
||||
return GST_PAD_LINK_DELAYED;
|
||||
}
|
||||
|
||||
/* first see if we can do the format natively by filtering the peer caps
|
||||
|
@ -348,7 +348,7 @@ gst_colorspace_srcconnect_func (GstPad *pad, GstCaps *caps, gboolean newcaps)
|
|||
if (gst_pad_try_set_caps (space->srcpad, peercaps) > 0) {
|
||||
space->type = GST_COLORSPACE_NONE;
|
||||
space->disabled = FALSE;
|
||||
return GST_PAD_CONNECT_DONE;
|
||||
return GST_PAD_LINK_DONE;
|
||||
}
|
||||
}
|
||||
/* then see what the peer has that matches the size */
|
||||
|
@ -369,7 +369,7 @@ gst_colorspace_srcconnect_func (GstPad *pad, GstCaps *caps, gboolean newcaps)
|
|||
if (colorspace_setup_converter (space, ourcaps, peercaps)) {
|
||||
if (gst_pad_try_set_caps (space->srcpad, peercaps) > 0) {
|
||||
space->disabled = FALSE;
|
||||
return GST_PAD_CONNECT_DONE;
|
||||
return GST_PAD_LINK_DONE;
|
||||
}
|
||||
}
|
||||
peercaps = peercaps->next;
|
||||
|
@ -378,7 +378,7 @@ gst_colorspace_srcconnect_func (GstPad *pad, GstCaps *caps, gboolean newcaps)
|
|||
/* we disable ourself here */
|
||||
space->disabled = TRUE;
|
||||
|
||||
return GST_PAD_CONNECT_REFUSED;
|
||||
return GST_PAD_LINK_REFUSED;
|
||||
}
|
||||
|
||||
GType
|
||||
|
@ -425,7 +425,7 @@ gst_colorspace_init (GstColorspace *space)
|
|||
{
|
||||
space->sinkpad = gst_pad_new_from_template (
|
||||
GST_PAD_TEMPLATE_GET (colorspace_sink_template_factory), "sink");
|
||||
gst_pad_set_connect_function (space->sinkpad, gst_colorspace_sinkconnect);
|
||||
gst_pad_set_link_function (space->sinkpad, gst_colorspace_sinkconnect);
|
||||
gst_pad_set_getcaps_function (space->sinkpad, gst_colorspace_getcaps);
|
||||
gst_pad_set_bufferpool_function (space->sinkpad, colorspace_get_bufferpool);
|
||||
gst_pad_set_chain_function(space->sinkpad,gst_colorspace_chain);
|
||||
|
@ -434,7 +434,7 @@ gst_colorspace_init (GstColorspace *space)
|
|||
space->srcpad = gst_pad_new_from_template (
|
||||
GST_PAD_TEMPLATE_GET (colorspace_src_template_factory), "src");
|
||||
gst_element_add_pad(GST_ELEMENT(space),space->srcpad);
|
||||
gst_pad_set_connect_function (space->srcpad, gst_colorspace_srcconnect);
|
||||
gst_pad_set_link_function (space->srcpad, gst_colorspace_srcconnect);
|
||||
|
||||
#ifdef HAVE_HERMES
|
||||
space->h_handle = Hermes_ConverterInstance (0);
|
||||
|
|
|
@ -281,7 +281,7 @@ gst_jack_request_new_pad (GstElement *element, GstPadTemplate *templ, const gcha
|
|||
pad->peer_name = newname;
|
||||
pad->pad = gst_pad_new_from_template (templ, newname);
|
||||
gst_element_add_pad (GST_ELEMENT (this), pad->pad);
|
||||
gst_pad_set_connect_function (pad->pad, gst_jack_connect);
|
||||
gst_pad_set_link_function (pad->pad, gst_jack_connect);
|
||||
|
||||
this->pads = g_list_append (this->pads, pad);
|
||||
|
||||
|
@ -402,18 +402,18 @@ gst_jack_connect (GstPad *pad, GstCaps *caps)
|
|||
gint rate;
|
||||
|
||||
this = GST_JACK (gst_pad_get_parent (pad));
|
||||
g_return_val_if_fail (this != NULL, GST_PAD_CONNECT_REFUSED);
|
||||
g_return_val_if_fail (GST_IS_JACK (this), GST_PAD_CONNECT_REFUSED);
|
||||
g_return_val_if_fail (this != NULL, GST_PAD_LINK_REFUSED);
|
||||
g_return_val_if_fail (GST_IS_JACK (this), GST_PAD_LINK_REFUSED);
|
||||
|
||||
if (GST_CAPS_IS_FIXED (caps)) {
|
||||
gst_caps_get_int (caps, "rate", &rate);
|
||||
if (this->bin && rate != this->bin->rate)
|
||||
return GST_PAD_CONNECT_REFUSED;
|
||||
return GST_PAD_LINK_REFUSED;
|
||||
|
||||
return GST_PAD_CONNECT_OK;
|
||||
return GST_PAD_LINK_OK;
|
||||
}
|
||||
|
||||
return GST_PAD_CONNECT_DELAYED;
|
||||
return GST_PAD_LINK_DELAYED;
|
||||
}
|
||||
|
||||
static void
|
||||
|
|
|
@ -447,13 +447,13 @@ gst_ladspa_init (GstLADSPA *ladspa)
|
|||
|
||||
ladspa->newcaps = TRUE;
|
||||
|
||||
gst_pad_set_connect_function (ladspa->srcpads[0], gst_ladspa_connect_get);
|
||||
gst_pad_set_link_function (ladspa->srcpads[0], gst_ladspa_connect_get);
|
||||
gst_pad_set_get_function (ladspa->srcpads[0], gst_ladspa_get);
|
||||
} else if (sinkcount==1){
|
||||
/* with one sink we can use the chain function */
|
||||
GST_DEBUG (0, "chain mode");
|
||||
|
||||
gst_pad_set_connect_function (ladspa->sinkpads[0], gst_ladspa_connect);
|
||||
gst_pad_set_link_function (ladspa->sinkpads[0], gst_ladspa_connect);
|
||||
gst_pad_set_chain_function (ladspa->sinkpads[0], gst_ladspa_chain);
|
||||
gst_pad_set_bufferpool_function (ladspa->sinkpads[0], gst_ladspa_get_bufferpool);
|
||||
} else if (sinkcount > 1){
|
||||
|
@ -461,7 +461,7 @@ gst_ladspa_init (GstLADSPA *ladspa)
|
|||
GST_DEBUG (0, "loop mode with %d sink pads and %d src pads", sinkcount, srccount);
|
||||
|
||||
for (i=0;i<sinkcount;i++) {
|
||||
gst_pad_set_connect_function (ladspa->sinkpads[i], gst_ladspa_connect);
|
||||
gst_pad_set_link_function (ladspa->sinkpads[i], gst_ladspa_connect);
|
||||
gst_pad_set_bufferpool_function (ladspa->sinkpads[i], gst_ladspa_get_bufferpool);
|
||||
}
|
||||
gst_element_set_loop_function (GST_ELEMENT (ladspa), gst_ladspa_loop);
|
||||
|
@ -490,8 +490,8 @@ gst_ladspa_connect (GstPad *pad, GstCaps *caps)
|
|||
guint i;
|
||||
gint rate;
|
||||
|
||||
g_return_val_if_fail (caps != NULL, GST_PAD_CONNECT_DELAYED);
|
||||
g_return_val_if_fail (pad != NULL, GST_PAD_CONNECT_DELAYED);
|
||||
g_return_val_if_fail (caps != NULL, GST_PAD_LINK_DELAYED);
|
||||
g_return_val_if_fail (pad != NULL, GST_PAD_LINK_DELAYED);
|
||||
|
||||
if (gst_caps_get_int (caps, "rate", &rate)){
|
||||
/* have to instantiate ladspa plugin when samplerate changes (groan) */
|
||||
|
@ -499,7 +499,7 @@ gst_ladspa_connect (GstPad *pad, GstCaps *caps)
|
|||
ladspa->samplerate = rate;
|
||||
|
||||
if (! gst_ladspa_instantiate(ladspa))
|
||||
return GST_PAD_CONNECT_REFUSED;
|
||||
return GST_PAD_LINK_REFUSED;
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -509,11 +509,11 @@ gst_ladspa_connect (GstPad *pad, GstCaps *caps)
|
|||
if (GST_CAPS_IS_FIXED (caps)) {
|
||||
for (i=0;i<oclass->numsrcpads;i++) {
|
||||
if (gst_pad_try_set_caps (ladspa->srcpads[i], caps) <= 0)
|
||||
return GST_PAD_CONNECT_REFUSED;
|
||||
return GST_PAD_LINK_REFUSED;
|
||||
}
|
||||
}
|
||||
|
||||
return GST_PAD_CONNECT_OK;
|
||||
return GST_PAD_LINK_OK;
|
||||
}
|
||||
|
||||
static GstPadConnectReturn
|
||||
|
@ -522,18 +522,18 @@ gst_ladspa_connect_get (GstPad *pad, GstCaps *caps)
|
|||
GstLADSPA *ladspa = (GstLADSPA*)GST_OBJECT_PARENT (pad);
|
||||
gint rate;
|
||||
|
||||
g_return_val_if_fail (caps != NULL, GST_PAD_CONNECT_DELAYED);
|
||||
g_return_val_if_fail (pad != NULL, GST_PAD_CONNECT_DELAYED);
|
||||
g_return_val_if_fail (caps != NULL, GST_PAD_LINK_DELAYED);
|
||||
g_return_val_if_fail (pad != NULL, GST_PAD_LINK_DELAYED);
|
||||
|
||||
if (gst_caps_get_int (caps, "rate", &rate)){
|
||||
if (ladspa->samplerate != rate) {
|
||||
ladspa->samplerate = rate;
|
||||
if (! gst_ladspa_instantiate(ladspa))
|
||||
return GST_PAD_CONNECT_REFUSED;
|
||||
return GST_PAD_LINK_REFUSED;
|
||||
}
|
||||
}
|
||||
|
||||
return GST_PAD_CONNECT_OK;
|
||||
return GST_PAD_LINK_OK;
|
||||
}
|
||||
|
||||
static void
|
||||
|
|
|
@ -252,7 +252,7 @@ gst_colorspace_sinkconnect (GstPad *pad, GstCaps *caps)
|
|||
space = GST_COLORSPACE (gst_pad_get_parent (pad));
|
||||
|
||||
if (!GST_CAPS_IS_FIXED (caps)) {
|
||||
return GST_PAD_CONNECT_DELAYED;
|
||||
return GST_PAD_LINK_DELAYED;
|
||||
}
|
||||
|
||||
gst_caps_get_int (caps, "width", &space->width);
|
||||
|
@ -266,11 +266,11 @@ gst_colorspace_sinkconnect (GstPad *pad, GstCaps *caps)
|
|||
if (peer) {
|
||||
if (gst_colorspace_srcconnect_func (pad, gst_pad_get_allowed_caps (space->srcpad), FALSE) < 1) {
|
||||
space->sinkcaps = NULL;
|
||||
return GST_PAD_CONNECT_REFUSED;
|
||||
return GST_PAD_LINK_REFUSED;
|
||||
}
|
||||
}
|
||||
|
||||
return GST_PAD_CONNECT_OK;
|
||||
return GST_PAD_LINK_OK;
|
||||
}
|
||||
|
||||
static GstPadConnectReturn
|
||||
|
@ -294,7 +294,7 @@ gst_colorspace_srcconnect_func (GstPad *pad, GstCaps *caps, gboolean newcaps)
|
|||
if (newcaps)
|
||||
gst_pad_recalc_allowed_caps (space->sinkpad);
|
||||
|
||||
return GST_PAD_CONNECT_DELAYED;
|
||||
return GST_PAD_LINK_DELAYED;
|
||||
}
|
||||
|
||||
/* first see if we can do the format natively by filtering the peer caps
|
||||
|
@ -305,7 +305,7 @@ gst_colorspace_srcconnect_func (GstPad *pad, GstCaps *caps, gboolean newcaps)
|
|||
if (gst_pad_try_set_caps (space->srcpad, peercaps) > 0) {
|
||||
space->type = GST_COLORSPACE_NONE;
|
||||
space->disabled = FALSE;
|
||||
return GST_PAD_CONNECT_DONE;
|
||||
return GST_PAD_LINK_DONE;
|
||||
}
|
||||
}
|
||||
/* then see what the peer has that matches the size */
|
||||
|
@ -326,7 +326,7 @@ gst_colorspace_srcconnect_func (GstPad *pad, GstCaps *caps, gboolean newcaps)
|
|||
if (colorspace_setup_converter (space, ourcaps, peercaps)) {
|
||||
if (gst_pad_try_set_caps (space->srcpad, peercaps) > 0) {
|
||||
space->disabled = FALSE;
|
||||
return GST_PAD_CONNECT_DONE;
|
||||
return GST_PAD_LINK_DONE;
|
||||
}
|
||||
}
|
||||
peercaps = peercaps->next;
|
||||
|
@ -336,7 +336,7 @@ gst_colorspace_srcconnect_func (GstPad *pad, GstCaps *caps, gboolean newcaps)
|
|||
/* we disable ourself here */
|
||||
space->disabled = TRUE;
|
||||
|
||||
return GST_PAD_CONNECT_REFUSED;
|
||||
return GST_PAD_LINK_REFUSED;
|
||||
}
|
||||
|
||||
static GType
|
||||
|
@ -383,7 +383,7 @@ gst_colorspace_init (GstColorspace *space)
|
|||
{
|
||||
space->sinkpad = gst_pad_new_from_template (
|
||||
GST_PAD_TEMPLATE_GET (colorspace_sink_template_factory), "sink");
|
||||
gst_pad_set_connect_function (space->sinkpad, gst_colorspace_sinkconnect);
|
||||
gst_pad_set_link_function (space->sinkpad, gst_colorspace_sinkconnect);
|
||||
gst_pad_set_getcaps_function (space->sinkpad, gst_colorspace_getcaps);
|
||||
gst_pad_set_bufferpool_function (space->sinkpad, colorspace_get_bufferpool);
|
||||
gst_pad_set_chain_function(space->sinkpad,gst_colorspace_chain);
|
||||
|
@ -392,7 +392,7 @@ gst_colorspace_init (GstColorspace *space)
|
|||
space->srcpad = gst_pad_new_from_template (
|
||||
GST_PAD_TEMPLATE_GET (colorspace_src_template_factory), "src");
|
||||
gst_element_add_pad(GST_ELEMENT(space),space->srcpad);
|
||||
gst_pad_set_connect_function (space->srcpad, gst_colorspace_srcconnect);
|
||||
gst_pad_set_link_function (space->srcpad, gst_colorspace_srcconnect);
|
||||
|
||||
space->pool = NULL;
|
||||
space->disabled = TRUE;
|
||||
|
|
|
@ -306,11 +306,11 @@ gst_famedec_sinkconnect (GstPad *pad, GstCaps *caps)
|
|||
famedec = GST_FAMEENC (gst_pad_get_parent (pad));
|
||||
|
||||
if (!GST_CAPS_IS_FIXED (caps))
|
||||
return GST_PAD_CONNECT_DELAYED;
|
||||
return GST_PAD_LINK_DELAYED;
|
||||
|
||||
if (famedec->initialized) {
|
||||
GST_DEBUG(0, "error: famedec decoder already initialized !");
|
||||
return GST_PAD_CONNECT_REFUSED;
|
||||
return GST_PAD_LINK_REFUSED;
|
||||
}
|
||||
|
||||
gst_caps_get_int (caps, "width", &width);
|
||||
|
@ -318,7 +318,7 @@ gst_famedec_sinkconnect (GstPad *pad, GstCaps *caps)
|
|||
|
||||
/* famedec requires width and height to be multiples of 16 */
|
||||
if (width % 16 != 0 || height % 16 != 0)
|
||||
return GST_PAD_CONNECT_REFUSED;
|
||||
return GST_PAD_LINK_REFUSED;
|
||||
|
||||
famedec->fp.width = width;
|
||||
famedec->fp.height = height;
|
||||
|
@ -337,7 +337,7 @@ gst_famedec_sinkconnect (GstPad *pad, GstCaps *caps)
|
|||
|
||||
famedec->initialized = TRUE;
|
||||
|
||||
return GST_PAD_CONNECT_OK;
|
||||
return GST_PAD_LINK_OK;
|
||||
}
|
||||
|
||||
static void
|
||||
|
@ -355,7 +355,7 @@ gst_famedec_init (GstFameEnc *famedec)
|
|||
GST_PAD_TEMPLATE_GET (sink_template_factory), "sink");
|
||||
gst_element_add_pad (GST_ELEMENT (famedec), famedec->sinkpad);
|
||||
gst_pad_set_chain_function (famedec->sinkpad, gst_famedec_chain);
|
||||
gst_pad_set_connect_function (famedec->sinkpad, gst_famedec_sinkconnect);
|
||||
gst_pad_set_link_function (famedec->sinkpad, gst_famedec_sinkconnect);
|
||||
|
||||
famedec->srcpad = gst_pad_new_from_template (
|
||||
GST_PAD_TEMPLATE_GET (src_template_factory), "src");
|
||||
|
|
|
@ -305,11 +305,11 @@ gst_fameenc_sinkconnect (GstPad *pad, GstCaps *caps)
|
|||
fameenc = GST_FAMEENC (gst_pad_get_parent (pad));
|
||||
|
||||
if (!GST_CAPS_IS_FIXED (caps))
|
||||
return GST_PAD_CONNECT_DELAYED;
|
||||
return GST_PAD_LINK_DELAYED;
|
||||
|
||||
if (fameenc->initialized) {
|
||||
GST_DEBUG(0, "error: fameenc encoder already initialized !");
|
||||
return GST_PAD_CONNECT_REFUSED;
|
||||
return GST_PAD_LINK_REFUSED;
|
||||
}
|
||||
|
||||
gst_caps_get_int (caps, "width", &width);
|
||||
|
@ -317,7 +317,7 @@ gst_fameenc_sinkconnect (GstPad *pad, GstCaps *caps)
|
|||
|
||||
/* fameenc requires width and height to be multiples of 16 */
|
||||
if (width % 16 != 0 || height % 16 != 0)
|
||||
return GST_PAD_CONNECT_REFUSED;
|
||||
return GST_PAD_LINK_REFUSED;
|
||||
|
||||
fameenc->fp.width = width;
|
||||
fameenc->fp.height = height;
|
||||
|
@ -337,7 +337,7 @@ gst_fameenc_sinkconnect (GstPad *pad, GstCaps *caps)
|
|||
fameenc->initialized = TRUE;
|
||||
fameenc->time_interval = 0;
|
||||
|
||||
return GST_PAD_CONNECT_OK;
|
||||
return GST_PAD_LINK_OK;
|
||||
}
|
||||
|
||||
static void
|
||||
|
@ -355,7 +355,7 @@ gst_fameenc_init (GstFameEnc *fameenc)
|
|||
GST_PAD_TEMPLATE_GET (sink_template_factory), "sink");
|
||||
gst_element_add_pad (GST_ELEMENT (fameenc), fameenc->sinkpad);
|
||||
gst_pad_set_chain_function (fameenc->sinkpad, gst_fameenc_chain);
|
||||
gst_pad_set_connect_function (fameenc->sinkpad, gst_fameenc_sinkconnect);
|
||||
gst_pad_set_link_function (fameenc->sinkpad, gst_fameenc_sinkconnect);
|
||||
|
||||
fameenc->srcpad = gst_pad_new_from_template (
|
||||
GST_PAD_TEMPLATE_GET (src_template_factory), "src");
|
||||
|
|
|
@ -256,12 +256,12 @@ gst_mplex_video_connect (GstPad *pad, GstCaps *caps)
|
|||
mplex = GST_MPLEX (gst_pad_get_parent (pad));
|
||||
|
||||
if (!GST_CAPS_IS_FIXED (caps))
|
||||
return GST_PAD_CONNECT_DELAYED;
|
||||
return GST_PAD_LINK_DELAYED;
|
||||
|
||||
stream = (GstMPlexStream *) gst_pad_get_element_private (pad);
|
||||
|
||||
if (!gst_caps_get_int (caps, "mpegversion", &version)){
|
||||
return GST_PAD_CONNECT_REFUSED;
|
||||
return GST_PAD_LINK_REFUSED;
|
||||
}
|
||||
|
||||
if (version == 2) {
|
||||
|
@ -271,7 +271,7 @@ gst_mplex_video_connect (GstPad *pad, GstCaps *caps)
|
|||
stream->type = GST_MPLEX_STREAM_VIDEO;
|
||||
}
|
||||
|
||||
return GST_PAD_CONNECT_OK;
|
||||
return GST_PAD_LINK_OK;
|
||||
}
|
||||
|
||||
|
||||
|
|
|
@ -175,7 +175,7 @@ gst_sdlvideosink_init (GstSDLVideoSink *sdlvideosink)
|
|||
gst_element_add_pad (GST_ELEMENT (sdlvideosink), sdlvideosink->sinkpad);
|
||||
|
||||
gst_pad_set_chain_function (sdlvideosink->sinkpad, gst_sdlvideosink_chain);
|
||||
gst_pad_set_connect_function (sdlvideosink->sinkpad, gst_sdlvideosink_sinkconnect);
|
||||
gst_pad_set_link_function (sdlvideosink->sinkpad, gst_sdlvideosink_sinkconnect);
|
||||
|
||||
sdlvideosink->window_width = -1;
|
||||
sdlvideosink->window_height = -1;
|
||||
|
@ -367,7 +367,7 @@ gst_sdlvideosink_sinkconnect (GstPad *pad,
|
|||
|
||||
/* we are not going to act on variable caps */
|
||||
if (!GST_CAPS_IS_FIXED (vscapslist))
|
||||
return GST_PAD_CONNECT_DELAYED;
|
||||
return GST_PAD_LINK_DELAYED;
|
||||
|
||||
for (caps = vscapslist; caps != NULL; caps = vscapslist = vscapslist->next)
|
||||
{
|
||||
|
@ -390,14 +390,14 @@ gst_sdlvideosink_sinkconnect (GstPad *pad,
|
|||
|
||||
/* try it out */
|
||||
if (!gst_sdlvideosink_create(sdlvideosink, TRUE))
|
||||
return GST_PAD_CONNECT_REFUSED;
|
||||
return GST_PAD_LINK_REFUSED;
|
||||
|
||||
return GST_PAD_CONNECT_OK;
|
||||
return GST_PAD_LINK_OK;
|
||||
}
|
||||
}
|
||||
|
||||
/* if we got here - it's not good */
|
||||
return GST_PAD_CONNECT_REFUSED;
|
||||
return GST_PAD_LINK_REFUSED;
|
||||
}
|
||||
|
||||
|
||||
|
|
|
@ -173,7 +173,7 @@ gst_snapshot_sinkconnect (GstPad *pad, GstCaps *caps)
|
|||
filter = GST_SNAPSHOT (gst_pad_get_parent (pad));
|
||||
|
||||
if (!GST_CAPS_IS_FIXED (caps))
|
||||
return GST_PAD_CONNECT_DELAYED;
|
||||
return GST_PAD_LINK_DELAYED;
|
||||
|
||||
gst_caps_get_int (caps, "width", &filter->width);
|
||||
gst_caps_get_int (caps, "height", &filter->height);
|
||||
|
@ -223,14 +223,14 @@ gst_snapshot_sinkconnect (GstPad *pad, GstCaps *caps)
|
|||
|
||||
gst_pad_try_set_caps (filter->srcpad, caps);
|
||||
|
||||
return GST_PAD_CONNECT_OK;
|
||||
return GST_PAD_LINK_OK;
|
||||
}
|
||||
|
||||
static void
|
||||
gst_snapshot_init (GstSnapshot *snapshot)
|
||||
{
|
||||
snapshot->sinkpad = gst_pad_new_from_template (GST_PAD_TEMPLATE_GET (snapshot_sink_factory), "sink");
|
||||
gst_pad_set_connect_function (snapshot->sinkpad, gst_snapshot_sinkconnect);
|
||||
gst_pad_set_link_function (snapshot->sinkpad, gst_snapshot_sinkconnect);
|
||||
gst_pad_set_chain_function (snapshot->sinkpad, gst_snapshot_chain);
|
||||
gst_element_add_pad (GST_ELEMENT (snapshot), snapshot->sinkpad);
|
||||
|
||||
|
|
|
@ -388,13 +388,13 @@ gst_swfdec_vo_destroy (GstSwfdec *swfdec)
|
|||
static GstPadConnectReturn
|
||||
gst_swfdec_connect(GstPad *pad, GstCaps *caps)
|
||||
{
|
||||
return GST_PAD_CONNECT_DELAYED;
|
||||
return GST_PAD_LINK_DELAYED;
|
||||
}
|
||||
#endif
|
||||
|
||||
#if 0
|
||||
static void
|
||||
src_disconnected(GstPad *srcpad, GstPad *sinkpad, GstSwfdec *plugin)
|
||||
src_unlinked(GstPad *srcpad, GstPad *sinkpad, GstSwfdec *plugin)
|
||||
{
|
||||
GST_DEBUG(GST_CAT_PADS, "removing pad %s:%s",
|
||||
GST_DEBUG_PAD_NAME(srcpad));
|
||||
|
@ -433,9 +433,9 @@ gst_swfdec_request_new_pad (GstElement *element, GstPadTemplate *templ,
|
|||
srcpad = gst_pad_new_from_template(templ, "audio_00");
|
||||
gst_element_add_pad(GST_ELEMENT(plugin), srcpad);
|
||||
|
||||
g_signal_connect(G_OBJECT(srcpad), "disconnected",
|
||||
G_CALLBACK(src_disconnected), plugin);
|
||||
gst_pad_set_connect_function(srcpad, gst_swfdec_connect);
|
||||
g_signal_connect(G_OBJECT(srcpad), "unlinked",
|
||||
G_CALLBACK(src_unlinked), plugin);
|
||||
gst_pad_set_link_function(srcpad, gst_swfdec_connect);
|
||||
plugin->audiopad = srcpad;
|
||||
}else if(strcmp("video", template) == 0){
|
||||
#endif
|
||||
|
@ -445,9 +445,9 @@ gst_swfdec_request_new_pad (GstElement *element, GstPadTemplate *templ,
|
|||
srcpad = gst_pad_new_from_template(templ, "video_00");
|
||||
gst_element_add_pad(GST_ELEMENT(plugin), srcpad);
|
||||
|
||||
g_signal_connect(G_OBJECT(srcpad), "disconnected",
|
||||
G_CALLBACK(src_disconnected), plugin);
|
||||
gst_pad_set_connect_function(srcpad, gst_swfdec_connect);
|
||||
g_signal_connect(G_OBJECT(srcpad), "unlinked",
|
||||
G_CALLBACK(src_unlinked), plugin);
|
||||
gst_pad_set_link_function(srcpad, gst_swfdec_connect);
|
||||
plugin->videopad = srcpad;
|
||||
}else{
|
||||
g_warning("swfdec: request new pad with bad template\n");
|
||||
|
|
|
@ -124,7 +124,7 @@ gst_tarkinenc_sinkconnect (GstPad *pad, GstCaps *caps)
|
|||
tarkinenc = GST_TARKINENC (gst_pad_get_parent (pad));
|
||||
|
||||
if (!GST_CAPS_IS_FIXED (caps))
|
||||
return GST_PAD_CONNECT_DELAYED;
|
||||
return GST_PAD_LINK_DELAYED;
|
||||
|
||||
gst_caps_debug (caps, "caps to be set on tarkin sink pad");
|
||||
|
||||
|
@ -139,9 +139,9 @@ gst_tarkinenc_sinkconnect (GstPad *pad, GstCaps *caps)
|
|||
gst_tarkinenc_setup (tarkinenc);
|
||||
|
||||
if (tarkinenc->setup)
|
||||
return GST_PAD_CONNECT_OK;
|
||||
return GST_PAD_LINK_OK;
|
||||
|
||||
return GST_PAD_CONNECT_REFUSED;
|
||||
return GST_PAD_LINK_REFUSED;
|
||||
}
|
||||
|
||||
static void
|
||||
|
@ -150,7 +150,7 @@ gst_tarkinenc_init (TarkinEnc * tarkinenc)
|
|||
tarkinenc->sinkpad = gst_pad_new_from_template (enc_sink_template, "sink");
|
||||
gst_element_add_pad (GST_ELEMENT (tarkinenc), tarkinenc->sinkpad);
|
||||
gst_pad_set_chain_function (tarkinenc->sinkpad, gst_tarkinenc_chain);
|
||||
gst_pad_set_connect_function (tarkinenc->sinkpad, gst_tarkinenc_sinkconnect);
|
||||
gst_pad_set_link_function (tarkinenc->sinkpad, gst_tarkinenc_sinkconnect);
|
||||
|
||||
tarkinenc->srcpad = gst_pad_new_from_template (enc_src_template, "src");
|
||||
gst_element_add_pad (GST_ELEMENT (tarkinenc), tarkinenc->srcpad);
|
||||
|
|
|
@ -454,8 +454,8 @@ gst_media_info_find_type (GstMediaInfo *info, const char *location)
|
|||
|
||||
gst_bin_add (GST_BIN (priv->pipeline), priv->typefind);
|
||||
g_object_set (G_OBJECT (priv->source), "location", location, NULL);
|
||||
if (!gst_element_connect (priv->source, priv->typefind))
|
||||
g_warning ("Couldn't connect source and typefind\n");
|
||||
if (!gst_element_link (priv->source, priv->typefind))
|
||||
g_warning ("Couldn't link source and typefind\n");
|
||||
g_signal_connect (G_OBJECT (priv->typefind), "have-type",
|
||||
G_CALLBACK (have_type_callback), info);
|
||||
if (gst_element_set_state (priv->pipeline, GST_STATE_PLAYING)
|
||||
|
@ -469,7 +469,7 @@ gst_media_info_find_type (GstMediaInfo *info, const char *location)
|
|||
|
||||
/*clear up typefind */
|
||||
gst_element_set_state (priv->pipeline, GST_STATE_READY);
|
||||
gst_element_disconnect (priv->source, priv->typefind);
|
||||
gst_element_unlink (priv->source, priv->typefind);
|
||||
gst_bin_remove (GST_BIN (priv->pipeline), priv->typefind);
|
||||
}
|
||||
/* get properties of complete physical stream
|
||||
|
@ -683,7 +683,7 @@ gst_media_info_clear_decoder (GstMediaInfo *info)
|
|||
/* clear up decoder */
|
||||
/* FIXME: shouldn't need to set state here */
|
||||
gst_element_set_state (info->priv->pipeline, GST_STATE_READY);
|
||||
gst_element_disconnect (info->priv->source, info->priv->decoder);
|
||||
gst_element_unlink (info->priv->source, info->priv->decoder);
|
||||
gst_bin_remove (GST_BIN (info->priv->pipeline), info->priv->decoder);
|
||||
info->priv->decoder = NULL;
|
||||
}
|
||||
|
@ -701,9 +701,9 @@ gst_media_info_set_decoder (GstMediaInfo *info, GstElement *decoder)
|
|||
/* set up pipeline and connect signal handlers */
|
||||
priv->decoder = decoder;
|
||||
gst_bin_add (GST_BIN (priv->pipeline), decoder);
|
||||
if (!gst_element_connect (priv->source, decoder))
|
||||
g_warning ("Couldn't connect source and decoder\n");
|
||||
/* FIXME: we should be connecting to ALL possible src pads */
|
||||
if (!gst_element_link (priv->source, decoder))
|
||||
g_warning ("Couldn't link source and decoder\n");
|
||||
/* FIXME: we should be link to ALL possible src pads */
|
||||
if (!(priv->decoder_pad = gst_element_get_pad (decoder, "src")))
|
||||
g_warning ("Couldn't get decoder pad\n");
|
||||
if (!(priv->source_pad = gst_element_get_pad (priv->source, "src")))
|
||||
|
|
|
@ -65,7 +65,7 @@ gst_play_audio_setup (GstPlay *play, GError **error)
|
|||
GST_BIN (play->pipeline), play->volume,
|
||||
play->audio_sink, NULL);
|
||||
|
||||
gst_element_connect (play->volume, play->audio_sink);
|
||||
gst_element_link (play->volume, play->audio_sink);
|
||||
|
||||
gst_bin_set_pre_iterate_function(
|
||||
GST_BIN (play->pipeline),
|
||||
|
@ -126,7 +126,7 @@ gst_play_audiot_setup (GstPlay *play, GError **error)
|
|||
GST_BIN (play->pipeline), play->volume,
|
||||
play->audio_sink, NULL);
|
||||
|
||||
gst_element_connect (play->volume, play->audio_sink);
|
||||
gst_element_link (play->volume, play->audio_sink);
|
||||
|
||||
gst_bin_set_pre_iterate_function(
|
||||
GST_BIN (play->pipeline),
|
||||
|
@ -150,13 +150,13 @@ gst_play_audiot_set_audio (GstPlay *play, GstElement *audio_sink)
|
|||
|
||||
if (play->audio_sink)
|
||||
{
|
||||
gst_element_disconnect (play->volume, play->audio_sink);
|
||||
gst_element_unlink (play->volume, play->audio_sink);
|
||||
gst_bin_remove (GST_BIN (play->pipeline), play->audio_sink);
|
||||
}
|
||||
|
||||
play->audio_sink = audio_sink;
|
||||
gst_bin_add (GST_BIN (play->pipeline), play->audio_sink);
|
||||
gst_element_connect (play->volume, play->audio_sink);
|
||||
gst_element_link (play->volume, play->audio_sink);
|
||||
|
||||
play->audio_sink_element = gst_play_get_sink_element (play, audio_sink);
|
||||
|
||||
|
@ -178,8 +178,8 @@ gst_play_audiot_set_auto (GstPlay *play, GstElement *autoplugger)
|
|||
|
||||
if (play->autoplugger) {
|
||||
/* we need to remove the existing autoplugger before creating a new one */
|
||||
gst_element_disconnect (play->autoplugger, play->volume);
|
||||
gst_element_disconnect (play->autoplugger, play->source);
|
||||
gst_element_unlink (play->autoplugger, play->volume);
|
||||
gst_element_unlink (play->autoplugger, play->source);
|
||||
gst_bin_remove (GST_BIN (play->pipeline), play->autoplugger);
|
||||
}
|
||||
|
||||
|
@ -187,8 +187,8 @@ gst_play_audiot_set_auto (GstPlay *play, GstElement *autoplugger)
|
|||
g_return_val_if_fail (play->autoplugger != NULL, FALSE);
|
||||
|
||||
gst_bin_add (GST_BIN (play->pipeline), play->autoplugger);
|
||||
gst_element_connect (play->source, play->autoplugger);
|
||||
gst_element_connect (play->autoplugger, play->volume);
|
||||
gst_element_link (play->source, play->autoplugger);
|
||||
gst_element_link (play->autoplugger, play->volume);
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
|
@ -260,7 +260,7 @@ gst_play_audioht_setup (GstPlay *play, GError **error)
|
|||
GST_BIN (audio_thread), audio_queue, play->volume,
|
||||
play->audio_sink, NULL);
|
||||
|
||||
gst_element_connect_many (audio_queue, play->volume, play->audio_sink);
|
||||
gst_element_link_many (audio_queue, play->volume, play->audio_sink);
|
||||
|
||||
gst_element_add_ghost_pad (
|
||||
audio_thread, gst_element_get_pad (audio_queue, "sink"),
|
||||
|
@ -294,13 +294,13 @@ gst_play_audioht_set_audio (GstPlay *play, GstElement *audio_sink)
|
|||
|
||||
if (play->audio_sink)
|
||||
{
|
||||
gst_element_disconnect (play->volume, play->audio_sink);
|
||||
gst_element_unlink (play->volume, play->audio_sink);
|
||||
gst_bin_remove (GST_BIN (audio_thread), play->audio_sink);
|
||||
}
|
||||
|
||||
play->audio_sink = audio_sink;
|
||||
gst_bin_add (GST_BIN (audio_thread), play->audio_sink);
|
||||
gst_element_connect (play->volume, play->audio_sink);
|
||||
gst_element_link (play->volume, play->audio_sink);
|
||||
|
||||
play->audio_sink_element = gst_play_get_sink_element (play, audio_sink);
|
||||
|
||||
|
@ -325,8 +325,8 @@ gst_play_audioht_set_auto (GstPlay *play, GstElement *autoplugger)
|
|||
|
||||
if (play->autoplugger) {
|
||||
/* we need to remove the existing autoplugger before creating a new one */
|
||||
gst_element_disconnect (play->autoplugger, audio_thread);
|
||||
gst_element_disconnect (play->autoplugger, play->source);
|
||||
gst_element_unlink (play->autoplugger, audio_thread);
|
||||
gst_element_unlink (play->autoplugger, play->source);
|
||||
gst_bin_remove (GST_BIN (play->pipeline), play->autoplugger);
|
||||
}
|
||||
|
||||
|
@ -334,8 +334,8 @@ gst_play_audioht_set_auto (GstPlay *play, GstElement *autoplugger)
|
|||
g_return_val_if_fail (play->autoplugger != NULL, FALSE);
|
||||
|
||||
gst_bin_add (GST_BIN (play->pipeline), play->autoplugger);
|
||||
gst_element_connect (play->source, play->autoplugger);
|
||||
gst_element_connect (play->autoplugger, audio_thread);
|
||||
gst_element_link (play->source, play->autoplugger);
|
||||
gst_element_link (play->autoplugger, audio_thread);
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
|
@ -423,7 +423,7 @@ gst_play_video_setup (GstPlay *play, GError **error)
|
|||
gst_bin_add_many (
|
||||
GST_BIN (audio_bin), audio_queue, play->volume,
|
||||
play->audio_sink, NULL);
|
||||
gst_element_connect_many (audio_queue, play->volume,
|
||||
gst_element_link_many (audio_queue, play->volume,
|
||||
play->audio_sink, NULL);
|
||||
|
||||
gst_element_add_ghost_pad (
|
||||
|
@ -470,7 +470,7 @@ gst_play_video_setup (GstPlay *play, GError **error)
|
|||
gst_bin_add_many (GST_BIN (video_bin), video_queue, colorspace,
|
||||
play->video_sink, NULL);
|
||||
|
||||
gst_element_connect_many (video_queue, colorspace,
|
||||
gst_element_link_many (video_queue, colorspace,
|
||||
play->video_sink, NULL);
|
||||
|
||||
/* setting up iterate functions */
|
||||
|
@ -508,9 +508,9 @@ gst_play_video_set_auto (GstPlay *play, GstElement *autoplugger)
|
|||
|
||||
if (play->autoplugger) {
|
||||
/* we need to remove the existing autoplugger before creating a new one */
|
||||
gst_element_disconnect (play->autoplugger, audio_bin);
|
||||
gst_element_disconnect (play->autoplugger, play->source);
|
||||
gst_element_disconnect (play->autoplugger, video_bin);
|
||||
gst_element_unlink (play->autoplugger, audio_bin);
|
||||
gst_element_unlink (play->autoplugger, play->source);
|
||||
gst_element_unlink (play->autoplugger, video_bin);
|
||||
|
||||
gst_bin_remove (GST_BIN (work_thread), play->autoplugger);
|
||||
}
|
||||
|
@ -519,9 +519,9 @@ gst_play_video_set_auto (GstPlay *play, GstElement *autoplugger)
|
|||
g_return_val_if_fail (play->autoplugger != NULL, FALSE);
|
||||
|
||||
gst_bin_add (GST_BIN (work_thread), play->autoplugger);
|
||||
gst_element_connect (play->source, play->autoplugger);
|
||||
gst_element_connect (play->autoplugger, audio_bin);
|
||||
gst_element_connect (play->autoplugger, video_bin);
|
||||
gst_element_link (play->source, play->autoplugger);
|
||||
gst_element_link (play->autoplugger, audio_bin);
|
||||
gst_element_link (play->autoplugger, video_bin);
|
||||
|
||||
return TRUE;
|
||||
}
|
||||
|
@ -539,12 +539,12 @@ gst_play_video_set_video (GstPlay *play, GstElement *video_sink)
|
|||
video_mate = g_hash_table_lookup(play->other_elements, "colorspace");
|
||||
|
||||
if (play->video_sink) {
|
||||
gst_element_disconnect (video_mate, play->video_sink);
|
||||
gst_element_unlink (video_mate, play->video_sink);
|
||||
gst_bin_remove (GST_BIN (video_bin), play->video_sink);
|
||||
}
|
||||
play->video_sink = video_sink;
|
||||
gst_bin_add (GST_BIN (video_bin), play->video_sink);
|
||||
gst_element_connect (video_mate, play->video_sink);
|
||||
gst_element_link (video_mate, play->video_sink);
|
||||
|
||||
play->video_sink_element = gst_play_get_sink_element (play, video_sink);
|
||||
|
||||
|
@ -571,13 +571,13 @@ gst_play_video_set_audio (GstPlay *play, GstElement *audio_sink)
|
|||
|
||||
if (play->audio_sink)
|
||||
{
|
||||
gst_element_disconnect (play->volume, play->audio_sink);
|
||||
gst_element_unlink (play->volume, play->audio_sink);
|
||||
gst_bin_remove (GST_BIN (audio_bin), play->audio_sink);
|
||||
}
|
||||
|
||||
play->audio_sink = audio_sink;
|
||||
gst_bin_add (GST_BIN (audio_bin), play->audio_sink);
|
||||
gst_element_connect (play->volume, play->audio_sink);
|
||||
gst_element_link (play->volume, play->audio_sink);
|
||||
|
||||
play->audio_sink_element = gst_play_get_sink_element (play, audio_sink);
|
||||
|
||||
|
@ -679,7 +679,7 @@ gst_play_videots_setup (GstPlay *play, GError **error)
|
|||
GST_BIN (audio_bin), audio_queue,
|
||||
play->volume, play->audio_sink, NULL);
|
||||
|
||||
gst_element_connect_many (
|
||||
gst_element_link_many (
|
||||
audio_queue, play->volume,
|
||||
play->audio_sink, NULL);
|
||||
|
||||
|
@ -714,7 +714,7 @@ gst_play_videots_setup (GstPlay *play, GError **error)
|
|||
GST_BIN (play->pipeline), video_queue,
|
||||
play->video_sink, NULL);
|
||||
|
||||
gst_element_connect (video_queue, play->video_sink);
|
||||
gst_element_link (video_queue, play->video_sink);
|
||||
|
||||
gst_bin_set_pre_iterate_function(
|
||||
GST_BIN (play->pipeline),
|
||||
|
@ -726,7 +726,7 @@ gst_play_videots_setup (GstPlay *play, GError **error)
|
|||
(GstBinPrePostIterateFunction) callback_bin_post_iterate,
|
||||
play->video_bin_mutex);
|
||||
|
||||
gst_element_connect (work_thread, video_queue);
|
||||
gst_element_link (work_thread, video_queue);
|
||||
|
||||
return TRUE;
|
||||
}
|
||||
|
@ -748,9 +748,9 @@ gst_play_videots_set_auto (GstPlay *play, GstElement *autoplugger)
|
|||
if (play->autoplugger) {
|
||||
/* we need to remove the existing autoplugger
|
||||
* before creating a new one */
|
||||
gst_element_disconnect (play->autoplugger, audio_bin);
|
||||
gst_element_disconnect (play->autoplugger, play->source);
|
||||
gst_element_disconnect (play->autoplugger, auto_identity);
|
||||
gst_element_unlink (play->autoplugger, audio_bin);
|
||||
gst_element_unlink (play->autoplugger, play->source);
|
||||
gst_element_unlink (play->autoplugger, auto_identity);
|
||||
|
||||
gst_bin_remove (GST_BIN (work_thread), play->autoplugger);
|
||||
}
|
||||
|
@ -759,9 +759,9 @@ gst_play_videots_set_auto (GstPlay *play, GstElement *autoplugger)
|
|||
g_return_val_if_fail (play->autoplugger != NULL, FALSE);
|
||||
|
||||
gst_bin_add (GST_BIN (work_thread), play->autoplugger);
|
||||
gst_element_connect (play->source, play->autoplugger);
|
||||
gst_element_connect (play->autoplugger, audio_bin);
|
||||
gst_element_connect (play->autoplugger, auto_identity);
|
||||
gst_element_link (play->source, play->autoplugger);
|
||||
gst_element_link (play->autoplugger, audio_bin);
|
||||
gst_element_link (play->autoplugger, auto_identity);
|
||||
|
||||
return TRUE;
|
||||
}
|
||||
|
@ -778,12 +778,12 @@ gst_play_videots_set_video (GstPlay *play, GstElement *video_sink)
|
|||
video_mate = g_hash_table_lookup (play->other_elements, "video_queue");
|
||||
|
||||
if (play->video_sink) {
|
||||
gst_element_disconnect (video_mate, play->video_sink);
|
||||
gst_element_unlink (video_mate, play->video_sink);
|
||||
gst_bin_remove (GST_BIN (play->pipeline), play->video_sink);
|
||||
}
|
||||
play->video_sink = video_sink;
|
||||
gst_bin_add (GST_BIN (play->pipeline), play->video_sink);
|
||||
gst_element_connect (video_mate, play->video_sink);
|
||||
gst_element_link (video_mate, play->video_sink);
|
||||
|
||||
return TRUE;
|
||||
}
|
||||
|
@ -801,13 +801,13 @@ gst_play_videots_set_audio (GstPlay *play, GstElement *audio_sink)
|
|||
|
||||
if (play->audio_sink)
|
||||
{
|
||||
gst_element_disconnect (play->volume, play->audio_sink);
|
||||
gst_element_unlink (play->volume, play->audio_sink);
|
||||
gst_bin_remove (GST_BIN (audio_bin), play->audio_sink);
|
||||
}
|
||||
|
||||
play->audio_sink = audio_sink;
|
||||
gst_bin_add (GST_BIN (audio_bin), play->audio_sink);
|
||||
gst_element_connect (play->volume, play->audio_sink);
|
||||
gst_element_link (play->volume, play->audio_sink);
|
||||
|
||||
play->audio_sink_element = gst_play_get_sink_element (play, audio_sink);
|
||||
|
||||
|
|
|
@ -213,7 +213,7 @@ gst_chart_init (GstChart *chart)
|
|||
gst_element_add_pad (GST_ELEMENT (chart), chart->srcpad);
|
||||
|
||||
gst_pad_set_chain_function (chart->sinkpad, gst_chart_chain);
|
||||
gst_pad_set_connect_function (chart->sinkpad, gst_chart_sinkconnect);
|
||||
gst_pad_set_link_function (chart->sinkpad, gst_chart_sinkconnect);
|
||||
|
||||
chart->next_time = 0;
|
||||
chart->peerpool = NULL;
|
||||
|
@ -244,7 +244,7 @@ gst_chart_sinkconnect (GstPad *pad, GstCaps *caps)
|
|||
chart->samplerate);
|
||||
/*gst_chart_sync_parms (chart); */
|
||||
/* */
|
||||
return GST_PAD_CONNECT_OK;
|
||||
return GST_PAD_LINK_OK;
|
||||
}
|
||||
|
||||
static void
|
||||
|
|
|
@ -146,7 +146,7 @@ gst_deinterlace_sinkconnect (GstPad *pad, GstCaps *caps)
|
|||
filter = GST_DEINTERLACE(gst_pad_get_parent (pad));
|
||||
|
||||
if (!GST_CAPS_IS_FIXED (caps))
|
||||
return GST_PAD_CONNECT_DELAYED;
|
||||
return GST_PAD_LINK_DELAYED;
|
||||
|
||||
gst_caps_get_int (caps, "width", &filter->width);
|
||||
gst_caps_get_int (caps, "height", &filter->height);
|
||||
|
@ -165,7 +165,7 @@ gst_deinterlace_init (GstDeInterlace *filter)
|
|||
{
|
||||
filter->sinkpad = gst_pad_new_from_template(deinterlace_sink_factory (),"sink");
|
||||
gst_pad_set_chain_function(filter->sinkpad,gst_deinterlace_chain);
|
||||
gst_pad_set_connect_function(filter->sinkpad,gst_deinterlace_sinkconnect);
|
||||
gst_pad_set_link_function(filter->sinkpad,gst_deinterlace_sinkconnect);
|
||||
gst_element_add_pad(GST_ELEMENT(filter),filter->sinkpad);
|
||||
|
||||
filter->srcpad = gst_pad_new_from_template(deinterlace_src_factory (),"src");
|
||||
|
|
|
@ -162,7 +162,7 @@ gst_bpwsinc_init (GstBPWSinc * filter)
|
|||
{
|
||||
filter->sinkpad = gst_pad_new_from_template (gst_filter_sink_factory (), "sink");
|
||||
gst_pad_set_chain_function (filter->sinkpad, gst_bpwsinc_chain);
|
||||
gst_pad_set_connect_function (filter->sinkpad, gst_bpwsinc_sink_connect);
|
||||
gst_pad_set_link_function (filter->sinkpad, gst_bpwsinc_sink_connect);
|
||||
gst_element_add_pad (GST_ELEMENT (filter), filter->sinkpad);
|
||||
|
||||
filter->srcpad = gst_pad_new_from_template (gst_filter_src_factory (), "src");
|
||||
|
@ -189,7 +189,7 @@ gst_bpwsinc_sink_connect (GstPad * pad, GstCaps * caps)
|
|||
g_assert (caps != NULL);
|
||||
|
||||
if (!GST_CAPS_IS_FIXED (caps))
|
||||
return GST_PAD_CONNECT_DELAYED;
|
||||
return GST_PAD_LINK_DELAYED;
|
||||
|
||||
set_retval = gst_pad_try_set_caps (filter->srcpad, caps);
|
||||
|
||||
|
|
|
@ -148,7 +148,7 @@ gst_iir_init (GstIIR * filter)
|
|||
{
|
||||
filter->sinkpad = gst_pad_new_from_template (gst_filter_sink_factory (), "sink");
|
||||
gst_pad_set_chain_function (filter->sinkpad, gst_iir_chain);
|
||||
gst_pad_set_connect_function (filter->sinkpad, gst_iir_sink_connect);
|
||||
gst_pad_set_link_function (filter->sinkpad, gst_iir_sink_connect);
|
||||
gst_element_add_pad (GST_ELEMENT (filter), filter->sinkpad);
|
||||
|
||||
filter->srcpad = gst_pad_new_from_template (gst_filter_src_factory (), "src");
|
||||
|
@ -170,7 +170,7 @@ gst_iir_sink_connect (GstPad * pad, GstCaps * caps)
|
|||
filter = GST_IIR (gst_pad_get_parent (pad));
|
||||
|
||||
if (!GST_CAPS_IS_FIXED (caps))
|
||||
return GST_PAD_CONNECT_DELAYED;
|
||||
return GST_PAD_LINK_DELAYED;
|
||||
|
||||
set_retval = gst_pad_try_set_caps(filter->srcpad, caps);
|
||||
if (set_retval > 0) {
|
||||
|
|
|
@ -154,7 +154,7 @@ gst_lpwsinc_init (GstLPWSinc * filter)
|
|||
{
|
||||
filter->sinkpad = gst_pad_new_from_template (gst_filter_sink_factory (), "sink");
|
||||
gst_pad_set_chain_function (filter->sinkpad, gst_lpwsinc_chain);
|
||||
gst_pad_set_connect_function (filter->sinkpad, gst_lpwsinc_sink_connect);
|
||||
gst_pad_set_link_function (filter->sinkpad, gst_lpwsinc_sink_connect);
|
||||
gst_element_add_pad (GST_ELEMENT (filter), filter->sinkpad);
|
||||
|
||||
filter->srcpad = gst_pad_new_from_template (gst_filter_src_factory (), "src");
|
||||
|
@ -178,7 +178,7 @@ gst_lpwsinc_sink_connect (GstPad * pad, GstCaps * caps)
|
|||
g_assert (caps != NULL);
|
||||
|
||||
if (!GST_CAPS_IS_FIXED (caps))
|
||||
return GST_PAD_CONNECT_DELAYED;
|
||||
return GST_PAD_LINK_DELAYED;
|
||||
|
||||
set_retval = gst_pad_try_set_caps(filter->srcpad, caps);
|
||||
|
||||
|
|
|
@ -307,20 +307,20 @@ gst_mixmatrix_connect (GstPad *pad, GstCaps *caps)
|
|||
gint i;
|
||||
|
||||
if (!GST_CAPS_IS_FIXED(caps) || GST_PAD_IS_SRC (pad)) {
|
||||
return GST_PAD_CONNECT_DELAYED;
|
||||
return GST_PAD_LINK_DELAYED;
|
||||
}
|
||||
|
||||
for (i=0;i<mix->srcpadalloc;i++) {
|
||||
if (mix->srcpads[i]) {
|
||||
if (GST_PAD_CAPS(mix->srcpads[i]) == NULL)
|
||||
if (gst_pad_try_set_caps(mix->srcpads[i], caps) <= 0)
|
||||
return GST_PAD_CONNECT_REFUSED;
|
||||
return GST_PAD_LINK_REFUSED;
|
||||
}
|
||||
}
|
||||
|
||||
mix->caps = caps;
|
||||
|
||||
return GST_PAD_CONNECT_OK;
|
||||
return GST_PAD_LINK_OK;
|
||||
}
|
||||
|
||||
static GstPad *
|
||||
|
@ -348,8 +348,8 @@ gst_mixmatrix_request_new_pad (GstElement *element, GstPadTemplate *templ, const
|
|||
pad = gst_pad_new_from_template(sinktempl, name);
|
||||
GST_PAD_ELEMENT_PRIVATE(pad) = GINT_TO_POINTER(padnum);
|
||||
gst_element_add_pad(GST_ELEMENT(mix), pad);
|
||||
// g_signal_connect(G_OBJECT(pad), "disconnect", G_CALLBACK(sink_disconnected), mix);
|
||||
gst_pad_set_connect_function (pad, gst_mixmatrix_connect);
|
||||
// g_signal_connect(G_OBJECT(pad), "unlink", G_CALLBACK(sink_unlinked), mix);
|
||||
gst_pad_set_link_function (pad, gst_mixmatrix_connect);
|
||||
|
||||
// create a bytestream for it
|
||||
mix->sinkbs[padnum] = gst_bytestream_new(pad);
|
||||
|
@ -371,8 +371,8 @@ gst_mixmatrix_request_new_pad (GstElement *element, GstPadTemplate *templ, const
|
|||
pad = gst_pad_new_from_template(srctempl, name);
|
||||
GST_PAD_ELEMENT_PRIVATE(pad) = GINT_TO_POINTER(padnum);
|
||||
gst_element_add_pad(GST_ELEMENT(mix), pad);
|
||||
// g_signal_connect(G_OBJECT(pad), "disconnect", G_CALLBACK(sink_disconnected), mix);
|
||||
//gst_pad_set_connect_function (pad, gst_mixmatrix_connect);
|
||||
// g_signal_connect(G_OBJECT(pad), "unlink", G_CALLBACK(sink_unlinked), mix);
|
||||
//gst_pad_set_link_function (pad, gst_mixmatrix_connect);
|
||||
|
||||
// store away the pad and account for it
|
||||
mix->srcpads[padnum] = pad;
|
||||
|
|
|
@ -115,12 +115,12 @@ passthrough_connect_sink (GstPad *pad, GstCaps *caps)
|
|||
const gchar *format;
|
||||
GstPassthrough *filter;
|
||||
|
||||
g_return_val_if_fail (pad != NULL, GST_PAD_CONNECT_DELAYED);
|
||||
g_return_val_if_fail (caps != NULL, GST_PAD_CONNECT_DELAYED);
|
||||
g_return_val_if_fail (pad != NULL, GST_PAD_LINK_DELAYED);
|
||||
g_return_val_if_fail (caps != NULL, GST_PAD_LINK_DELAYED);
|
||||
|
||||
filter = GST_PASSTHROUGH (gst_pad_get_parent (pad));
|
||||
g_return_val_if_fail (filter != NULL, GST_PAD_CONNECT_REFUSED);
|
||||
g_return_val_if_fail (GST_IS_PASSTHROUGH (filter), GST_PAD_CONNECT_REFUSED);
|
||||
g_return_val_if_fail (filter != NULL, GST_PAD_LINK_REFUSED);
|
||||
g_return_val_if_fail (GST_IS_PASSTHROUGH (filter), GST_PAD_LINK_REFUSED);
|
||||
|
||||
gst_caps_get_string(caps, "format", &format);
|
||||
|
||||
|
@ -157,7 +157,7 @@ passthrough_connect_sink (GstPad *pad, GstCaps *caps)
|
|||
|
||||
if (GST_CAPS_IS_FIXED (caps))
|
||||
return gst_pad_try_set_caps (filter->srcpad, caps);
|
||||
return GST_PAD_CONNECT_DELAYED;
|
||||
return GST_PAD_LINK_DELAYED;
|
||||
}
|
||||
|
||||
GType
|
||||
|
@ -208,7 +208,7 @@ passthrough_init (GstPassthrough *filter)
|
|||
filter->sinkpad = gst_pad_new_from_template (passthrough_sink_factory (),"sink");
|
||||
gst_element_add_pad (GST_ELEMENT (filter), filter->sinkpad);
|
||||
|
||||
gst_pad_set_connect_function (filter->sinkpad, passthrough_connect_sink);
|
||||
gst_pad_set_link_function (filter->sinkpad, passthrough_connect_sink);
|
||||
gst_pad_set_bufferpool_function (filter->sinkpad, passthrough_get_bufferpool);
|
||||
gst_pad_set_chain_function (filter->sinkpad, passthrough_chain);
|
||||
|
||||
|
|
|
@ -53,7 +53,7 @@ setup_pipeline (gchar *filename)
|
|||
pipeline = gst_pipeline_new("app");
|
||||
|
||||
gst_bin_add_many(GST_BIN(pipeline), src, mad, pod, osssink, NULL);
|
||||
gst_element_connect_many(src, mad, pod, osssink, NULL);
|
||||
gst_element_link_many(src, mad, pod, osssink, NULL);
|
||||
|
||||
element_clock = gst_bin_get_clock(GST_BIN(pipeline));
|
||||
gst_element_set_clock(GST_ELEMENT(pod), element_clock);
|
||||
|
|
|
@ -141,8 +141,8 @@ play_on_demand_pad_connect (GstPad *pad, GstCaps *caps)
|
|||
const gchar *format;
|
||||
GstPlayOnDemand *filter;
|
||||
|
||||
g_return_val_if_fail(caps != NULL, GST_PAD_CONNECT_DELAYED);
|
||||
g_return_val_if_fail(pad != NULL, GST_PAD_CONNECT_DELAYED);
|
||||
g_return_val_if_fail(caps != NULL, GST_PAD_LINK_DELAYED);
|
||||
g_return_val_if_fail(pad != NULL, GST_PAD_LINK_DELAYED);
|
||||
|
||||
filter = GST_PLAYONDEMAND(GST_PAD_PARENT(pad));
|
||||
|
||||
|
@ -188,7 +188,7 @@ play_on_demand_pad_connect (GstPad *pad, GstCaps *caps)
|
|||
|
||||
if (GST_CAPS_IS_FIXED (caps))
|
||||
return gst_pad_try_set_caps (filter->srcpad, caps);
|
||||
return GST_PAD_CONNECT_DELAYED;
|
||||
return GST_PAD_LINK_DELAYED;
|
||||
}
|
||||
|
||||
GType
|
||||
|
@ -282,7 +282,7 @@ play_on_demand_init (GstPlayOnDemand *filter)
|
|||
filter->sinkpad = gst_pad_new_from_template(play_on_demand_sink_factory(), "sink");
|
||||
|
||||
gst_pad_set_bufferpool_function(filter->sinkpad, play_on_demand_get_bufferpool);
|
||||
gst_pad_set_connect_function(filter->sinkpad, play_on_demand_pad_connect);
|
||||
gst_pad_set_link_function(filter->sinkpad, play_on_demand_pad_connect);
|
||||
|
||||
gst_element_add_pad(GST_ELEMENT(filter), filter->sinkpad);
|
||||
gst_element_add_pad(GST_ELEMENT(filter), filter->srcpad);
|
||||
|
|
|
@ -687,7 +687,7 @@ gst_qtp_traverse(gpointer poffs,gpointer value,gpointer data)
|
|||
|
||||
if (qtdemux->bs_pos < sample->offset) {
|
||||
gst_qtp_skip(qtdemux,sample->offset - qtdemux->bs_pos);
|
||||
if (sample->track->pad && GST_PAD_IS_CONNECTED(sample->track->pad)) {
|
||||
if (sample->track->pad && GST_PAD_IS_LINKED(sample->track->pad)) {
|
||||
GstBuffer * buf;
|
||||
buf = gst_qtp_read(qtdemux,sample->size);
|
||||
GST_BUFFER_TIMESTAMP(buf) = sample->timestamp;
|
||||
|
|
|
@ -136,12 +136,12 @@ gst_smooth_sinkconnect (GstPad *pad, GstCaps *caps)
|
|||
filter = GST_SMOOTH (gst_pad_get_parent (pad));
|
||||
|
||||
if (!GST_CAPS_IS_FIXED (caps))
|
||||
return GST_PAD_CONNECT_DELAYED;
|
||||
return GST_PAD_LINK_DELAYED;
|
||||
|
||||
gst_caps_get_int (caps, "width", &filter->width);
|
||||
gst_caps_get_int (caps, "height", &filter->height);
|
||||
|
||||
return GST_PAD_CONNECT_OK;
|
||||
return GST_PAD_LINK_OK;
|
||||
}
|
||||
|
||||
static void
|
||||
|
@ -149,7 +149,7 @@ gst_smooth_init (GstSmooth *smooth)
|
|||
{
|
||||
smooth->sinkpad = gst_pad_new_from_template (
|
||||
GST_PAD_TEMPLATE_GET (smooth_sink_factory), "sink");
|
||||
gst_pad_set_connect_function (smooth->sinkpad, gst_smooth_sinkconnect);
|
||||
gst_pad_set_link_function (smooth->sinkpad, gst_smooth_sinkconnect);
|
||||
gst_pad_set_chain_function (smooth->sinkpad, gst_smooth_chain);
|
||||
gst_element_add_pad (GST_ELEMENT (smooth), smooth->sinkpad);
|
||||
|
||||
|
|
|
@ -228,7 +228,7 @@ gst_smpte_sinkconnect (GstPad *pad, GstCaps *caps)
|
|||
smpte = GST_SMPTE (gst_pad_get_parent (pad));
|
||||
|
||||
if (!GST_CAPS_IS_FIXED (caps))
|
||||
return GST_PAD_CONNECT_DELAYED;
|
||||
return GST_PAD_LINK_DELAYED;
|
||||
|
||||
gst_caps_get_int (caps, "width", &smpte->width);
|
||||
gst_caps_get_int (caps, "height", &smpte->height);
|
||||
|
@ -244,12 +244,12 @@ gst_smpte_init (GstSMPTE *smpte)
|
|||
{
|
||||
smpte->sinkpad1 = gst_pad_new_from_template (
|
||||
GST_PAD_TEMPLATE_GET (smpte_sink1_factory), "sink1");
|
||||
gst_pad_set_connect_function (smpte->sinkpad1, gst_smpte_sinkconnect);
|
||||
gst_pad_set_link_function (smpte->sinkpad1, gst_smpte_sinkconnect);
|
||||
gst_element_add_pad (GST_ELEMENT (smpte), smpte->sinkpad1);
|
||||
|
||||
smpte->sinkpad2 = gst_pad_new_from_template (
|
||||
GST_PAD_TEMPLATE_GET (smpte_sink2_factory), "sink2");
|
||||
gst_pad_set_connect_function (smpte->sinkpad2, gst_smpte_sinkconnect);
|
||||
gst_pad_set_link_function (smpte->sinkpad2, gst_smpte_sinkconnect);
|
||||
gst_element_add_pad (GST_ELEMENT (smpte), smpte->sinkpad2);
|
||||
|
||||
smpte->srcpad = gst_pad_new_from_template (
|
||||
|
|
|
@ -49,7 +49,7 @@ int main(int argc, char **argv)
|
|||
|
||||
pipeline = gst_pipeline_new("app");
|
||||
gst_bin_add_many (GST_BIN(pipeline), filesrc, mad, stereo2mono, speed, osssink, NULL);
|
||||
gst_element_connect_many (filesrc, mad, stereo2mono, speed, osssink, NULL);
|
||||
gst_element_link_many (filesrc, mad, stereo2mono, speed, osssink, NULL);
|
||||
g_object_set(G_OBJECT(filesrc), "location", argv[1], NULL);
|
||||
|
||||
gst_element_set_state(pipeline, GST_STATE_PLAYING);
|
||||
|
|
|
@ -118,18 +118,18 @@ speed_connect (GstPad *pad, GstCaps *caps)
|
|||
GstPad *otherpad;
|
||||
|
||||
filter = GST_SPEED (gst_pad_get_parent (pad));
|
||||
g_return_val_if_fail (filter != NULL, GST_PAD_CONNECT_REFUSED);
|
||||
g_return_val_if_fail (GST_IS_SPEED (filter), GST_PAD_CONNECT_REFUSED);
|
||||
g_return_val_if_fail (filter != NULL, GST_PAD_LINK_REFUSED);
|
||||
g_return_val_if_fail (GST_IS_SPEED (filter), GST_PAD_LINK_REFUSED);
|
||||
otherpad = (pad == filter->srcpad ? filter->sinkpad : filter->srcpad);
|
||||
|
||||
if (GST_CAPS_IS_FIXED (caps)) {
|
||||
if (!speed_parse_caps (filter, caps))
|
||||
return GST_PAD_CONNECT_REFUSED;
|
||||
return GST_PAD_LINK_REFUSED;
|
||||
|
||||
return gst_pad_try_set_caps(otherpad, caps);
|
||||
}
|
||||
|
||||
return GST_PAD_CONNECT_DELAYED;
|
||||
return GST_PAD_LINK_DELAYED;
|
||||
}
|
||||
|
||||
static gboolean
|
||||
|
@ -225,10 +225,10 @@ static void
|
|||
speed_init (GstSpeed *filter)
|
||||
{
|
||||
filter->sinkpad = gst_pad_new_from_template(speed_sink_factory (),"sink");
|
||||
gst_pad_set_connect_function(filter->sinkpad,speed_connect);
|
||||
gst_pad_set_link_function(filter->sinkpad,speed_connect);
|
||||
gst_pad_set_bufferpool_function (filter->sinkpad, speed_sink_get_bufferpool);
|
||||
filter->srcpad = gst_pad_new_from_template(speed_src_factory (),"src");
|
||||
gst_pad_set_connect_function(filter->srcpad,speed_connect);
|
||||
gst_pad_set_link_function(filter->srcpad,speed_connect);
|
||||
|
||||
gst_element_add_pad(GST_ELEMENT(filter),filter->sinkpad);
|
||||
gst_element_add_pad(GST_ELEMENT(filter),filter->srcpad);
|
||||
|
|
|
@ -181,7 +181,7 @@ gst_video_crop_init (GstVideoCrop *video_crop)
|
|||
GST_PAD_TEMPLATE_GET (video_crop_sink_template_factory), "sink");
|
||||
gst_element_add_pad (GST_ELEMENT (video_crop), video_crop->sinkpad);
|
||||
gst_pad_set_chain_function (video_crop->sinkpad, GST_DEBUG_FUNCPTR (gst_video_crop_chain));
|
||||
gst_pad_set_connect_function (video_crop->sinkpad, GST_DEBUG_FUNCPTR (gst_video_crop_sink_connect));
|
||||
gst_pad_set_link_function (video_crop->sinkpad, GST_DEBUG_FUNCPTR (gst_video_crop_sink_connect));
|
||||
|
||||
video_crop->srcpad = gst_pad_new_from_template(
|
||||
GST_PAD_TEMPLATE_GET (video_crop_src_template_factory), "src");
|
||||
|
@ -260,7 +260,7 @@ gst_video_crop_sink_connect (GstPad *pad, GstCaps *caps)
|
|||
|
||||
/* we are not going to act on variable caps */
|
||||
if (!GST_CAPS_IS_FIXED (caps))
|
||||
return GST_PAD_CONNECT_DELAYED;
|
||||
return GST_PAD_LINK_DELAYED;
|
||||
|
||||
video_crop = GST_VIDEO_CROP (gst_pad_get_parent (pad));
|
||||
|
||||
|
@ -272,7 +272,7 @@ gst_video_crop_sink_connect (GstPad *pad, GstCaps *caps)
|
|||
if (video_crop->crop_height + video_crop->crop_y > video_crop->height)
|
||||
video_crop->crop_height = video_crop->height - video_crop->crop_y;
|
||||
|
||||
return GST_PAD_CONNECT_OK;
|
||||
return GST_PAD_LINK_OK;
|
||||
}
|
||||
|
||||
static void
|
||||
|
|
|
@ -139,7 +139,7 @@ gst_xsharpen_sinkconnect (GstPad * pad, GstCaps * caps)
|
|||
sharpen = GST_XSHARPEN (gst_pad_get_parent (pad));
|
||||
|
||||
if (!GST_CAPS_IS_FIXED (caps))
|
||||
return GST_PAD_CONNECT_DELAYED;
|
||||
return GST_PAD_LINK_DELAYED;
|
||||
|
||||
gst_caps_get_int (caps, "width", &sharpen->width);
|
||||
gst_caps_get_int (caps, "height", &sharpen->height);
|
||||
|
@ -156,7 +156,7 @@ gst_xsharpen_init (GstXsharpen * sharpen)
|
|||
{
|
||||
sharpen->sinkpad = gst_pad_new_from_template (gst_virtualdub_sink_factory (), "sink");
|
||||
gst_pad_set_chain_function (sharpen->sinkpad, gst_xsharpen_chain);
|
||||
gst_pad_set_connect_function (sharpen->sinkpad, gst_xsharpen_sinkconnect);
|
||||
gst_pad_set_link_function (sharpen->sinkpad, gst_xsharpen_sinkconnect);
|
||||
gst_element_add_pad (GST_ELEMENT (sharpen), sharpen->sinkpad);
|
||||
|
||||
sharpen->srcpad = gst_pad_new_from_template (gst_virtualdub_src_factory (), "src");
|
||||
|
|
|
@ -124,12 +124,12 @@ gst_lavencode_sinkconnect (GstPad *pad, GstCaps *caps)
|
|||
filter = GST_LAVENCODE (gst_pad_get_parent (pad));
|
||||
|
||||
if (!GST_CAPS_IS_FIXED (caps))
|
||||
return GST_PAD_CONNECT_DELAYED;
|
||||
return GST_PAD_LINK_DELAYED;
|
||||
|
||||
gst_caps_get_int (caps, "width", &filter->width);
|
||||
gst_caps_get_int (caps, "height", &filter->height);
|
||||
|
||||
return GST_PAD_CONNECT_OK;
|
||||
return GST_PAD_LINK_OK;
|
||||
}
|
||||
|
||||
static void
|
||||
|
@ -139,7 +139,7 @@ gst_lavencode_init (GstLavEncode *filter)
|
|||
GST_PAD_TEMPLATE_GET (lavencode_sink_factory), "sink");
|
||||
gst_element_add_pad (GST_ELEMENT (filter), filter->sinkpad);
|
||||
gst_pad_set_chain_function (filter->sinkpad, gst_lavencode_chain);
|
||||
gst_pad_set_connect_function (filter->sinkpad, gst_lavencode_sinkconnect);
|
||||
gst_pad_set_link_function (filter->sinkpad, gst_lavencode_sinkconnect);
|
||||
|
||||
filter->srcpad = gst_pad_new_from_template(
|
||||
GST_PAD_TEMPLATE_GET (lavencode_src_factory), "src");
|
||||
|
|
|
@ -185,7 +185,7 @@ gst_v4l2src_init (GstV4l2Src *v4l2src)
|
|||
gst_element_add_pad(GST_ELEMENT(v4l2src), v4l2src->srcpad);
|
||||
|
||||
gst_pad_set_get_function(v4l2src->srcpad, gst_v4l2src_get);
|
||||
gst_pad_set_connect_function(v4l2src->srcpad, gst_v4l2src_srcconnect);
|
||||
gst_pad_set_link_function(v4l2src->srcpad, gst_v4l2src_srcconnect);
|
||||
gst_pad_set_convert_function (v4l2src->srcpad, gst_v4l2src_srcconvert);
|
||||
gst_pad_set_getcaps_function (v4l2src->srcpad, gst_v4l2src_getcaps);
|
||||
|
||||
|
@ -594,9 +594,9 @@ gst_v4l2src_srcconnect (GstPad *pad,
|
|||
* capture session */
|
||||
if (GST_V4L2_IS_ACTIVE(v4l2element)) {
|
||||
if (!gst_v4l2src_capture_deinit(v4l2src))
|
||||
return GST_PAD_CONNECT_REFUSED;
|
||||
return GST_PAD_LINK_REFUSED;
|
||||
} else if (!GST_V4L2_IS_OPEN(v4l2element)) {
|
||||
return GST_PAD_CONNECT_DELAYED;
|
||||
return GST_PAD_LINK_DELAYED;
|
||||
}
|
||||
|
||||
/* build our own capslist */
|
||||
|
@ -604,11 +604,11 @@ gst_v4l2src_srcconnect (GstPad *pad,
|
|||
|
||||
/* and now, get the caps that we have in common */
|
||||
if (!(caps = gst_v4l2src_caps_intersect(owncapslist, vscapslist)))
|
||||
return GST_PAD_CONNECT_REFUSED;
|
||||
return GST_PAD_LINK_REFUSED;
|
||||
|
||||
/* and get them back to V4L2-compatible fourcc codes */
|
||||
if (!(fourccs = gst_v4l2_caps_to_v4l2fourcc(v4l2src, caps)))
|
||||
return GST_PAD_CONNECT_REFUSED;
|
||||
return GST_PAD_LINK_REFUSED;
|
||||
|
||||
/* we now have the fourcc codes. try out each of them */
|
||||
for (i=0;i<g_list_length(fourccs);i++) {
|
||||
|
@ -622,7 +622,7 @@ gst_v4l2src_srcconnect (GstPad *pad,
|
|||
v4l2src->width, v4l2src->height)) {
|
||||
/* it fits! Now, get the proper counterpart and retry
|
||||
* it on the other side (again...) - if it works, we're
|
||||
* done -> GST_PAD_CONNECT_OK */
|
||||
* done -> GST_PAD_LINK_OK */
|
||||
GstCaps *lastcaps = gst_v4l2src_v4l2fourcc_to_caps(format->pixelformat,
|
||||
v4l2src->format.fmt.pix.width, v4l2src->format.fmt.pix.height,
|
||||
format->flags & V4L2_FMT_FLAG_COMPRESSED);
|
||||
|
@ -632,9 +632,9 @@ gst_v4l2src_srcconnect (GstPad *pad,
|
|||
onecaps = gst_caps_copy_1(lastcaps);
|
||||
if ((ret_val = gst_pad_try_set_caps(v4l2src->srcpad, onecaps)) > 0) {
|
||||
if (gst_v4l2src_capture_init(v4l2src))
|
||||
return GST_PAD_CONNECT_DONE;
|
||||
} else if (ret_val == GST_PAD_CONNECT_DELAYED) {
|
||||
return GST_PAD_CONNECT_DELAYED;
|
||||
return GST_PAD_LINK_DONE;
|
||||
} else if (ret_val == GST_PAD_LINK_DELAYED) {
|
||||
return GST_PAD_LINK_DELAYED;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -642,7 +642,7 @@ gst_v4l2src_srcconnect (GstPad *pad,
|
|||
}
|
||||
}
|
||||
|
||||
return GST_PAD_CONNECT_REFUSED;
|
||||
return GST_PAD_LINK_REFUSED;
|
||||
}
|
||||
|
||||
|
||||
|
|
Loading…
Reference in a new issue