Android studio 使用GStreamer显示Android摄像头并将实时视频流到服务器

Android studio 使用GStreamer显示Android摄像头并将实时视频流到服务器,android-studio,udp,gstreamer,pipeline,Android Studio,Udp,Gstreamer,Pipeline,我正在尝试从Android向服务器发送实时视频。 目前,我的目标是在我的Android设备上预览/查看摄像头视图,并将显示的视图(作为实时视频)发送到我的电脑。为此,我正在Android中使用GStreamer和UDP 我制作了两条管道: gst-launch-1.0 udpsrc port=12345 ! h264parse ! decodebin ! videoscale ! videoconvert ! xvimagesink sync=false -v 1) 用于在我的Android设

我正在尝试从Android向服务器发送实时视频。 目前,我的目标是在我的Android设备上预览/查看摄像头视图,并将显示的视图(作为实时视频)发送到我的电脑。为此,我正在Android中使用GStreamer和UDP

我制作了两条管道:

gst-launch-1.0 udpsrc port=12345 ! h264parse ! decodebin ! videoscale ! videoconvert ! xvimagesink sync=false -v
1) 用于在我的Android设备上显示摄像头的管道:

gst_element_link_many (ahc->ahcsrc, ahc->videoflip, ahc->filter, ahc->vsink, NULL); 
2) 用于将基本视频(videotestsrc)从我的Android设备发送到PC的管道:

 ahc->pipeline = gst_parse_launch (" videotestsrc !  decodebin !  videoconvert ! x264enc !  udpsink  host=... port=12345", &error);
现在,我尝试将两个管道合并为一个管道,这样我就可以将我的摄像作为视频发送到PC(而不仅仅是测试视频),我得到了以下结果:

    gst_element_link_many (ahc->ahcsrc, ahc->filter, ahc->decodebin, ahc->videoconvert, ahc->x264enc,  ahc->udpsink,  NULL);

    gint port = 12345;
    g_object_set(ahc->udpsink, "host", host, NULL);
    g_object_set(ahc->udpsink, "port", port, NULL);
在这条管道上,我没有收到任何错误,但我的视频也没有在电脑上显示,我也不能像以前一样在Android设备上看到CameraPreview

在客户端(PC),我有一条管道,它适用于前面提到的两条管道:

gst-launch-1.0 udpsrc port=12345 ! h264parse ! decodebin ! videoscale ! videoconvert ! xvimagesink sync=false -v
是否可以合并1。二,。管道得到类似3的东西。为了实现我的目标?还是我应该改变我的方法?非常感谢

我也读过这个问题:但它对我帮助不大