vue通过video.js解决m3u8视频播放格式的方法


Posted in Javascript onJuly 30, 2019

前言

今天被这个关于m3u8视频播放不了搞了一下午,这个项目所有的视频流都是m3u8格式的,后台给我们返回的都是m3u8格式的视频流,解决了好长时间,看了好多博客,只有这个博客给我点启发,去解决这个问题,请查看。会使用两种方法来解决这个问题

第一种方法

1.在vue中安装下面这些插件

cnpm install video.js --save
ccnp install videojs-contrib-hls --save

网上有说video.js版本太高不能使用,不能使用7以上的版本,用5版本的,最后结果测试,根本不需要什么低版本的高版本的,7版本以上的没有任何问题。小编已经亲自试验过

2.页面中使用

<video
id="myVideo"
class="video-js vjs-default-skin vjs-big-play-centered"
controls
preload="auto"
style='width: 100%;height: auto'
:poster="poster"
>
</video>

2.1 poster设置封面图,我在计算属性判断了一下,,如果后台上传封面图,就显示,如果没有上传就显示默认的图片,这个是根据自己的需求来解决

computed: {
  poster: function() {
   return this.posterSrc
    ? this.posterSrc
    : require("./../assets/images/coveImg.png");
  }
 },

2.2在methods中定义一个方法,getViewList用于请求数据,拿到视频流

2.3下载之后在页面中引入,如果引入video.js有问题,就在html文件引入

<script src="//vjs.zencdn.net/7.3.0/video.min.js"></script>

这样就可以了

vue通过video.js解决m3u8视频播放格式的方法

2.3video.js配置项

getVideo() {
   this.myVideo = videojs("myVideo", {
    bigPlayButton: true,
    textTrackDisplay: false,
    posterImage: false,
    errorDisplay: false,
    hls: {
     withCredentials: true
    }
   });
  }

最重要的一点,标红的,一定一定要使用,下载了安装包,一定要在这个使用,才能失效。不然播放不了m3u8视频格式

mounted() {
this.$nextTick(() => {
this.getVideo();
});
this.getViewList();
},

定义的两个方法,放在mounted

第二种方法

上面是实现播放m3u8,接下来说第二种实现方法

<script src="https://cdn.jsdelivr.net/npm/hls.js@latest"></script>

地址请看 https://www.npmjs.com/package/hls.js/v/canary

引入上面那个文件

vue通过video.js解决m3u8视频播放格式的方法

只需要写这么多,然后再mounted生命周期调用,但是这个没有video.js样式好看,都可以解决播放不了m3u8视频的格式问题。

以上都是来解决m3u8视频播放不了的问题,

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,谢谢大家对三水点靠木的支持。

Javascript 相关文章推荐
javascript 常用方法总结
Jun 03 Javascript
jquery右下角弹出提示框示例代码
Oct 08 Javascript
JavaScript 事件对象介绍
Apr 13 Javascript
Angularjs整合微信UI(weui)
Mar 15 Javascript
AngularJS入门(用ng-repeat指令实现循环输出
May 05 Javascript
jQuery控制div实现随滚动条滚动效果
Jun 07 Javascript
项目实践一图片上传之form表单还是base64前端图片压缩(前端图片压缩)
Jul 28 Javascript
微信小程序 wx.request(object) API详解及实例代码
Sep 30 Javascript
Vue.js学习教程之列表渲染详解
May 17 Javascript
jfinal与bootstrap的登出实战详解
Nov 27 Javascript
详解开发react应用最好用的脚手架 create-react-app
Apr 24 Javascript
webpack4.x打包过程详解
Jul 18 Javascript
微信小程序用户授权弹窗 拒绝时引导用户重新授权实现
Jul 29 #Javascript
vue使用混入定义全局变量、函数、筛选器的实例代码
Jul 29 #Javascript
vue前后分离调起微信支付
Jul 29 #Javascript
详解vue-property-decorator使用手册
Jul 29 #Javascript
微信小程序new Date()方法失效问题解决方法
Jul 29 #Javascript
微信小程序 WXML节点信息查询详解
Jul 29 #Javascript
微信小程序登录对接Django后端实现JWT方式验证登录详解
Jul 29 #Javascript
You might like
PHP5中使用PDO连接数据库的方法
2010/08/01 PHP
PHP网页游戏学习之Xnova(ogame)源码解读(十二)
2014/06/25 PHP
ThinkPHP之用户注册登录留言完整实例
2014/07/22 PHP
Linux系统下使用XHProf和XHGui分析PHP运行性能
2015/12/08 PHP
splice slice区别
2006/10/09 Javascript
javascript实现的网页局布刷新效果
2008/12/01 Javascript
JQuery小知识
2010/10/15 Javascript
通过正则格式化url查询字符串实现代码
2012/12/28 Javascript
js实时获取并显示当前时间的方法
2015/07/31 Javascript
清除浏览器缓存的几种方法总结(必看)
2016/12/09 Javascript
mui back 返回刷新页面的实例
2017/12/06 Javascript
js最简单的双向绑定实例讲解
2018/01/02 Javascript
使用react实现手机号的数据同步显示功能的示例代码
2018/04/03 Javascript
Vue props用法详解(小结)
2018/07/03 Javascript
详解在Node.js中发起HTTP请求的5种方法
2019/01/10 Javascript
Vue 实现前进刷新后退不刷新的效果
2019/06/14 Javascript
教你如何将 Sublime 3 打造成 Python/Django IDE开发利器
2014/07/04 Python
django1.8使用表单上传文件的实现方法
2016/11/04 Python
Python实现MySQL操作的方法小结【安装,连接,增删改查等】
2017/07/12 Python
python中 chr unichr ord函数的实例详解
2017/08/06 Python
python检测文件夹变化,并拷贝有更新的文件到对应目录的方法
2018/10/17 Python
Python多图片合并PDF的方法
2019/01/03 Python
python GUI库图形界面开发之PyQt5滚动条控件QScrollBar详细使用方法与实例
2020/03/06 Python
python 绘制正态曲线的示例
2020/09/24 Python
CSS+jQuery实现的在线答题功能
2015/04/25 HTML / CSS
娇韵诗加拿大官网:Clarins加拿大
2017/11/20 全球购物
中药专业大学生医药工作求职信
2013/10/25 职场文书
慈善捐赠倡议书
2014/08/30 职场文书
2014年优秀党员材料
2014/12/18 职场文书
社区公民道德宣传日活动总结
2015/03/23 职场文书
领导干部失职检讨书
2015/05/05 职场文书
2016年五一国际劳动节活动总结
2016/04/06 职场文书
发工资啦!教你用Python实现邮箱自动群发工资条
2021/05/10 Python
CSS 实现Chrome标签栏的技巧
2021/08/04 HTML / CSS
Spring JPA 增加字段执行异常问题及解决
2022/06/10 Java/Android
Python如何利用pandas读取csv数据并绘图
2022/07/07 Python