That command is used by Raspberry
raspivid -t 0 -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.0.249 port=5000
What pipeline shall I create on Android device to recieve the video?
data->pipeline = gst_parse_launch("???", &error);
I used this tutorial with some changes: http://docs.gstreamer.com/display/GstSDK/Android+tutorial+4%3A+A+basic+media+player
IP address can be hardcoded, so I removed the code:
void gst_native_set_uri (JNIEnv* env, jobject thiz, jstring uri) {
/*
CustomData *data = GET_CUSTOM_DATA (env, thiz, custom_data_field_id);
if (!data || !data->pipeline) return;
const jbyte *char_uri = (*env)->GetStringUTFChars (env, uri, NULL);
GST_DEBUG ("Setting URI to %s", char_uri);
if (data->target_state >= GST_STATE_READY)
gst_element_set_state (data->pipeline, GST_STATE_READY);
g_object_set(data->pipeline, "uri", char_uri, NULL);
(*env)->ReleaseStringUTFChars (env, uri, char_uri);
data->duration = GST_CLOCK_TIME_NONE;
data->is_live = (gst_element_set_state (data->pipeline, data- >target_state) == GST_STATE_CHANGE_NO_PREROLL);
*/
}