我正在尝试设置一个用于实时转换视频流的服务器。输入流为 RTSP 格式,输出应为 RTMP(用于 Flash 应用程序)。
我查看了 crtmp,它似乎是一个很好的解决方案;但是,我自己无法找出正确的配置(.lua 文件)。有没有一种简单的方法可以将其设置为将流从 RTSP 转换为 RTMP?
或者,是否有更易于使用的视频服务器(Linux 或 Windows),并且也是免费的,而且可以做同样的事情?
答案1
长话短说。我还不知道你的相机的具体细节,但我有一个很好的例子给你:
打开配置文件并将 flvplaybackapplication 中的 externalStreams 节点替换为以下内容:
externalStreams = { { uri="rtsp://fms20.mediadirect.ro/live2/realitatea/realitatea", localStreamName="test1", forceTcp=true }, { uri="rtsp://fms20.mediadirect.ro/live/utv/utv", localStreamName="test2", forceTcp=false } },
之后使用 jwplayer、flow player 等播放流。完整的 RTMP URI 为:
rtmp://ip/live/test1
或者
rtmp://ip/live/test2
如您所见,这些流是 2 个 RTSP 流。一个是 RTP/RTCP over UDP(forceTcp=false),另一个是 RTP/RTCP over RTSP(forceTcp=true)。由于 RTSP 是基于 TCP 的,因此您可以将该标志设置为 true。
不用说,您可能会遇到播放故障和问题,这是由于这两个流距离您很远(它们在罗马尼亚)造成的。
希望能帮助到你
答案2
答案3
要将 RTSP 转换为 RTMP 流,请使用 Wowza Media Server,以下是重新流式传输指南http://www.wowza.com/forums/content.php?39