<div dir="ltr"><div>I don't really understand the workings of it myself, but it looks like you're missing the "sync=false" from the autovideosink in your code. I suspect this is where the choppiness is coming from.<br>
<br></div>As I understand it, "sync=false" means that the videosink displays frames as they arrive rather than waiting for the "correct" time to display them. I'm not entirely sure about this though so hopefully someone else can explain further how it works.<br>
</div><div class="gmail_extra"><br><br><div class="gmail_quote">On Thu, Aug 1, 2013 at 9:10 AM, davidlopez <span dir="ltr"><<a href="mailto:davidalopez1989@gmail.com" target="_blank">davidalopez1989@gmail.com</a>></span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Hi all,<br>
<br>
I'm working on a robotics project where I need to stream live video from an<br>
embedded computer to an Android app. I started off by following this<br>
tutorial:<br>
<a href="http://jumpnowtek.com/index.php?option=com_content&view=article&id=81:gumstix-dsp-gstreamer&catid=35:gumstix&Itemid=67" target="_blank">http://jumpnowtek.com/index.php?option=com_content&view=article&id=81:gumstix-dsp-gstreamer&catid=35:gumstix&Itemid=67</a><br>
<br>
Basically what we end up with is on the server we run this command from the<br>
terminal:<br>
<br>
gst-launch -v v4l2src ! video/x-raw-yuv,width=640,height=480 ! TIVidenc1<br>
codecName=h264enc engineName=codecServer ! rtph264pay pt=96 ! udpsink<br>
host=192.168.10.4 port=4000<br>
<br>
and on the client side we run this command from the terminal:<br>
<br>
gst-launch-0.10 -v udpsrc port=4000 caps='application/x-rtp,<br>
media=(string)video, clock-rate=(int)90000, encoding-name=(string)H264,<br>
sprop-parameter-sets=(string)\"Z0KAHukBQHpCAAAH0AAB1MAIAA\\=\\=\\,aM48gAA\\=\"'<br>
! rtph264depay ! ffdec_h264 ! xvimagesink sync=false<br>
<br>
And the video streaming works just fine with almost zero lag.<br>
<br>
To build the android client end, I went through the gstreamer for android<br>
tutorials, and in order to test it I simply replaced<br>
<br>
data->pipeline = gst_parse_launch("videotestsrc ! warptv ! ffmpegcolorspace<br>
! autovideosink", &error);<br>
<br>
with:<br>
<br>
data->pipeline = gst_parse_launch("udpsrc port=4000<br>
caps=\"application/x-rtp, media=(string)video, clock-rate=(int)90000,<br>
encoding-name=(string)H264,<br>
sprop-parameter-sets=(string)\\\"Z0KAHukBQHpCAAAH0AAB1MAIAA\\\\=\\\\=\\\\,aM48gAA\\\\=\\\"\"<br>
! rtph264depay ! decodebin2 ! autovideosink", &error);<br>
<br>
with the addition of also adding extra plugins in the Android.mk file, in<br>
the tutorial 3 android sample project<br>
<br>
When I test this code, I can see the video stream coming in, and I don't<br>
think the video is necessarily delayed but it the image is only refreshed<br>
about once every 2 seconds making the video very choppy and useless for the<br>
purpose of this project.<br>
<br>
Not really sure where to look into as I'm completely new to Gstreamer, but<br>
hopefully someone can point me in the right direction.<br>
<br>
Thanks!<br>
David<br>
<br>
<br>
<br>
--<br>
View this message in context: <a href="http://gstreamer-devel.966125.n4.nabble.com/Streaming-Video-from-Computer-to-Android-tp4661372.html" target="_blank">http://gstreamer-devel.966125.n4.nabble.com/Streaming-Video-from-Computer-to-Android-tp4661372.html</a><br>
Sent from the GStreamer-devel mailing list archive at Nabble.com.<br>
_______________________________________________<br>
gstreamer-devel mailing list<br>
<a href="mailto:gstreamer-devel@lists.freedesktop.org">gstreamer-devel@lists.freedesktop.org</a><br>
<a href="http://lists.freedesktop.org/mailman/listinfo/gstreamer-devel" target="_blank">http://lists.freedesktop.org/mailman/listinfo/gstreamer-devel</a><br>
</blockquote></div><br></div>