是否可以从一台服务器提取 RTMP 流并将其广播到另一台服务器?
Posted
技术标签:
【中文标题】是否可以从一台服务器提取 RTMP 流并将其广播到另一台服务器?【英文标题】:Is it possible to pull a RTMP stream from one server and broadcast it to another? 【发布时间】:2011-10-23 21:04:31 【问题描述】:我基本上有这样一种情况,我需要从一个 Wowza 媒体服务器中提取一个流,然后使用 FFMPEG 将它发布到一个 Red5 或 Flash 媒体服务器实例。有没有命令可以做到这一点?我本质上是在寻找这样的东西:
while [ true ]; do
ffmpeg -i rtmp://localhost:2000/vod/streamName.flv rtmp://localhost:1935/live/streamName
done
FFMPEG 目前可以实现这一点吗?我记得读过类似的东西,但我不记得具体是怎么做的。
【问题讨论】:
如果您得到答案,请更新...请 这很棘手,因为命令只有在流可用时才会运行。中断时它将结束。要获得可靠的设置,您可以设置 Wowza 直播转发器wowza.com/docs/how-to-configure-a-live-stream-repeater,或者如果您需要前端用户进行设置重新流式传输,可以使用类似broadcastlivevideo.com/publish-ip-camera-stream-to-website 的设置来完成。 【参考方案1】:是的。一个例子(从本地服务器拉取,发布到本地服务器):
$ ffmpeg -analyzeduration 0 -i "rtmp://localhost/live/b live=1" -f flv rtmp://localhost:1936/live/c
analyzeduration 是为了让它启动得更快。如果需要,您还可以在其中添加其他参数以“重新编码”等。
【讨论】:
【参考方案2】:尝试以这种方式输入:
$ffmpeg -i "[InputSourceAddress]" -f [Outputfileformat] "[OutputSourceAddress]"
输入源地址可以是rtmp类型,也可以是rtsp/m3u8/etc。
【讨论】:
以上是关于是否可以从一台服务器提取 RTMP 流并将其广播到另一台服务器?的主要内容,如果未能解决你的问题,请参考以下文章