html页面实时显示rtsp流(亲测有效,实用)

现在导师让做一个html实时显示rtsp视频流项目,在网上找了很多资料,主要有两种方法,插件和转流两种,第一种插件方法2015年之前Chrome等浏览器还未取消对 NPAPI插件支持的时候方案,继续使用低版本Chrome、Firefox等浏览器,通过VLC原生播放器直接播放,也不需要服务器支持,延迟非常低,终端也可以使用硬件的加速能力,多路播放也毫无压力。

缺点也非常明显:无法使用最新的浏览器和操作系统,不适合商用。如果能解决高版本的Chrome、Firefox、Edge等浏览器使用,此方案无疑是最佳选择!
第二种转流的方法:1.先转码再转流方案
原理是先在服务器端把RTSP转码成可播放的视频流,再提供给客户端播放器播放。此方案虽号称是无插件方案,但是需要服务器支持,两次转码导致延迟较高,一般高达数秒甚至数分钟。此方案首屏画面显示很慢。因为需要服务器不断转码转流,对CPU和内存消耗较大,带宽占用高,长期综合使用成本也很高。如果多路播放或者看高分辨率或 H.265视频,很可能就会出现卡顿、花屏等情况。

综合来看,此方案摄像头较少或者对延迟、画面要求较低的需求,商用难堪重任。

2.先转流再转码方案
原理与方案一不同点是把在服务器上转码的过程转移到终端电脑上,目前在高版本浏览器(除IE外)中,已经支持 WASM技术,可以使用此技术在终端电脑上把RTSP视频流转码后播放。此方案同样需要服务器的支持,由于在终端电脑转码,终端电脑配置好坏决定了播放质量,并且由于WASM只能软解码,无法利用终端电脑的加速能力,且不支持多线程,多路播放或者H.265格式视频,也容易出现卡顿、花屏等情况

你可能感兴趣的:(html,chrome,前端)