I am working on a project to build a robot using raspberry pi that will send video to android device, and will be controlled from it.
I decided to use the RaspberryPi camera (maybe usb webcam is better?).
I want the video to be in H264 format, but I got problem in getting streaming in this kind of format.
I tried using gstreamer and vlc:
On the RaspberryPi:
raspivid -t 999999 -h 720 -w 1080 -fps 25 -hf -b 2000000 -o - | gst-launch-1.0 -v fdsrc ! h264parse ! rtph264pay config-interval=1 pt=96 ! gdppay ! tcpserversink host=192.168.1.102 port=5000
On my PC (to view the video):
gst-launch-1.0 -v tcpclientsrc host=192.168.1.102 port=5000 ! gdpdepay ! rtph264depay ! avdec_h264 ! videoconvert ! autovideosink sync=false
So first, my question is if there is any way to set a url to catch this gstreamer stream (or any other way to catch the stream in the android app code)?
Second, If you have any other advices, such as using a different camera, different format (not mjpg), different streaming way, etc.
The way you have chosen is the best one I believe. Gstreamer has android examples ready to use (via NDK): http://docs.gstreamer.com/display/GstSDK/Android+tutorial+3%3A+Video
You can find sample application here: https://play.google.com/store/apps/details?id=pl.effisoft.rpicamviewer2