我使用5个ip摄像头,每个摄像头给我5个RTSP流。我正在挑选这些RTSP视频流中的任何一个,并将它们与我的麦克风(音频RTSP流源)混合,并将其广播到我的RTMP服务器。
我尝试做无缝流,这意味着当相机到相机的切换发生时,不应该有任何延迟。在摄像机到摄像机的切换过程中,服务器应该会看到来自我的流媒体客户端PC的连续流。
我看到管道随机崩溃,给了我很多错误消息。你知道怎么解决这个问题吗?
发布于 2015-11-26 05:11:11
要获得真正的无缝切换,您需要将所有流同时接收到临时缓冲区中,然后将RTMP输出编码为关闭这些缓冲区中的任何一个。
如果不这样做,那么在进行切换时总会有很大的延迟,因为您将不得不与编码硬件握手,并等待下一个关键帧。
这是很有可能做到的,只是它更像是一个项目,而不是一个单一的堆栈溢出问题……
发布于 2015-12-14 01:42:03
使用gstreamer输入选择器元素在多个视频之间切换,并使用flvmux元素混合来自输入选择器的单个音频源和单个视频。
这帮助我实现了我的目标。我可以用这个在youtube直播门户网站上看到连续的视频和音频流。
http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer-plugins/html/gstreamer-plugins-input-selector.html
这是一个帮助我理解和编写代码的例子:
https://stackoverflow.com/questions/33864772
复制相似问题