一、通过iframe来实现
width:视频宽度
height:视频高度
src:视频路径
allowfullscreen:允许全屏显示
Iframe的使用比较简单便捷,但是iframe也会引入广告
二、H5视频播放器
H5视频播放器的用法和iframe相似
所谓的可选属性即可以选择性地填写,也可不写,包含了一下几个:
autoplay:视频自动播放
controls:向用户显示控件,可以控制视频的播放暂停等
loop:循环播放
muted:静音
poster="图片路径":设置视频海报封面
preload:判读是否在页面加载后载入视频,auto(一旦页面加载就开始加载视频)/metadata(指示页面加载后仅加载视频的元数据)/none(面加载后不加载视频),如果设置了autoplay,就会忽略这个属性
注意:视频设置宽高为100%,视频的大小也不会填充整个页面,我们给视频<video>设置object-fit:fill
三、使用视频插件vue-video-player
1、首先需要安装插件:
npm install vue-video-player –save
2、其次在main.js文件中引入:
import VueVideoPlayer from 'vue-video-player'
Vue.use(VueResource)
3、页面上使用
options是vue-video-player的一些参数选项,我们主要设置了以下几个:
poster:视频播放前显示的图片
sources:视频资源,包含了视频的类型和路径
language:与视频匹配的语言,浏览器默认为en
muted:视频静音
相关的参数设置我们可以参考video.js文档:http://docs.videojs.com/tutorial-options.html
由于项目中的视频返回格式是m3u8,于是选择较为成熟的video.js,这里先贴上官网文档地址 https://docs.videojs.com/
进入可以看到插件的API和使用指南,还包括angularJS、react等框架的使用方法,因为我们项目用的vue框架,这里直接看vue的使用。
npm install --save-dev video.js
安装成功后,在man.ts文件下引入对应的css样式,并进行全局组件注册
到这一步视频就可以播放了,因为我们项目的视频是m3u8格式,在设置sources的时候,type需要设置为 application/x-mpegURL ,目前使用已知支持的视频格式有mp4、rtmp、flv还有目前正在使用的m3u8,其他格式需要各位看官自行搜索是否是否支持了。同时,options可设置的不仅仅是上面的内容,通过文档可以查看其他设置, https://docs.videojs.com/tutorial-options.html#controls 。
我们项目里用到的是实时监控画面,所以需要切换不同的监控点,下面对于切换视频地址贴上简单的示例。
到此,视频地址的切换功能也完成了。因为是实时监控视频,目前还有个问题还没解决,当视频播放到一定时间后,就会存在视频加载问题,会造成视频播放不够流畅,这个问题还在研究中,解决后会继续更新到这篇文章里。由于初次使用videoJS插件,还有很多功能不够熟悉需要继续研究,各位看官也可以直接在评论区进行交流。