基于Android的gStreamer教程3,我正在尝试实现UDP连接。
在服务器端,我有一个树莓派,带有以下行来启动服务器。
raspivid -t 0 -hf -n -h 480 -w 640 -fps 15 -b 2000000 -o - | gst-launch-1.0 -v fdsrc ! h264sparse ! rtph264pay config-interval=10 pt=96! gdppay ! udpsink host=192.168.1.1 port=5000
在接收方,我有教程3,在其中将管道更改为以下行。
>data->pipeline = gst_parse_launch("udpsrc port=5000 caps=\"application/x-rtp, media=video, clock-rate=90000, payload=96\" ! rtph264depay ! h264parse ! avdec_h264 ! videoconvert ! autovideosink", &error);
我还包括以下插件:
>$(GSTREAMER_PLUGINS_CORE) $(GSTREAMER_PLUGINS_PLAYBACK) $(GSTREAMER_PLUGINS_CODECS) $(GSTREAMER_PLUGINS_CODECS_RESTRICTED) $(GSTREAMER_PLUGINS_NET) $(GSTREAMER_PLUGINS_SYS)
启动应用程序时,出现黑屏,没有视频或音频。 在Logcat中,我收到一个错误,提示无法进行H264和AAC映射。
也许我必须包含sprop-parameter-sets? 而且如果必须的话,如何使用正确的语法轻松地做到这一点?
答案 0 :(得分:0)
在服务器端,您使用 rtph264pay 和 gdppay 。您应该删除 gdppay 。