由于csdn平台审核机制你能携带平台名称,下面以视频平台代替;

由于公司的项目跟视频平台代合作,公司的视频会上传到视频平台代云点播平台然后在从平台获取视频播放;这里是上传和播放的 vue 实现;只是简单的实现,具体的操作还需要根据自己的需求进行更改;

文章目录

  • 1、准备工作
  • 2、上传视频
  • 3、播放视频

1、准备工作

1、注册账户:https://www.polyv.net/
2、进入的后台管理 选择云点播功能

3、进入api接口选项 并且会拿到你专属的 【userid】【writeToken】【secretkey】

这里的 userid、writetoken、readtoken、secrekey 都是代码中必须的配置项,后面代码实现的时候会用到。

2、上传视频

上传视频 sdk :https://help.polyv.net/index.html#/vod/upload_js/web_upload_plugin

代码实现:

<template><div><inputtype="file"ref="files"multiple="multiple"@change="handleUpload"></div>
</template>
<script>import PlvVideoUpload from '@polyv/vod-upload-js-sdk'import md5 from 'js-md5'export default {data(){return {fileSetting: {desc: '测试视频上传', // 描述cataid: 1, // 分类ID 可以后端传递 也可以不写 或写死tag: 'tag', // 标签luping: 0, // 是否开启视频课件优化处理,对于上传录屏类视频清晰度有所优化:0为不开启,1为开启keepsource: 1 // 是否源文件播放(不对视频进行编码):0为编码,1为不编码}}},methods:{// 此方法主要用于加密一些视频平台的专用参数 如果是后端传递的 可以打掉getToken(videoUpload) {const ptime = Date.now()const userid = '8588843127'const secretkey = 'TNM0R9GKB9'const writeToken = '42beeed6-f28e-44f2-af64-331e7bc5730a'const hash = md5(ptime + writeToken)const sign = md5(secretkey + ptime)videoUpload.updateUserData({ ptime, hash, sign, userid })},// 由于视频平台的一些机制 你需要三分钟就重新加密你的 ptime 如果你打掉了就不行autoUpdateUserData(timer, videoUpload) {this.getToken(videoUpload)if (timer) {clearTimeout(timer)timer = null}timer = setTimeout(() => {this.autoUpdateUserData(timer, videoUpload)}, 3 * 50 * 1000)},/*** files:上传文件的数组* fileSetting:传递给视频平台的属性* callback:上传进度(成功、失败)* */uploadFile(files, fileSetting, callback){let videoUpload = new PlvVideoUpload();this.autoUpdateUserData(null, videoUpload);Array.from(files).forEach((file, index) => {const uploader = videoUpload.addFile(file, {// 上传视频进度的回调FileProgress: ({ progress }) => {const progressSize = (progress * 100).toFixed(2)callback(index, progressSize)},// 上传视频成功的回调FileSucceed: ({ fileData }) => {callback(index, fileData)},// 上传视频失败的回调onFileFailed: ({ errData }) => {callback(index, errData)}}, fileSetting)//上传全部videoUpload.startAll();})},//点击上传handleUpload(event){if(!event.target.value){this.$message.error('请选择需要上传的文件!');return false;}this.uploadFile(event.target.files, this.fileSetting, (index, event) => {console.log(index, event);})}}}
</script>

上传成功之后会有大约 10 分钟的审核时间,这段时间里视频是不能查看的;审核通过之后就可以正常查看了;

3、播放视频

播放 sdk:https://help.polyv.net/index.html#/vod/js/

代码实现:

<template><div><div id="player"></div></div>
</template>
<script>export default {data(){return {vodPlayerJs: 'https://player.polyv.net/script/player.js',vid: '8588843127d9b9388660dbda2acbe59b_8' // 视频平台视频对应的vid,上传成功之后也可以获取到这个vid}},mounted() {this.loadPlayerScript(this.loadPlayer)},destroyed() {if (this.player) {this.player.destroy()}},methods:{loadPlayerScript(callback) {if (!window.polyvPlayer) {const myScript = document.createElement('script')myScript.setAttribute('src', this.vodPlayerJs)myScript.onload = callbackdocument.body.appendChild(myScript)} else {callback()}},// 播放器的实例,以及配置loadPlayer() {const polyvPlayer = window.polyvPlayerthis.player = polyvPlayer({wrap: '#player',width: 800,height: 533,vid: this.vid})}}}
</script>

这个是简单的播放实现,更多的功能可以去播放 sdk 了解更多的配置;

vue 项目上传视频到保利威相关推荐

  1. VUE+element 上传视频

    VUE+element上传视频 效果展示 html部分 <el-form-item label="视频上传" prop="storageurl">& ...

  2. 将本地vue项目上传到github上

    将本地vue项目上传到github上 首先,打开本地创建好的vue项目文件,右键点击Git bash Here,打开Git命令工具,输入git init 回车运行,生成.git文件. 运行git ad ...

  3. vue 获取上传视频的第一帧做为视频封面

    上一篇文章记录了vue上传视频,接下来,需要在上传成功后截取视频第一帧做为视频封面. 截取视频第一帧 具体实现如下: <template><div><div v-if=& ...

  4. Vue项目上传到GitHub上

    一.下载git 并安装在电脑上 https://git-scm.com/downloads 二.注册GitHub账号 https://github.com/ 支持GitHub的浏览器如下:Chrome ...

  5. VS Code将vue项目上传到github/gitee过程以及报错调试

    前期准备: 1.在gitee上创建远程仓库 2.创建项目本地仓库 在终端操作: 首先,用命令切换到项目路径 输入个人信息(代码提交者) git config --global user.name &q ...

  6. vue input上传视频以及图片

    图片示例 主要代码 1.把图片视频转成本地的地址在页面显示 getObjectURL(file) {var url = null;// 下面函数执行的效果是一样的,只是需要针对不同的浏览器执行不同的 ...

  7. JS.VUE后台上传视频,文件格式修改,nacos配置

    上传视频: 到nacos修改 application配置上传视频    16:         name: aboutUsVideo         mimeLimit: video/*   **** ...

  8. vue 直接上传视频到阿里云oss

    1.安装oss npm install ali-oss --save 2.在src下的util文件创建utils.js工具类 /*** 时间日期格式化* @param format* @returns ...

  9. vue项目上传到svn出现module找不到情况的解决

    出现的问题 vue项目对应文件夹通过svn上传后,另一方检出下来的代码报错,主要报错是module的缺失. 问题分析 项目在本地是能跑的,因为通过SVN提交的时候是没有提交node_modules文件 ...

  10. vue element-upload上传视频或音频获取视频时长

    做这步操作主要是后端要求传视频的时长duration这个字段,获取方法 第一种: <el-upload class="upload-demo":multiple=" ...

最新文章

  1. c++语言函数大全,C++函数
  2. 源码篇——AsyncTask机制
  3. 分享Kali Linux 2017年第12周镜像文件
  4. 最长不下降子序列java代码_浅谈最长不下降子序列与最长上升子序列
  5. 传统网站移动化的难点
  6. 以 B2C 和 B2B 方式启动 SAP Spartacus 的批处理文件
  7. Ayoub's function CodeForces - 1301C(组合数学)
  8. adb命令检测apk启动时间、内存、CPU使用情况、流量、电池电量等——常用的adb命令...
  9. 4修改初始值_Java基础语法 --4(连载)
  10. python中为什么不支持char_python支持char吗
  11. Visual Studio 2013 突然不高亮,编译报错
  12. 计算机网络管理员高级操作技能考核试卷,高级计算机维修工操作技能考核试卷...
  13. List集合之LinkedList
  14. linux系统查看硬盘序列号
  15. java中的创建和调用_如何在Mirth Connect中创建和调用自定义Java代码
  16. 中国首台超级计算机“天河一号,我国首台超级计算机“天河一号”超负荷运行...
  17. 为什么网线接法要分交叉连接和直连连接两种方式
  18. jtds 支持 mysql 吗?_jTDS驱动兼容性问题
  19. iOS 编译过程的原理和应用
  20. 读曾鸣的《智能商业》有感

热门文章

  1. java对MP4视频编码转换为H264格式解决浏览器播放无画面问题
  2. 计算机维修5级,什么是计算机硬件的一级维修二级维修三级维修
  3. 思科模拟器交换机路由器常用命令
  4. jmeter接口测试
  5. 对于IT这两个字眼,是不是只能由学习过IT的大学生才能做呢,就由我来为大家讲解一下IT的由来!
  6. 软考网络工程师重难点总结分享~(3)
  7. 计算机毕业设计SSM电影票网上订票系统【附源码数据库】
  8. 不是愚人节玩笑 Conficker猎获英议会IT系统
  9. 计算机键盘和实验原理图,独立键盘的检测原理及程序实现方法
  10. 那些非常好用的电脑软件