[gst-devel] how to make a files playable...
paper at gmx.net
paper at gmx.net
Tue Jul 6 12:15:39 CEST 2010
I have follow function to change the pad of a output-selector.
(PIPELINE: VIDEOTESTSRC -> TIMEOVERLAY -> x264enc -> output-selector -> mp4mux -> filesink / mp4mux -> filesink )
but files does not have metadata, just the first one, what is wrong?
paused state i tried allready...
static gboolean
switch_cb (gpointer user_data)
{
GstElement *sel = GST_ELEMENT (user_data);
GstPad *old_pad, *new_pad = NULL;
g_object_get (G_OBJECT (sel), "active-pad", &old_pad, NULL);
char buffer[800];
sprintf (buffer,file_path_prefix,fr_counter++);
if (old_pad == osel_src1){
new_pad = osel_src2;
gst_element_set_state (mux0, GST_STATE_NULL);
gst_element_set_state (fsink0, GST_STATE_NULL);
g_object_set (G_OBJECT (fsink0), "location", &buffer[0], NULL);
gst_element_set_state (mux0, GST_STATE_PLAYING);
gst_element_set_state (fsink0, GST_STATE_PLAYING);
}else{
new_pad = osel_src1;
gst_element_set_state (mux1, GST_STATE_NULL);
gst_element_set_state (fsink1, GST_STATE_NULL);
g_object_set (G_OBJECT (fsink1), "location", &buffer[0], NULL);
gst_element_set_state (mux1, GST_STATE_PLAYING);
gst_element_set_state (fsink1, GST_STATE_PLAYING);
}
g_object_set (G_OBJECT (sel), "active-pad", new_pad, NULL);
g_print ("switched from %s:%s to %s:%s\n", GST_DEBUG_PAD_NAME (old_pad),
GST_DEBUG_PAD_NAME (new_pad));
gst_object_unref (old_pad);
return TRUE;
}
--
GMX DSL: Internet-, Telefon- und Handy-Flat ab 19,99 EUR/mtl.
Bis zu 150 EUR Startguthaben inklusive! http://portal.gmx.net/de/go/dsl
More information about the gstreamer-devel
mailing list