GStreamer扩展系列,
假设我是GStreamer的初学者。我正在尝试使用gst-rtsp- H264流式传输录制的服务器文件。这样我就可以从VLC播放器中播放/暂停/查找视频。
以下是我到目前为止所做的工作:
使用以下管道从IP摄像机的RTP H264流录制H264编码的视频:
gst-launch-1.0.exe -e -v rtspsrc location=rtsp://192.168.16.155/live.sdp ! rtph264depay ! h264parse ! mp4mux ! filesink location=record/video.h264
然后,我使用以下流水线流式传输录制的video.h264:
gst-launch-1.0.exe -v filesrc location=record/video.h264 ! qtdemux ! h264parse ! rtph264pay config-interval=1 pt=96 ! udpsink host=127.0.0.1 port=5000
我可以通过设置SDP文件在VLC播放器中查看录制的视频,如下所示。
v=0 m=video 5000 RTP/AVP 96 c=IN IP4 127.0.0.1 a=rtpmap:96 H264/90000
但是,我不能暂停或寻找视频。即使VLC播放器没有连接到5000端口,上面的流水线也会继续播放视频。
顺便说一句..我尝试使用gst-rtsp-server的test-mp4示例来流式传输video.h264,但是VLC播放器连接超时。test-mp4控制台输出仅显示一条消息,即"stream ready at rtsp://127.0.0.1:8554/test“。
谁能给我指出一个正确的方向,使用GStreamer播放录制的视频,并通过RTSP从VLC播放器播放/暂停/寻找控制?
谢谢,Arm
发布于 2016-04-22 07:25:58
对于test-mp4
test-mp4中的流水线将同时播放视频和音频)。<Server IP>:8554/ 127.0.0.1例如,如果服务器IP为192.168.1.1,则URL为rtsp://192.168.1.1:8554/test
对于rtsp-server:
,不能与rtsp支付元素(在本例中为rtph264pay)一起使用name=pay*必须设置为*是一个数字(pay0,pay1,rtsp
发布于 2016-04-28 03:00:52
这就是如果你面临同样的问题,我是如何通过RTSP/RTP流式传输录制的H264视频文件的。
修改test-mp4 sample的rtsp管道启动字符串,如下所示:"filesrc location=\"%s\" ! qtdemux " "! h264parse ! rtph264pay pt=96 name=pay0 " ")"
https://stackoverflow.com/questions/36759875
复制相似问题