程序员必知:vue播放video插件vue

简介: 程序员必知:vue播放video插件vue

1.安装插件

1 npm install vue-video-player -S

2.配置插件

在main.js里添加

1 import VideoPlayer from 'vue-video-player'

2 require('video.js/dist/video-js.css')

3 require('vue-video-player/src/custom-theme.css')

4 Vue.use(VideoPlayer)

3.使用插件

在vue的组件页面里

1

2

3 ref="videoPlayer"

4 :playsinline="true"

5 :options="playerOptions"

6 >

7

8

9 export default {

10 name: 'BusImg',

11 data () {

12 return {

13 // 视频播放

14 playerOptions : {

15 playbackRates: 【0.7, 1.0, 1.5, 2.0】, //播放速度

16 autoplay: false, //如果true,浏览器准备好时开始回放。

17 muted: false, // 默认情况下将会消除任何音频。

18 loop: false, // 导致视频一结束就重新开始。

19 preload: 'auto', // 建议浏览器在加载元素后是否应该开始下载视频数据。auto浏览器选择最佳行为,立即开始加载视频(如果浏览器支持)

20 language: 'zh-CN',

21 aspectRatio: '16:9', // 将播放器置于流畅模式,并在计算播放器的动态大小时使用该值。值应该代表一个比例 - 用冒号分隔的两个数字(例如"16:9"或"4:3")

22 techOrder: 【'flash', 'html5'】, // 兼容顺序

23     flash: {

24 hls: { withCredentials: false },

25 swf: './static/media/video-js.swf' // 引入静态文件swf

26 },

27 html5: { hls: { withCredentials: false }//代码效果参考:http://www.ezhiqi.com/zx/art_3484.html }//代码效果参考:http://www.ezhiqi.com/zx/art_5454.html ,

28 sources: 【{ // 流配置,数组形式,会根据兼容顺序自动切换

29 type: 'rtmp/hls',

30 src: ''

31 }, {

32 withCredentials: false,

33 type: 'application/x-mpegURL',

34 src: ''

35 }】,

36 poster: "", //你的封面地址

37 // width: document.documentElement.clientWidth,

38 notSupportedMessage: '此视频暂无法播放,请稍后再试', //允许覆盖Video.js无法播放媒体源时显示的默认信息。

39 controlBar: {

40 timeDivider: true,

41 durationDisplay: true,

4 2 remainingTimeDisplay: false,

43 fullscreenToggle: true //全屏按钮

44 }

45 }

46

注意点

下面说说用这个插件来直播的一些坑和注意点吧:

首先,常用的 demo 在 vue-video-player 中官方已经给出了,按要求来就可以,其中

如果需要播放 HLS 流,需要安装 videojs-contrib-hls 插件,非原生支持的浏览器,直播服务端需要开启 CORS

如果需要播放 RTMP 流,需要安装 videojs-flash 插件

如果两个流都需要播放,flash 插件需要安装到 hls 插件之前

安装vue-video-player插件一定要用npm安装,不可使用cnpm安装,否则会报“The "flash" tech is undefined. Skipped browser support check for that tech”

相关文章
|
8月前
|
JavaScript
Vue中如何实现兄弟组件之间的通信
在Vue中,兄弟组件可通过父组件中转、事件总线、Vuex/Pinia或provide/inject实现通信。小型项目推荐父组件中转或事件总线,大型项目建议使用Pinia等状态管理工具,确保数据流清晰可控,避免内存泄漏。
729 2
|
7月前
|
缓存 JavaScript
vue中的keep-alive问题(2)
vue中的keep-alive问题(2)
618 137
|
11月前
|
人工智能 JavaScript 算法
Vue 中 key 属性的深入解析:改变 key 导致组件销毁与重建
Vue 中 key 属性的深入解析:改变 key 导致组件销毁与重建
1164 0
|
10月前
|
人工智能 JSON JavaScript
VTJ.PRO 首发 MasterGo 设计智能识别引擎,秒级生成 Vue 代码
VTJ.PRO发布「AI MasterGo设计稿识别引擎」,成为全球首个支持解析MasterGo原生JSON文件并自动生成Vue组件的AI工具。通过双引擎架构,实现设计到代码全流程自动化,效率提升300%,助力企业降本增效,引领“设计即生产”新时代。
737 1
|
10月前
|
JavaScript 安全
在 Vue 中,如何在回调函数中正确使用 this?
在 Vue 中,如何在回调函数中正确使用 this?
521 0
|
JavaScript
vue实现任务周期cron表达式选择组件
vue实现任务周期cron表达式选择组件
1456 4
|
11月前
|
JavaScript UED
用组件懒加载优化Vue应用性能
用组件懒加载优化Vue应用性能
|
12月前
|
JavaScript 数据可视化 前端开发
基于 Vue 与 D3 的可拖拽拓扑图技术方案及应用案例解析
本文介绍了基于Vue和D3实现可拖拽拓扑图的技术方案与应用实例。通过Vue构建用户界面和交互逻辑,结合D3强大的数据可视化能力,实现了力导向布局、节点拖拽、交互事件等功能。文章详细讲解了数据模型设计、拖拽功能实现、组件封装及高级扩展(如节点类型定制、连接样式优化等),并提供了性能优化方案以应对大数据量场景。最终,展示了基础网络拓扑、实时更新拓扑等应用实例,为开发者提供了一套完整的实现思路和实践经验。
1675 78
|
缓存 JavaScript 前端开发
Vue 基础语法介绍
Vue 基础语法介绍
|
11月前
|
JavaScript 前端开发 开发者
Vue 自定义进度条组件封装及使用方法详解
这是一篇关于自定义进度条组件的使用指南和开发文档。文章详细介绍了如何在Vue项目中引入、注册并使用该组件,包括基础与高级示例。组件支持分段配置(如颜色、文本)、动画效果及超出进度提示等功能。同时提供了完整的代码实现,支持全局注册,并提出了优化建议,如主题支持、响应式设计等,帮助开发者更灵活地集成和定制进度条组件。资源链接已提供,适合前端开发者参考学习。
721 17