[maemo-developers] How do you receive video in maemo application?
From: Stefan Kost ensonic at hora-obscura.deDate: Sat Aug 16 18:53:54 EEST 2008
- Previous message: video processing on N810 using gstreamer
- Next message: How do you receive video in maemo application?
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
hi, can you ask this on gstreamer-devel. Its no maemo specific. One comment below still. Stefan Merrick Fonnesbeck schrieb: > I have built a GTK application that sends video to another device to > play around with and get familiar with Gstreamer. I am now trying to > get a similar GTK application built for the client/receiving side to > accept and receive the incoming video and play it in a window. I got > the following GStreamer command line application to run, but I'm having > trouble putting the pipeline elements together to get it to work in my > windowed application. > > gst-launch udpsrc port=5434 > caps=application/x-rtp,clock-rate=90000 ! rtph263depay ! hantro4100dec ! > Xvimagesink > > The problem seems to exist in the caps and setting the clock-rate > value. When I compile it and run it on my N810 it complains with the > following error: > > GLIB ERROR ** default - GST error: gstbasertpdepayload.c(265) : > gst_base_rtp_depayload_chain () : no clock rate was specified, likely > incomplete input caps. > > Any ideas or help would be appreciated. Appended is my function that > creates the pipeline and sets up the elements. Thanks. > > MFonnesbeck > > /*---------- Code -------*/ > pipeline = gst_pipeline_new("test-camera"); > > input_udp = gst_element_factory_make("udpsrc", "input_udp"); > g_object_set (G_OBJECT (input_udp), "port", 5434, NULL); > csp_filter = gst_element_factory_make("ffmpegcolorspace", "csp_filter"); > input_rtp = gst_element_factory_make("rtph263depay", "input_rtp"); > input_decoder = gst_element_factory_make("hantro4100dec", "input_decoder"); > input_screen_queue = gst_element_factory_make("queue", > "input_screen_queue"); > input_screen_sink = gst_element_factory_make("xvimagesink", > "input_screen_sink"); > > if(!(pipeline && input_udp && csp_filter && input_rtp && input_decoder > && input_screen_queue && input_screen_sink)) > { > g_critical("Couldn't create pipeline elements"); > return FALSE; > } > > gst_bin_add_many(GST_BIN(pipeline), input_udp, input_rtp, input_decoder, > input_screen_queue, csp_filter, input_screen_sink, NULL); > > caps = gst_caps_new_simple("application/x-rtp", "clock-rate", > G_TYPE_INT, 90000, NULL); > > if(!gst_element_link_filtered(csp_filter, input_screen_sink, caps)) > { > return FALSE; > } > gst_caps_unref(caps); why are you using a caps filter? The element has a caps property. Can you try this and link normal? g_object_set(input_udp,"caps",caps,NULL); > > if(!gst_element_link_many(input_udp, input_rtp, input_decoder, > input_screen_queue, csp_filter, input_screen_sink, NULL)) > > { > return FALSE; > } > > gst_element_set_state(pipeline, GST_STATE_PLAYING); > /*---------- Code -------*/ > > > ------------------------------------------------------------------------ > > _______________________________________________ > maemo-developers mailing list > maemo-developers at maemo.org > https://lists.maemo.org/mailman/listinfo/maemo-developers
- Previous message: video processing on N810 using gstreamer
- Next message: How do you receive video in maemo application?
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]