vue2.0+vue-video-player实现hls播放的案例
1. 安装依赖。
npm install vue-video-player --save
2. 在main.js引入vue-video-player。
import VueVideoPlayer from 'vue-video-player'
Vue.use(VueVideoPlayer)
截图如下:

3. 编写myPlayer.vue组件,并引入其样式。
myPlayer.vue:
<template>
<div class="player-container">
<video-player class="vjs-custom-skin" :options="playerOptions"></video-player>
</div>
</template> <script>
//引入video样式
import 'video.js/dist/video-js.css'
import 'vue-video-player/src/custom-theme.css' //引入hls.js
import 'videojs-contrib-hls.js/src/videojs.hlsjs' export default {
data () {
return {
playerOptions: {
playbackRates: [0.7, 1.0, 1.5, 2.0], //播放速度
autoplay: false, //如果true,浏览器准备好时开始回放。
controls: true, //控制条
preload: 'auto', //视频预加载
muted: false, //默认情况下将会消除任何音频。
loop: false, //导致视频一结束就重新开始。
language: 'zh-CN',
aspectRatio: '16:9', // 将播放器置于流畅模式,并在计算播放器的动态大小时使用该值。值应该代表一个比例 - 用冒号分隔的两个数字(例如"16:9"或"4:3")
fluid: true, // 当true时,Video.js player将拥有流体大小。换句话说,它将按比例缩放以适应其容器。
sources: [{
type: 'application/x-mpegURL',
src: 'https://video-dev.github.io/streams/x36xhzz/x36xhzz.m3u8'
}],
poster: "http://static.smartisanos.cn/pr/img/video/video_03_cc87ce5bdb.jpg", //你的封面地址
width: document.documentElement.clientWidth,
notSupportedMessage: '此视频暂无法播放,请稍后再试' //允许覆盖Video.js无法播放媒体源时显示的默认信息。
}
}
},
methods: { },
computed: { }
}
</script> <style lang="scss">
@import "@/assets/scss/player.scss";
</style>
4. 注意事项:
- video-player标签的class必须设置成“video-player vjs-custom-skin”,你引入的样式才能起作用。
- 增加hls的支持。支持流媒体m3u8g等等格式播放。
5. 增加hls.js支持,故此要安装依赖,如下:
npm install --save videojs-contrib-hls
所以在myPlayer.vue 引入:

6. package.json 如下:

7. 启动服务,查看效果
npm run dev
最终效果图:

我的github项目地址:https://github.com/whiskyma/vue-video-player
谢谢大家!!!有不足之处,望多多指教。。。。。(马清元)
vue2.0+vue-video-player实现hls播放的案例的更多相关文章
- vue2.0 vue.set()
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...
- vue2.0 vue.extend()的拓展
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...
- Vue2.0 Vue.set的使用
原文链接: https://blog.csdn.net/qq_30455841/article/details/78666571
- vue1.0和vue2.0的区别(二)
这篇我们继续之前的vue1.0和vue2.0的区别(一)继续说 四.循环 学过vue的同学应该知道vue1.0是不能添加重复数据的,否则它会报错,想让它重复添加也不是不可以,不过需要定义别的东西 而v ...
- VUE2.0学习总结
摘要: 年后公司项目开始上vue2.0,自己对学习进行了总结,希望对大家有帮助! VUE2.0学习 vue介绍 vue是什么? https://vuefe.cn/guide vue也是一个数据驱动框架 ...
- vue2.0+vue-dplayer实现hls播放
vue2.0+vue-dplayer实现hls播放 开始 安装依赖 npm install vue-dplayer -S 1,编写组件HelloWorld.vue <template> & ...
- vue 专题 vue2.0各大前端移动端ui框架组件展示
Vue 专题 一个数据驱动的组件,为现代化的 Web 界面而生.具有可扩展的数据绑定机制,原生对象即模型,简洁明了的 API 组件化 UI 构建 多个轻量库搭配使用 请访问链接: https://ww ...
- Vue2.0音乐播放器
学习了几周的vuejs,学习的过程中做了一个音乐播放器WebApp (顺便听听音乐~) ,过程中也有借鉴过别人做的,感觉受益匪浅 链接 项目在线地址 : 音乐播放器 github : https:// ...
- vue2.0实践 —— Node + vue 实现移动官网
简介 使用 Node + vue 对公司的官网进行了一个简单的移动端的实现. 源码 https://github.com/wx1993/node-vue-fabaocn 效果 组件 轮播图(使用 vu ...
随机推荐
- python中yield的用法详解-转载
原文链接:https://blog.csdn.net/mieleizhi0522/article/details/82142856 ,今天在写python爬虫的时候,循环的时候用到了yield,于是搜 ...
- GVIM、VIM
全世界最好的编辑器VIM之Windows配置篇 Highlight all search pattern matches Top 10 things Vi user need to know abou ...
- Liunx-tail命令
1. 实时刷新tail -f /var/log/messages 2. 实时刷新最新500条log tail -500f /var/log/messages 3. tail -n 20 catali ...
- VUE 单选下拉框Select中动态加载 默认选中第一个
<lable>分类情况</lable> <select v-model="content.tid"> <option v-for=&quo ...
- Ubuntu系统---终端下用g++进行c++项目
Ubuntu系统---终端下用g++进行c++项目 目录 一.编译工具(g++/gcc)和编辑工具(vim/gedit)二.C语言 的编译与运行三.C++语言 的编译与运行四.gcc/g++的详细过程 ...
- tsp问题-遍历算法/随机算法
旅行商问题,即TSP问题(Traveling Salesman Problem)又译为旅行推销员问题.货郎担问题,是数学领域中著名问题之一.假设有一个旅行商人要拜访n个城市,他必须选择所要走的路径,路 ...
- Hibernate初探之单表映射——使用Junit进行测试
编写一个Hibernate例子 第四步:使用Junit进行测试 三个常用的注解标签 @Test:测试方法 @Before:初始化方法 @After:释放资源 执行顺序:Before注解标签下的方法 ...
- .NET Core 3时代DevExpress Winforms v19.2增强TreeList控件
DevExpress Winforms Controls内置140多个UI控件和库,完美构建流畅.美观且易于使用的应用程序.无论是Office风格的界面,还是分析处理大批量的业务数据,DevExpre ...
- 双击bin/startup.bat启动tomcat常见错误
双击bin/startup.bat启动tomcat常见错误: 常见错误:可能与其他服务的端口号冲突. tomcat的默认端口号8080,此端口号较为常见,建议修改此端口号. 修改方法: 点击conf文 ...
- Python 8--异常