vue+videojs视频播放、视频切换、视频断点分段上传
创始人
2024-03-03 05:34:23
0

“本次需求是做一个视频列表,点击视频列表播放对应视频;同时要求实现断点分段上传大文件(视频)的功能 。

videojs文档:Getting Started with Video.js - Video.js: The Player Framework | Video.js

断点续传组件地址:GitHub - gaoyuyue/MyUploader: 单文件上传,多文件上传,大文件上传,断点续传,文件秒传,图片上传

整体界面大致如下:

 

1. 安装依赖

npm i -S video.js

2.入口文件引入js和样式文件

// main.js (入口文件中引入js和样式文件)
import videojs from 'video.js'
import 'video.js/dist/video-js.css'// 如果需要可以注册为vue全局方法
Vue.prototype.$video = videojs;

3.开始封装video组件


4.测试视频组件是否正常

// 父组件中引入视频组件// 这里可以写个固定的地址测试一下视频组件能否播放
// 注意:不能是本地视频。比如是服务器上的视频才可以播放。

失败信息】-- 通常就是code为4.  大概意思就是因为视频格式和网络原因不能播放。这有几个原因:

1.视频格式不正确。 要求是type是MP4,而请求播放的视频不是MP4格式。

2.网络不同或者跨域。这种错误很常见且隐秘。需要看看播放地址是否能正常访问,或者该视频地址是不是存在跨域(corss origin)。跨域就用代理,很好解决,不在追叙。

【汉化失败】

明明设置了language为中文,但是结果还是英文。这里有个问题,videojs不会自动引入语言包,需要我们自行引入中文语言包。找到语言包,单独拿出来,放在src目录下,在入口文件中引入即可。

方法:node_moudles下找打videojs.dist/lang/zh-cn.js,如下图,

找到zh-cn.js,单独复制出来,放进src的js文件夹下。

当然,这时候还要再这个js文件中引入video.js,

 然后在入口文件引入这个语言包即可汉化成功。

5.视频列表切换视频播放

// 视频列表代码比较简单不再写了  直接写切换方法// 比如在父组件中  
  • {{ 视频名称 }}
  • // 视频切换方法 changeVideoSource (video) {this.$refs.players.changeVideoSrc(video.src); },

    至此,完成视频切换播放功能。

    6.断点续传的插件

    使用了下边这个断点续传的插件

    GitHub - gaoyuyue/MyUploader: 单文件上传,多文件上传,大文件上传,断点续传,文件秒传,图片上传

    首先,我们需要自行安装plupload。因为上边组件基于此组件封装的。

    npm i -S plupload

    然后,引入上边github项目中的如下几个文件:

    这四个文件引入自己项目中去即可。

    上传地址】 

     url就是上传地址。

    上传参数

     可以在这里定义上传所需参数,

    up.setOption("multipart_params", {"size":file.size,"md5":file.md5,filename: 'hahaha',id: '123456',// .......});

    至此,视频播放与视频上传基本完成。要多看文档,多实践。

    相关内容

    热门资讯

    前端-session、jwt 目录:   (1)session (2&#x...
    linux入门---制作进度条 了解缓冲区 我们首先来看看下面的操作: 我们首先创建了一个文件并在这个文件里面添加了...
    关于测试,我发现了哪些新大陆 关于测试 平常也只是听说过一些关于测试的术语,但并没有使用过测试工具。偶然看到编程老师...
    前缀和与对数器与二分法 1. 前缀和 假设有一个数组,我们想大量频繁的去访问L到R这个区间的和,...
    nodejs:本地安装nvm实... 一、背景-使用不同版本node的原因 vue3+ts、nuxt3版本,node...
    JAVA集合知识整理 Java集合知识整理 HashMap相关 HashMap的底层数据结构:jdk1.8之...
    无刷直流电机介绍及单片机控制实... 无刷直流电机介绍及单片机控制实例前言基本概念优势与劣势使用寿命基本结构使用单片机控制实例电子调速器&...
    fwdiary(2) dp2 1.传纸条  AcWing 275. 传纸条 - AcWing 走两条路,走一条最大的...
    常用的DOS命令 常用的DOS命令 DOS(Disk Operating System,磁...
    <C++> 类和对象(下) 1.const成员函数将const修饰的“成员函数”称之为const成员函数,cons...