/* Request a pad from multiqueue, then connect this one, then
* discover the corresponding output pad and return it */
mq_sink = gst_element_get_request_pad (dvdbin->pieces[DVD_ELEM_MQUEUE],
- "sink%d");
+ "sink_%u");
if (mq_sink == NULL)
return FALSE;
dvdbin->mq_req_pads = g_list_prepend (dvdbin->mq_req_pads, mq_sink);
sinkname = gst_pad_get_name (mq_sink);
tmp = sinkname + 4;
- srcname = g_strdup_printf ("src%s", tmp);
+ srcname = g_strdup_printf ("src_%s", tmp);
mq_src = gst_element_get_static_pad (dvdbin->pieces[DVD_ELEM_MQUEUE],
srcname);
} else if (g_str_equal (gst_structure_get_name (s), "video/x-dvd-subpicture")) {
dest_pad =
gst_element_get_request_pad (dvdbin->pieces[DVD_ELEM_SPU_SELECT],
- "sink%d");
+ "sink_%u");
skip_mq = TRUE;
} else if (can_sink_caps (dvdbin->pieces[DVD_ELEM_AUDDEC], caps)) {
GST_LOG_OBJECT (dvdbin, "Found audio pad w/ caps %" GST_PTR_FORMAT, caps);
dest_pad =
gst_element_get_request_pad (dvdbin->pieces[DVD_ELEM_AUD_SELECT],
- "sink%d");
+ "sink_%u");
} else {
GstStructure *s;
gst_object_unref (vid_sinkpad);
/* Add queue element for video */
- vid->tee_video_srcpad = gst_element_get_request_pad (vid->tee, "src%d");
+ vid->tee_video_srcpad = gst_element_get_request_pad (vid->tee, "src_%u");
vid->video_queue = gst_element_factory_make ("queue", "video-queue");
if (!gst_camerabin_add_element (vidbin, vid->video_queue)) {
}
}
/* Add queue leading out of the video bin and to view finder */
- vid->tee_vf_srcpad = gst_element_get_request_pad (vid->tee, "src%d");
+ vid->tee_vf_srcpad = gst_element_get_request_pad (vid->tee, "src_%u");
queue = gst_element_factory_make ("queue", "viewfinder-queue");
if (!gst_camerabin_add_element (vidbin, queue)) {
goto error;
}
camera->pad_src_img =
- gst_element_get_request_pad (camera->src_out_sel, "src%d");
+ gst_element_get_request_pad (camera->src_out_sel, "src_%u");
gst_pad_add_data_probe (camera->pad_src_img,
G_CALLBACK (gst_camerabin_have_img_buffer), camera);
}
camera->pad_src_view =
- gst_element_get_request_pad (camera->src_out_sel, "src%d");
+ gst_element_get_request_pad (camera->src_out_sel, "src_%u");
/* Create view finder elements */
if (!camerabin_create_view_elements (camera)) {
/* Add video bin */
camera->pad_src_vid =
- gst_element_get_request_pad (camera->src_out_sel, "src%d");
+ gst_element_get_request_pad (camera->src_out_sel, "src_%u");
if (!gst_camerabin_add_element (GST_BIN (camera), camera->vidbin)) {
goto done;
}
/* Link video bin ! view finder */
unconnected_pad = gst_bin_find_unlinked_pad (GST_BIN (camera), GST_PAD_SRC);
camera->pad_view_vid =
- gst_element_get_request_pad (camera->view_in_sel, "sink%d");
+ gst_element_get_request_pad (camera->view_in_sel, "sink_%u");
link_ret =
gst_pad_link_full (unconnected_pad, camera->pad_view_vid,
GST_PAD_LINK_CHECK_CAPS);
goto done;
/* viewfinder pad */
- vf_pad = gst_element_get_request_pad (tee, "src%d");
+ vf_pad = gst_element_get_request_pad (tee, "src_%u");
g_object_set (tee, "alloc-pad", vf_pad, NULL);
gst_ghost_pad_set_target (GST_GHOST_PAD (self->vfsrc), vf_pad);
gst_object_unref (vf_pad);
/* image/video pad from tee */
- tee_capture_pad = gst_element_get_request_pad (tee, "src%d");
+ tee_capture_pad = gst_element_get_request_pad (tee, "src_%u");
self->output_selector =
gst_element_factory_make ("output-selector", "outsel");
/* Create the 2 output pads for video and image */
self->outsel_vidpad =
- gst_element_get_request_pad (self->output_selector, "src%d");
+ gst_element_get_request_pad (self->output_selector, "src_%u");
self->outsel_imgpad =
- gst_element_get_request_pad (self->output_selector, "src%d");
+ gst_element_get_request_pad (self->output_selector, "src_%u");
g_assert (self->outsel_vidpad != NULL);
g_assert (self->outsel_imgpad != NULL);
GST_SDP_STREAM_LOCK (demux);
/* find stream */
name = gst_object_get_name (GST_OBJECT_CAST (pad));
- if (sscanf (name, "recv_rtp_src_%d_%d_%d", &id, &ssrc, &pt) != 3)
+ if (sscanf (name, "recv_rtp_src_%u_%u_%u", &id, &ssrc, &pt) != 3)
goto unknown_stream;
GST_DEBUG_OBJECT (demux, "stream: %u, SSRC %d, PT %d", id, ssrc, pt);
/* get output pad of the UDP source. */
pad = gst_element_get_static_pad (stream->udpsrc[0], "src");
- name = g_strdup_printf ("recv_rtp_sink_%d", stream->id);
+ name = g_strdup_printf ("recv_rtp_sink_%u", stream->id);
stream->channelpad[0] = gst_element_get_request_pad (demux->session, name);
g_free (name);
GST_DEBUG_OBJECT (demux, "connecting RTCP source to manager");
- name = g_strdup_printf ("recv_rtcp_sink_%d", stream->id);
+ name = g_strdup_printf ("recv_rtcp_sink_%u", stream->id);
stream->channelpad[1] = gst_element_get_request_pad (demux->session, name);
g_free (name);
gst_bin_add (GST_BIN_CAST (demux), stream->udpsink);
/* get session RTCP pad */
- name = g_strdup_printf ("send_rtcp_src_%d", stream->id);
+ name = g_strdup_printf ("send_rtcp_src_%u", stream->id);
pad = gst_element_get_request_pad (demux->session, name);
g_free (name);
gchar *padname;
/* clean up floating src pad */
- /* hm, asfmux uses _01 as suffixes for padnames */
- padname = g_strdup (sinkname);
- memcpy (strchr (padname, '%'), "01", 2);
+ padname = g_strdup_printf (sinkname, 1);
if (!(sinkpad = gst_element_get_static_pad (element, padname)))
sinkpad = gst_element_get_request_pad (element, padname);
g_free (padname);
GST_START_TEST (test_video_pad)
{
- check_asfmux_pad (&srcvideotemplate, VIDEO_CAPS_STRING, "video_%d");
+ check_asfmux_pad (&srcvideotemplate, VIDEO_CAPS_STRING, "video_%u");
}
GST_END_TEST;
GST_START_TEST (test_audio_pad)
{
- check_asfmux_pad (&srcaudiotemplate, AUDIO_CAPS_STRING, "audio_%d");
+ check_asfmux_pad (&srcaudiotemplate, AUDIO_CAPS_STRING, "audio_%u");
}
GST_END_TEST;
GST_DEBUG ("setup_mplex");
mplex = gst_check_setup_element ("mplex");
- mysrcpad = setup_src_pad (mplex, &srctemplate, NULL, "audio_%d");
+ mysrcpad = setup_src_pad (mplex, &srctemplate, NULL, "audio_%u");
mysinkpad = gst_check_setup_sink_pad (mplex, &sinktemplate, NULL);
gst_pad_set_active (mysrcpad, TRUE);
gst_pad_set_active (mysinkpad, TRUE);
gst_pad_set_active (mysrcpad, FALSE);
gst_pad_set_active (mysinkpad, FALSE);
- teardown_src_pad (mplex, "audio_%d");
+ teardown_src_pad (mplex, "audio_%u");
gst_check_teardown_sink_pad (mplex);
gst_check_teardown_element (mplex);