详解vue-video-player使用心得(兼容m3u8)


Posted in Javascript onAugust 23, 2019

下载vue-video-player

npm install vue-video-player --save

在main.js文件引入

import VideoPlayer from 'vue-video-player'
require('video.js/dist/video-js.css')
require('vue-video-player/src/custom-theme.css')
Vue.use(VideoPlayer)

在页面中引入

<video-player
    ref="videoPlayer"
    class="video-player vjs-custom-skin"
    :playsinline="true"
    :options="playerOptions"
    @play="onPlayerPlay($event)"//监听开始状态
    @pause="onPlayerPause($event)"//监听暂停状态
   />

在页面中data中配置

playerOptions: {
    // playbackRates: [0.7, 1.0, 1.5, 2.0], //播放速度
    autoplay: false, // 如果true,浏览器准备好时开始回放。
    muted: false, // 默认情况下将会消除任何音频。
    loop: false, // 导致视频一结束就重新开始。
    preload: 'auto', // 建议浏览器在<video>加载元素后是否应该开始下载视频数据。auto浏览器选择最佳行为,立即开始加载视频(如果浏览器支持)
    language: 'zh-CN',
    aspectRatio: '16:9', // 将播放器置于流畅模式,并在计算播放器的动态大小时使用该值。值应该代表一个比例 - 用冒号分隔的两个数字(例如"16:9"或"4:3")
    fluid: true, // 当true时,Video.js player将拥有流体大小。换句话说,它将按比例缩放以适应其容器。
    sources: [
      {
       type: 'video/mp4', // 这里的种类支持很多种:基本视频格式、直播、流媒体等,具体可以参看git网址项目
       src: 'https://cdn.theguardian.tv/webM/2015/07/20/150716YesMen_synd_768k_vp8.webm' // url地址
      }
    ],
    hls: true,
    poster: 'http://pic33.nipic.com/20131007/13639685_123501617185_2.jpg', // 你的封面地址
    width: document.documentElement.clientWidth, // 播放器宽度
    notSupportedMessage: '此视频暂无法播放,请稍后再试', // 允许覆盖Video.js无法播放媒体源时显示的默认信息。
    controlBar: {
     timeDivider: true,
     durationDisplay: true,
     remainingTimeDisplay: false,
     fullscreenToggle: true // 全屏按钮
    }
   },

挂载视频组件(非必须)不写这一步也可以实现播放,添加这个是为了自定义按钮使用

computed: {
  player() {
   return this.$refs.videoPlayer.player//自定义播放
  }
 },

官方文档

video.js:https://docs.videojs.com/docs/api/player.html
vue-video-player:https://github.com/surmon-china/vue-video-player

不需要兼容m3u8的,以上就可以实现能播放

兼容m3u8的需要下载

npm install --save videojs-contrib-hls

在文件中引入

import ‘videojs-contrib-hls'

我这么引入会出现找不到文件,我没找到问题所在,如果这么引入不行,可以改为

在main.js文件中

const hls = require('videojs-contrib-hls')
Vue.use(hls)

这样就好了

在页面中测试

{
      type: 'application/x-mpegURL', // 这里的种类支持很多种:基本视频格式、直播、流媒体等,具体可以参看git网址项目
      src:
       'https://cdn.letv-cdn.com/2018/12/05/JOCeEEUuoteFrjCg/playlist.m3u8' // url地址,从别的博主那看来的地址,亲测可用
     }

至此就可以播放了

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
asp 取文本框名称代码
Dec 02 Javascript
JS 自定义函数缺省值的设置方法
May 05 Javascript
JavaScript 判断日期格式是否正确的实现代码
Jul 04 Javascript
最短的javascript:地址栏载入脚本代码
Oct 13 Javascript
Javascript算符的优先级介绍
Mar 20 Javascript
获取阴历(农历)和当前日期的js代码
Feb 15 Javascript
原生JS实现的放大镜效果实例代码
Oct 15 Javascript
JavaScript中的this陷阱的最全收集并整理(没有之一)
Feb 21 Javascript
vue弹窗组件使用方法
Apr 28 Javascript
详解vue-cli 3.0 build包太大导致首屏过长的解决方案
Nov 10 Javascript
django使用channels2.x实现实时通讯
Nov 28 Javascript
layui table 表格模板按钮的实例代码
Sep 21 Javascript
使用vue实现多规格选择实例(SKU)
Aug 23 #Javascript
jquery分页优化操作实例分析
Aug 23 #jQuery
jquery实现的分页显示功能示例
Aug 23 #jQuery
微信小程序 子级页面返回父级并把子级参数带回父级实现方法
Aug 22 #Javascript
通过扫小程序码实现网站登陆功能
Aug 22 #Javascript
vue中实现上传文件给后台实例详解
Aug 22 #Javascript
js的新生代垃圾回收知识点总结
Aug 22 #Javascript
You might like
php 利用socket发送HTTP请求(GET,POST)
2015/08/24 PHP
轻松掌握php设计模式之访问者模式
2016/09/23 PHP
php 生成签名及验证签名详解
2016/10/26 PHP
PHP 验证身份证是否合法的函数
2017/02/09 PHP
Laravel 数据库加密及数据库表前缀配置方法
2019/10/10 PHP
extjs之去除s.gif的影响
2010/12/25 Javascript
常用Extjs工具:Extjs.util.Format使用方法
2012/03/22 Javascript
javascipt基础内容--需要注意的细节
2013/04/10 Javascript
只需一行代码,轻松实现一个在线编辑器
2013/11/12 Javascript
jQuery制作的别致导航有阴影背景高亮模式窗口
2014/04/15 Javascript
详解addEventListener的三个参数之useCapture
2015/03/16 Javascript
js学习总结之DOM2兼容处理重复问题的解决方法
2017/07/27 Javascript
详解在React.js中使用PureComponent的重要性和使用方式
2018/07/10 Javascript
js实现按钮开关单机下拉菜单效果
2018/11/22 Javascript
判断文字超过2行添加展开按钮,未超过则不显示,溢出部分显示省略号
2019/04/28 Javascript
微信小程序网络请求实现过程解析
2019/11/06 Javascript
Vue.js使用axios动态获取response里的data数据操作
2020/09/08 Javascript
使用Python实现博客上进行自动翻页
2017/08/23 Python
Python返回数组/List长度的实例
2018/06/23 Python
在Python中过滤Windows文件名中的非法字符方法
2019/06/10 Python
Python读取xlsx文件的实现方法
2019/07/04 Python
python写程序统计词频的方法
2019/07/29 Python
Django发送邮件和itsdangerous模块的配合使用解析
2019/08/10 Python
Python文件操作函数用法实例详解
2019/12/24 Python
python PIL/cv2/base64相互转换实例
2020/01/09 Python
jupyter 实现notebook中显示完整的行和列
2020/04/09 Python
python爬虫筛选工作实例讲解
2020/11/23 Python
匈牙利超级网上商店和优惠:Alza.hu
2019/12/17 全球购物
几道Java和数据库的面试题
2013/05/30 面试题
保安的辞职报告怎么写
2014/01/20 职场文书
中学生操行评语
2014/04/24 职场文书
迎国庆横幅标语
2014/10/08 职场文书
教学质量月活动总结
2015/05/11 职场文书
贷款收入证明范本
2015/06/12 职场文书
2019年度行政文员工作计划范本!
2019/07/04 职场文书
导游词之南京栖霞山
2019/10/18 职场文书