树莓派在浏览器中播放RTSP流

3

我已经使用以下方法从我的树莓派相机模块设置了一个RTSP流:

raspivid -o - -t 9999999 |cvlc -vvv stream:///dev/stdin --sout '#rtp{sdp=rtsp://:8554/}' :demux=h264

我可以使用以下方式在VLC中查看: rtsp://192.168.0.18:8554/

但是,当我尝试将视频嵌入网页时,视频无法显示。

<!DOCTYPE html>
<html><body>
<OBJECT classid="clsid:9BE31822-FDAD-461B-AD51-BE1D1C159921"
 codebase="http://downloads.videolan.org/pub/videolan/vlc/latest/win32/axvlc.cab"
 width="800" height="600" id="vlc" events="True">
 <param name="Src" value="rtsp://192.168.0.18:8554/" />
 <param name="ShowDisplay" value="True" />
 <param name="AutoLoop" value="False" />
 <param name="AutoPlay" value="True" />
 <embed id="vlcEmb" type="application/x-google-vlc-plugin" version="VideoLAN.VLCPlugin.2" autoplay="yes" loop="no" width="640" height="480"
 target="rtsp://192.168.0.18:8554/" ></embed>
</OBJECT>
</body></html>

什么是在网页中嵌入视频的最佳方式,以便在网页浏览器中查看?
1个回答

0

这有点棘手 - 当您直接使用VLC打开RTSP链接时,它应该可以工作,因为VLC已经预装了所有编解码器(在您的情况下是H264)。但是我不知道浏览器插件会发生什么情况 - 它是否重用来自VLC安装的编解码器或其他。可能只是查看者端缺少编解码器,但我不确定。此外,使用插件可能会遇到不同浏览器之间支持的问题等等。

HTML5视频方面有点棘手,因为据我所记得(这可能已经改变),并非所有浏览器都完全支持实时H.264或WebM。我仍然会选择WebM,因为Chrome和Firefox都支持它,只有IE需要添加程序。检查this问题,其中包含有效的WebM流命令行响应,并查看它是否适用于您。如果可以,您甚至可以省略所有embed内容,只需使用普通的HTML5视频标签即可。


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