<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2//EN">
<HTML>
<HEAD>
<META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=us-ascii">
<META NAME="Generator" CONTENT="MS Exchange Server version 6.5.7651.59">
<TITLE>How do you receive video in maemo application?</TITLE>
</HEAD>
<BODY>
<!-- Converted from text/rtf format -->

<P><FONT SIZE=2 FACE="Arial">I have built a GTK application that sends video to another device to play around with and get familiar with Gstreamer.&nbsp; 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.&nbsp; 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.</FONT></P>

<P>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <FONT SIZE=2 FACE="Arial">gst-launch udpsrc port=5434 caps=application/x-rtp,clock-rate=90000 ! rtph263depay ! hantro4100dec ! Xvimagesink</FONT></P>

<P><FONT SIZE=2 FACE="Arial">The problem seems to exist in the caps and setting the clock-rate value.&nbsp; When I compile it and run it on my N810 it complains with the following error:</FONT></P>

<P><FONT SIZE=2 FACE="Arial">&nbsp;&nbsp; GLIB ERROR ** default - GST error: gstbasertpdepayload.c(265) : gst_base_rtp_depayload_chain () :&nbsp; no clock rate was specified, likely incomplete input caps.</FONT></P>

<P><FONT SIZE=2 FACE="Arial">Any ideas or help would be appreciated.&nbsp; Appended is my function that creates the pipeline and sets up the elements.&nbsp; Thanks.</FONT></P>

<P><FONT SIZE=2 FACE="Arial">MFonnesbeck</FONT>
</P>

<P><FONT SIZE=2 FACE="Arial">/*----------&nbsp; Code -------*/</FONT>

<BR><FONT SIZE=2 FACE="Arial">pipeline = gst_pipeline_new(&quot;test-camera&quot;);</FONT>

<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 

<BR><FONT SIZE=2 FACE="Arial">input_udp = gst_element_factory_make(&quot;udpsrc&quot;, &quot;input_udp&quot;);</FONT>

<BR><FONT SIZE=2 FACE="Arial">g_object_set (G_OBJECT (input_udp), &quot;port&quot;, 5434, NULL);</FONT>

<BR><FONT SIZE=2 FACE="Arial">csp_filter = gst_element_factory_make(&quot;ffmpegcolorspace&quot;, &quot;csp_filter&quot;);</FONT>

<BR><FONT SIZE=2 FACE="Arial">input_rtp = gst_element_factory_make(&quot;rtph263depay&quot;, &quot;input_rtp&quot;);</FONT>

<BR><FONT SIZE=2 FACE="Arial">input_decoder = gst_element_factory_make(&quot;hantro4100dec&quot;, &quot;input_decoder&quot;);</FONT>

<BR><FONT SIZE=2 FACE="Arial">input_screen_queue = gst_element_factory_make(&quot;queue&quot;, &quot;input_screen_queue&quot;);</FONT>

<BR><FONT SIZE=2 FACE="Arial">input_screen_sink = gst_element_factory_make(&quot;xvimagesink&quot;, &quot;input_screen_sink&quot;);</FONT>
</P>

<P><FONT SIZE=2 FACE="Arial">if(!(pipeline &amp;&amp; input_udp &amp;&amp; csp_filter &amp;&amp; input_rtp &amp;&amp; input_decoder &amp;&amp; input_screen_queue &amp;&amp; input_screen_sink))</FONT>

<BR><FONT SIZE=2 FACE="Arial">{</FONT>

<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <FONT SIZE=2 FACE="Arial">g_critical(&quot;Couldn't create pipeline elements&quot;);</FONT>

<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <FONT SIZE=2 FACE="Arial">return FALSE;</FONT>

<BR><FONT SIZE=2 FACE="Arial">}</FONT>
</P>

<P><FONT SIZE=2 FACE="Arial">gst_bin_add_many(GST_BIN(pipeline), input_udp, input_rtp, input_decoder, input_screen_queue, csp_filter, input_screen_sink, NULL);</FONT></P>

<P><FONT SIZE=2 FACE="Arial">caps = gst_caps_new_simple(&quot;application/x-rtp&quot;, &quot;clock-rate&quot;, G_TYPE_INT, 90000, NULL);</FONT>
</P>

<P><FONT SIZE=2 FACE="Arial">if(!gst_element_link_filtered(csp_filter, input_screen_sink, caps))</FONT>

<BR><FONT SIZE=2 FACE="Arial">{</FONT>

<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <FONT SIZE=2 FACE="Arial">return FALSE;</FONT>

<BR><FONT SIZE=2 FACE="Arial">}</FONT>

<BR><FONT SIZE=2 FACE="Arial">gst_caps_unref(caps);</FONT>
</P>

<P><FONT SIZE=2 FACE="Arial">if(!gst_element_link_many(input_udp, input_rtp, input_decoder, input_screen_queue, csp_filter, input_screen_sink, NULL))</FONT></P>

<P><FONT SIZE=2 FACE="Arial">{</FONT>

<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <FONT SIZE=2 FACE="Arial">return FALSE;</FONT>

<BR><FONT SIZE=2 FACE="Arial">}&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </FONT>
</P>

<P><FONT SIZE=2 FACE="Arial">gst_element_set_state(pipeline, GST_STATE_PLAYING);</FONT>

<BR><FONT SIZE=2 FACE="Arial">/*----------&nbsp; Code -------*/</FONT>
</P>

</BODY>
</HTML>