项目上需要基于视频巡检,在线勘查填写定制表单,降低巡检成本。
本文着重讲前端部分视频流展示解决方案。
流媒体(streamingmedia)是指将一连串的媒体数据压缩后,经过网上分段发送数据,在网上即时传输影音以供观赏的一种技术与过程,此技术使得数据包得以像流水一样发送;如果不使用此技术,就必须在使用前下载整个媒体文件。流式传输可传送现场影音或预存于服务器上的影片,当观看者在收看这些影音文件时,影音数据在送达观看者的计算机后立即由特定播放软件播放。用户边下载边观看,而不必等待整个文件下载完毕;通过网络播放流媒体文件时,文件本身不会在本地磁盘中存储,这样就节省了大量的磁盘空间开销。流媒体实际指的是一种新的媒体传送方式,有声音流、视频流、文本流、图像流、动画流等。流媒体服务器广泛应用于视频点播、视频会议、远程教育(直播游戏或者在线课堂时候电脑窗口画面转播给其他人)、远程医疗、在线直播系统中、校园安防接入的摄像头视频流、
其他的有兴趣可以自行深入了解,除了HTTP、WebSocket类的传输协议,其他是无法通用地传输到浏览器的,所以,如果要做一款通用的H5视频播放器,基本上就是一款HTTP/WebSocket协议的视频播放器,如果是类似于RTMP、RTSP类型协议的视频源,是不可避免,需要经过服务器转换的。
下面是调研安装的依赖,下面有详细说明,最终使用的是hls.js
在HTML5中播放视频流有几种解决方案,以下是一些常见的方法:
选择适合你需求的解决方案取决于你的具体情况。你可能需要考虑浏览器兼容性、服务器支持、网络带宽等因素。
html5+websocket_rtsp_proxy实现视频流直播
web页面上播放RTSP视频流,通常可以采用“jwplayer+ffmpeg+red5”的方案,由于这种方案首先将RTSP协议对应的视频流转码成RTMP协议的视频流,因此延迟通常会很高。为了降低直播的延迟,最好直接能直接在页面上播放RTSP协议的视频流。
整个架构如下图所示,分为服务器端和浏览器端两部分。
后来发现商用要license,于是放弃了。rtsp确实是支持的,我是考虑未来风险,其实免费的也可以用的。
在Vue2中使用hls.js来播放HLS(HTTPLiveStreaming)流的视频需要一些设置。以下是一般步骤:
这个示例中,我们在mounted钩子中调用initVideoPlayer方法来初始化视频播放器。如果浏览器支持hls.js,我们使用Hls类来加载HLS流,并将其附加到
请注意,这只是一个基本示例。实际中,你可能需要根据你的项目结构和需求进行适当的调整和扩展。确保在组件加载时初始化播放器,并根据需要处理错误和状态变化。
下午连好以后,看视频里的大姐吃鸡爪看了一会。
h5常用就用hls,要求更高的用RTSP,有些方案需要后端配合,跨域,ws等,可以根据实际情况选型。
然而,对于许多不熟悉的技术或业务情境,我们可能不知道从何处寻找,可能会走弯路。在这里,我要推荐ChatGPT,向其提问可以事半功倍。这也再次提醒了我自己!