我如何代理rtmp流?
我在局域网上有来自raspicams的两个覆盆子pi直播视频。每个覆盆子pi将视频发送到ffmpeg,它包装在flv中并发送到crtmpserver。
使用nginx的第三台服务器,有一个带有两个jwplayer实例的静态html页面,每个都指向一个raspberry pi。
设置就像this one一样。
Web服务器使用身份验证,我也希望流不公开。
我正在考虑尝试使用nginx-rtmp-module,但我不确定它是否会对我有所帮助。此外,它似乎处于休眠状态,并有许多未解决的问题。
我愿意接受建议,提前谢谢!
答案 0 :(得分:0)
您可以将MonaServer与this client一起使用(将其复制到MonaServer的www /目录中),该端口监听udp端口6666并等待flv文件以名称&#34发布它;文件"
然后你应该已经可以使用jwplayer(地址为rtmp:///文件)或任何其他播放器播放你的流。 MonaServer支持HTTP协议,因此如果需要,您可以在没有nginx的情况下托管您的html页面。
现在,如果您想过滤订阅"文件"你需要在main.lua脚本中编写一个client:onSubscribe函数,就像这样:
function onConnection(client)
INFO("Connection from ",client.address)
function client:onSubscribe(listener)
INFO("Subscribing to ", listener.publication.name, "...")
if not client.right then
error("no rights to play it")
end
end
end
(在这里你需要更改"而不是client.right"并为你的目的实现你的身份验证功能)
更进一步,您可以使用另一个支持RTMFP的Flash视频客户端来处理大量客户端。联系我(jammetthomas AT gmail.com)获取更多信息。