filesink provides empty file

android6011 android6011 at gmail.com
Wed Aug 17 09:15:35 PDT 2011


thank you very much. I had read about the pads but you help put it into
context for what I was doing and I was able to get things rolling.

On Mon, Aug 15, 2011 at 12:04 PM, Sudarshan Bisht <bisht.sudarshan at gmail.com
> wrote:

> In your application rtph264depay and mpegtsmux can not be linked
> automatically because muxers have got "request pads", for more information
> about "request pads"  and how you link them with normal pads,  have a look
> at following link;
>
> http://gstreamer.freedesktop.org/data/doc/gstreamer/head/manual/html/chapter-pads.html
>
>
> On Mon, Aug 15, 2011 at 7:27 PM, android6011 <android6011 at gmail.com>wrote:
>
>> Hello everyone, I am trying to replicate the following "gst-launch rtspsrc
>> location=rtsp://10.10.10.3:554 ! rtph264depay ! mpegtsmux ! filesink
>> location=out.ts"  .
>>
>> This line works in producing video output but when the following code is
>> used the output file is always 0 in size. Any pointers on why this might be
>> happening would be appreciated
>>
>> #include <stdio.h>
>> #include <gst/gst.h>
>>
>> int main (int argc, char *argv[])
>> {
>> printf("STARTING %d \n",1);
>>  //Init
>> gst_init (&argc, &argv);
>>  //Get Ready
>>  GstPipeline *pipeline = GST_PIPELINE(gst_pipeline_new("pipeline"));
>> printf("Created Pipeline\n");
>>  //Prep Source
>> GstElement *source = gst_element_factory_make("rtspsrc","source");
>>  g_object_set(G_OBJECT(source),"location","rtsp://10.10.10.3:554",NULL);
>> printf("Created SRC\n");
>>  //Prep Decode
>> GstElement *demux =gst_element_factory_make("rtph264depay","demux");
>>  printf("Created Demux\n");
>>  //Prep Encode
>>  GstElement *mux = gst_element_factory_make("mpegtsmux","mux");
>> printf("Created Mux\n");
>>  //prep output
>> GstElement *dest = gst_element_factory_make("filesink","dest");
>>  g_object_set(G_OBJECT(dest),"location","output.ts",NULL);
>> printf("Created Output\n");
>>  //Link
>> gst_element_link_many(source,demux,mux,dest,NULL);
>>  printf("Done Linking\n");
>>  //Add
>>  gst_bin_add_many(GST_BIN(pipeline),source,demux,mux,dest,NULL);
>> printf("Added Elements To Pipe\n");
>>    gst_element_set_state(GST_ELEMENT(pipeline),GST_STATE_PLAYING);
>> printf("CSet State\n");
>>  GMainLoop *loop = g_main_loop_new(NULL,FALSE);
>> printf("Starting Loop...\n");
>>  g_main_loop_run(loop);
>>
>>
>>
>> printf("done\n");
>>  return 0;
>> }
>>
>>
>> _______________________________________________
>> gstreamer-devel mailing list
>> gstreamer-devel at lists.freedesktop.org
>> http://lists.freedesktop.org/mailman/listinfo/gstreamer-devel
>>
>>
>
>
> --
> Regards,
>
> Sudarshan Bisht
>
> _______________________________________________
> gstreamer-devel mailing list
> gstreamer-devel at lists.freedesktop.org
> http://lists.freedesktop.org/mailman/listinfo/gstreamer-devel
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.freedesktop.org/archives/gstreamer-devel/attachments/20110817/5bdbe5e5/attachment.htm>


More information about the gstreamer-devel mailing list