在网页中嵌入H.264视频的实时RTSP流

30
我有一台服务器通过RTSP(rtsp://...)向网络提供实时H.264视频,并一直在尝试找到一种方法在用户的浏览器中显示流(至少在Windows和OS X上 - Linux是一个奖励)。我目前已经嵌入了VLC播放器,并且在IE9和Mozilla Firefox 12.0中都可以使用,但是最理想的情况是,用户最多只需为其浏览器安装插件或类似物品(而不是整个程序)。
我能够使用开源解决方案,但不能使用任何GPL。Java小程序或任何类似东西都是可行的。
迄今考虑过但似乎无法工作的解决方案:
- HTML5视频标签:不支持实时RTSP流 - GStreamer(Java绑定)/ OSSBuild GStreamer-WinBuilds v0.10.7 Beta 4 LGPL:插件与RTSP源似乎有点问题,WinBuild(我的流给出了与流设置请求相关的错误,而其他流则没有) - JavaFX:在其最新版本中似乎已经取消对实时RTSP流的支持 - Xuggler:许可似乎存在问题 - JMF:旧版,没有明显的H.264支持 - FMJ:似乎没有对实时RTSP流的支持
我应该重新评估这些可能性吗?如果有其他建议(例如Flash或Silverlight),将不胜感激。
谢谢!
编辑:在HTML5中获得解决方案将是非常好的。

如果您可以用HTTP Live Streaming实现替换rtsp实现,那么您可能需要考虑一下。JavaFX 2.2将支持通过HTTP Live Streaming传递的H.264,至少在Windows / OSX / Linux上,但(如您所指出的)不支持RTSP传递。如果您考虑进行此切换,则还应查看此JavaFX 2.1视频支持状态摘要 - jewelsea
1
谢谢回复!不幸的是,我无法切换到HTTP直播。 - jstol
3个回答

12
直播必须由浏览器支持,而不是HTML5播放器。您可以参考此处的文档http://www.bitspace.in/2011/02/html5-live-streaming-media-server.html。同时,rtsp无法使用HTML5播放,例如在http://www.jquery4u.com/flowplayer/html5-video-rtsp-live-streams/#.T9hzRjkpK0x中。如果您可以转码视频,则可以使用HTML5。您可以检查将rtsp视频流转换为http流的答案,或者参考wowza服务器的文档来转换流http://www.wowza.com/forums/content.php?39-How-to-re-stream-video-from-an-IP-camera-%28RTSP-RTP-re-streaming。通常情况下,如果您的代码中没有嵌入播放器,则rtsp流会用外部播放器打开,但不知道如何向用户发送消息以安装任何插件来播放流,并且这在跨设备和跨浏览器方面的效果如何。此外,除了httprtmp之外,没有任何Flash播放器支持处理rtsp流

2
我们公司使用的互联网摄像机具有浏览器界面,可以做到这一点。令人烦恼的是,我们无法访问嵌入式视频播放器的源代码,但是以下网站似乎具有该源代码。

http://en.pudn.com/downloads357/doc/detail1552764_en.html

然而,更烦人的事情是,这个网站要求你先注册,然后提交5个代码片段才能下载。我还没有完成这些上传,感觉这可能是一场白兔追逐,我只是分享一下,因为我可能错了。

0

VLC插件在你所询问的所有平台上都可以正常工作。


5
NPAPI 将很快在 Google Chrome/Canary 中被禁用。在这种情况下,如何使用 VLC 和 Google Chrome/Canary? - user285594
也想知道答案 @YumYumYum。希望能找到不需要安装整个VLC的解决方案。 - jle
请参阅http://www.vboxcomm.com/enable-vlc-web-plugin-in-google-chrome-npapi.html?tmpl=component。简而言之,直到2015年9月用户可以手动启用NPAPI;届时,VLC有望提供PPAPI支持。 - Alex Cohn
现在是否支持PPAPI,或者有没有替代方案来流式传输原始的h264 - Redsandro
@Redsandro:目前还没有,你绝对可以自愿参与构建这样的项目。 - Alex Cohn

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接