diff options
author | Gabriel Burt <gabriel.burt@gmail.com> | 2011-03-31 10:27:12 -0500 |
---|---|---|
committer | Gabriel Burt <gabriel.burt@gmail.com> | 2011-03-31 10:42:54 -0500 |
commit | 9fb59c0a2954817cfa196b679e7f699f5bd01833 (patch) | |
tree | 8ef6fab293a241be0b4249c8dfa8e00379971665 | |
parent | 209b493db9fccceceea9c0d11cd55645a541cf47 (diff) |
libbanshee: Fix bad call to gst_element_get_request_pad (bgo#646347)
We were hardcoding the name of the src to return, instead of passing
'src%d'. GStreamer used to ignore it, but now complains loudly.
-rw-r--r-- | libbanshee/banshee-player-pipeline.c | 6 | ||||
-rw-r--r-- | libbanshee/banshee-player-vis.c | 5 |
2 files changed, 9 insertions, 2 deletions
diff --git a/libbanshee/banshee-player-pipeline.c b/libbanshee/banshee-player-pipeline.c index e0b3759da..71f221d2d 100644 --- a/libbanshee/banshee-player-pipeline.c +++ b/libbanshee/banshee-player-pipeline.c @@ -276,6 +276,7 @@ _bp_pipeline_construct (BansheePlayer *player) GValue value = {0}; GstBus *bus; GstPad *teepad; + GstPad *pad; GstElement *audiosink; GstElement *audiosinkqueue; GstElement *eq_audioconvert = NULL; @@ -413,7 +414,10 @@ _bp_pipeline_construct (BansheePlayer *player) g_value_unset (&value); // Link the first tee pad to the primary audio sink queue - gst_pad_link (gst_element_get_request_pad (player->audiotee, "src0"), sinkpad); + pad = gst_element_get_request_pad (player->audiotee, "src%d"); + gst_pad_link (pad, sinkpad); + gst_object_unref (GST_OBJECT (pad)); + // Now allow specialized pipeline setups _bp_cdda_pipeline_setup (player); _bp_video_pipeline_setup (player, bus); diff --git a/libbanshee/banshee-player-vis.c b/libbanshee/banshee-player-vis.c index e3c3ebba4..5c7d5fe74 100644 --- a/libbanshee/banshee-player-vis.c +++ b/libbanshee/banshee-player-vis.c @@ -199,6 +199,7 @@ _bp_vis_pipeline_setup (BansheePlayer *player) GstElement *fakesink, *converter, *resampler, *audiosinkqueue; GstCaps *caps; + GstPad *teepad; GstPad *pad; gint wanted_size; @@ -256,7 +257,9 @@ _bp_vis_pipeline_setup (BansheePlayer *player) converter, fakesink, NULL); pad = gst_element_get_static_pad (audiosinkqueue, "sink"); - gst_pad_link (gst_element_get_request_pad (player->audiotee, "src%d"), pad); + teepad = gst_element_get_request_pad (player->audiotee, "src%d"); + gst_pad_link (teepad, pad); + gst_object_unref (GST_OBJECT (teepad)); gst_object_unref (GST_OBJECT (pad)); gst_element_link_many (audiosinkqueue, resampler, converter, NULL); |