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高级程序设计 阅读笔记(十四) js继承机制的实现
Aug 14 Javascript
js中substring和substr的定义和用法
May 05 Javascript
JS应用正则表达式转换大小写示例
Sep 18 Javascript
基于jquery实现人物头像跟随鼠标转动
Aug 23 Javascript
Jquery操作cookie记住用户名
Mar 29 Javascript
Angularjs中UI Router的使用方法
May 14 Javascript
JavaScript中最容易混淆的作用域、提升、闭包知识详解(推荐)
Sep 05 Javascript
原生JS下拉加载插件分享
Dec 26 Javascript
Angularjs 实现动态添加控件功能
May 25 Javascript
详解js 创建对象的几种方法
Mar 08 Javascript
JS插件amCharts实现绘制柱形图默认显示数值功能示例
Nov 26 Javascript
vue项目中js-cookie的使用存储token操作
Nov 13 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
一个多文件上传的例子(原创)
2006/10/09 PHP
php 空格,换行,跳格使用说明
2009/12/18 PHP
重新认识php array_merge函数
2014/08/31 PHP
php+curl 发送图片处理代码分享
2015/07/09 PHP
PHP简单生成缩略图相册的方法
2015/07/29 PHP
给WordPress中的留言加上楼层号的PHP代码实例
2015/12/14 PHP
PHP pthreads v3在centos7平台下的安装与配置操作方法
2020/02/21 PHP
一段实现页面上的图片延时加载的js代码
2010/02/11 Javascript
jquery 与NVelocity 产生冲突的解决方法
2011/06/13 Javascript
JQuery验证工具类搜集整理
2013/01/16 Javascript
让js弹出窗口居前显示的实现方法
2013/07/10 Javascript
ExtJS4中的requires使用方法示例介绍
2013/12/03 Javascript
jQuery异步获取json数据方法汇总
2014/12/22 Javascript
Javascript访问器属性实例分析
2014/12/30 Javascript
jQuery实现的向下图文信息滚动效果
2015/05/03 Javascript
JavaScript声明变量名的语法规则
2015/07/10 Javascript
js定时器+简单的动画效果实例
2017/11/10 Javascript
深入浅析vue组件间事件传递
2017/12/29 Javascript
解决js ajax同步请求造成浏览器假死的问题
2018/01/18 Javascript
jQuery实现遍历XML节点和属性的方法示例
2018/04/29 jQuery
浅析我对JS延迟异步脚本的思考
2020/10/12 Javascript
[02:52]DOTA2新手基础教程 米波
2014/01/21 DOTA
python里对list中的整数求平均并排序
2014/09/12 Python
10分钟用python搭建一个超好用的CMDB系统
2019/07/17 Python
通过python3实现投票功能代码实例
2019/09/26 Python
使用pyinstaller逆向.pyc文件
2019/12/20 Python
Python自定义sorted排序实现方法详解
2020/09/18 Python
记录一下scrapy中settings的一些配置小结
2020/09/28 Python
Django haystack实现全文搜索代码示例
2020/11/28 Python
北京一家公司的.net开发工程师笔试题
2012/04/17 面试题
英语文学专业学生的自我评价
2013/10/31 职场文书
运动会表扬稿大全
2014/01/16 职场文书
信用卡逾期证明示例
2014/09/13 职场文书
2015入党自传格式范文
2015/06/26 职场文书
导游词之河北邯郸
2019/09/12 职场文书
SQLServer2019 数据库的基本使用之图形化界面操作的实现
2021/04/08 SQL Server