gstreamer流式传输到nginx rtmp服务器

时间:2014-10-21 15:13:36

标签: nginx gstreamer rtmp beagleboneblack

PS:第一次gstreamer用户在这里。 :)

我尝试使用gstreamer连接到beaglebone的logitech c920网络摄像头流式传输视频到nginx服务器。但不知何故,rtmpsink对我失败了。但是,随着filesink能够将视频保存在beaglebone上。虽然我仍然有一些帧丢失问题而且没有音频,但我希望流媒体部分首先工作。我使用的命令是

GST_DEBUG=4 GST_DEBUG_FILE=gst2.log gst-launch-1.0 -v -e uvch264src device=/dev/video0 name=src auto-start=true average-bitrate=5000000 iframe-period=33  src.vidsrc  ! queue ! video/x-h264,width=1920,height=1080,framerate=30/1 ! h264parse ! flvmux ! rtmpsink location="rtmp://192.168.1.104:1935/hls/movie"

我的调试输出在这里。 gist

gstreamer在5秒内退出。

我验证了流媒体服务器的工作原理。但是从客户端来看,gstreamer并没有给我任何错误信息。或者我不知道如何正确调试它。

我坚持这个问题持续了这么多天。任何帮助,将不胜感激。

谢谢。

更新1

:  我能够使用ffmpeg将本地文件发送到我的rtmp服务器,并且服务器正在按预期处理它。

ffmpeg -re -i /Users/r3dsm0k3/10.mp4 -vprofile baseline -ar 44100 -ac 1 -c copy -f flv rtmp://192.168.1.4:1935/hls/example

用fakesink尝试gstreamer并且没有任何错误。

更新2

尝试使用v4l2src,但没有运气。

1 个答案:

答案 0 :(得分:5)

终于明白了。这很简单,但在服务器方面。

我必须在rtmp服务器的nginx配置中添加publish_time_fix off;

感谢blog

相关问题