共享IP摄像头源(RTSP?)

时间:2011-10-05 16:40:22

标签: video streaming camera rtsp ip-camera

我有一台IP摄像头,我想分享它的饲料。

它可以输出RTSP源和简单的JPEG图像。

我正在寻找一种方法来获取单个Feed并将其提供给多个观众。

实际上在任何给定时间可能只有少数,所以不是一次看1000。

我也想在没有硬件的情况下这样做,只需要相机,输出它的输入。

互联网上是否有可以接受该Feed并以某种方式向多人提供服务的服务?

也许这样做的方法是将RTSP转码为更适合浏览器的东西,这是一个选项吗?

同样,我的硬件没有,我不希望机架上的计算机(甚至1个)坐在我的尽头。

3 个答案:

答案 0 :(得分:3)

首先,您需要从相机接收RTSP流。有一些开源库可以像Live555一样使用。然后,您需要将流转换为可由浏览器播放的协议。这可以是HTTP实时流(HLS)或HTTP上的动态自适应流(MPEG-DASH)。如果支持Media Source Extensions(MSE),则可以使用HTML5视频播放这些流。较旧的浏览器不支持MSE,因此您需要一个后备播放器(例如支持HLS或MPEG-DASH的基于Adobe Flash的播放器)。

有一些基于云的服务可为广播您的IP摄像机提供完整的解决方案。我测试了IPCamLive.com,它对我来说很好。

我在IPCamLive中最喜欢的是这项服务提供了一个简单的HTML片段来嵌入相机,所以我只将这个片段粘贴到我的网页中。另一个好处是该服务支持ONVIF协议,可以帮助您找到相机流的正确RTSP URL。

答案 1 :(得分:0)

相机型号是什么?如果它支持RTSP和JPEG,您只需要将端口80用于JPEG,将554用于RTSP从路由器转发到摄像机的本地IP地址。此外,您应该拥有静态IP,或在dyndns.org注册您的动态地址并获取它的DNS名称。

enter image description here

然后,如果用户想要查看来自该摄像头的RTSP流,他们可以从RTSP网址打开它,参考相机所在路由器的WAN IP地址。

对于AXIS相机和上面的设置:

rtsp://84.55.1.2/axis-media/media.3gp

这将路由到10.10.10.1:554,即IP摄像头。

如果相机支持UPnP,您可以减少工作量。然后将其打开,您将获得用户必须在其URL和要添加的端口中放置的地址。

现在,如果你想在浏览器中显示它,你可能想要获得MOTION JPEG(如果支持),或定期获取JPEG ...

答案 2 :(得分:0)

使用媒体服务器...

媒体服务器聚合连接,因此设备不必面向前方。

有几个......

我的是http://net7mma.codeplex.com/

我的库@ http://www.codeproject.com/Articles/507218/Managed-Media-Aggregation-using-Rtsp-and-Rtp

有一个代码项目文章

它支持非rtp源,例如您指定的HTTP Jpeg和MJpeg变体,此外它还支持动态地从jpeg图片创建RTP MJPEG。

您还可以选择使用重新启动间隔并仅发送已更改的最小编码单元(MCU),从而减少发送的数据量并获得或多或少接近MPEG的带宽。

适用于VLC,QuickTime,(S)MPlayer和其他各种播放器。

它的主要目的是按照您的要求进行聚合,它还支持录制到rtpdump格式。

它适用于Mono或.Net,目前的目标是4.5.2,因为还计划提供一些编码和解码支持。