视频托管--七牛云

2023-10-27

目录

vue-video-player

视频托管


vue-video-player

安装:

npm install vue-video-player -S

在main.js导入

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

在某个组件中导入(script标签)

import { videoPlayer } from 'vue-video-player'
import 'video.js/dist/video-js.css'

export default {
  components: {
    videoPlayer
  }
}

template标签中

<videoPlayer class="video-player vjs-custom-skin"
             ref="videoPlayer"
             :playsinline="true"
             :options="playerOptions"
             @play="onPlayerPlay($event)"
             @pause="onPlayerPause($event)">

js

export default {
    data() {
        return {
            playerOptions: {
                playbackRates: [0.5, 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", // 类型
                    src: '' // 视频url地址
                }],
                poster: '', // 封面地址
                notSupportedMessage: '此视频暂无法播放,请稍后再试', // 允许覆盖Video.js无法播放媒体源时显示的默认信息。
                controlBar: {
                    timeDivider: true, // 当前时间和持续时间的分隔符
                    durationDisplay: true, // 显示持续时间
                    remainingTimeDisplay: false, // 是否显示剩余时间功能
                    fullscreenToggle: true // 是否显示全屏按钮
                }
            }
        }
    },
    methods: {
        onPlayerPlay() {
            // 当视频播放时,执行的方法
            console.log('视频开始播放')
        },
        onPlayerPause() {
            // 当视频暂停播放时,执行的方法
            console.log('视频暂停')
        },
    }
}

视频托管

第三方托管: 七牛云 - 产品主页 (qiniu.com)

自己搭建存储服务器 

七牛云上传

# pip install qiniu
from qiniu import Auth, put_file, etag
import qiniu.config
#需要填写你的 Access Key 和 Secret Key
access_key = ''
secret_key = ''
#构建鉴权对象
q = Auth(access_key, secret_key)
#要上传的空间
bucket_name = ''
#上传后保存的文件名
key = 'my-python-logo.png'
#生成上传 Token,可以指定过期时间等
token = q.upload_token(bucket_name, key, 3600)
#要上传文件的本地路径
localfile = './致命诱惑.mp4'
ret, info = put_file(token, key, localfile, version='v2')
print(info)
assert ret['key'] == key
assert ret['hash'] == etag(localfile)

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

视频托管--七牛云 的相关文章

  • 未捕获的 TypeMismatchError:无法在“CanvasRenderingContext2D”上执行“drawImage”

    我对以下代码片段有疑问 var o inserted motive find span contains document documentElement o 0 b fillText m i h b drawImage d i h e f
  • 在 Google 表格脚本中设置活动单元格的值

    我想创建一个公式 在某个单元格更改上创建时间戳 下面的代码就可以了 我现在想做的是将公式转换为纯文本 将该时间戳锚定到工作表上 如果您手动执行此操作 您将选择时间戳 复制它们并将它们粘贴为值 我不想手动执行此操作 因此我创建了下面的脚本 它
  • 如何设置上传的文件名?

    By using multer I made it to request image file like this 这个文件存储在我设置的 上传 文件夹中 我的代码如下 var multer require multer var uploa
  • 在其他不可滚动的 div 上滚动时如何滚动可滚动的 div?

    我知道这个问题听起来很令人困惑 但这就是我想要做的 在下面的代码片段中 如果用户在绿色 div 上滚动 我希望黄色 div 相应地滚动 就像滚动黄色 div 一样 请注意 黄色 div 有overflow auto 但绿色的则不然 docu
  • 如何将 Django 中的数组传递给模板并在 JavaScript 中使用它

    我想将数组传递给模板 然后通过 JavaScript 使用它 In my views py I have arry1 Str 500 20 return render to response test html array1 arry1 在
  • 如何使用 JavaScript 选择预节点/块中的文本?

    我了解不允许 JS 将任意文本复制到剪贴板背后的安全原因 但是是否有一种方法可以通过单击按钮来选择预节点中的文本 类似于 select 函数在输入中的工作方式 我不是在寻找复制到剪贴板的 jQuery 插件 我只想突出显示预块中的文本 以便
  • 实现悬停信息框

    我有一个日历 当用户将鼠标悬停在单元格上时 会出现一个很大的信息框 其中包含该日期的详细信息 虽然当用户离开时使信息框消失 但我遇到了一些麻烦 我基本上想要它 这样当鼠标光标移出信息框隐藏的日历单元格时 它就会消失 但我遇到了麻烦 因为mo
  • Javascript 在另一个函数中检测“Shift”键按下

    我正在从 Flash 影片 使用外部接口 调用我的 html 页面中的 Javascript 函数 并且我想知道调用该函数时用户是否按下了 Shift 键 例如 如果我通过鼠标单击调用该函数 这似乎很简单 因为我可以传递事件并检查 if e
  • Sequelize - 使用 es6 和模块运行迁移

    我不确定我是否做错了什么或者什么 我觉得我正在运行一个现代的 相当常见的堆栈 但我无法让新的 Sequelize v6 与我的设置完美配合 我在 Node v14 17 Sequelize v6 6 2 上 在我的 package json
  • 游戏手柄 JavaScript 未能按预期更新

    我正在尝试让浏览器报告我的 XBOX 控制器的状态 然而 在第一次按下按钮后 它似乎变得 卡住 我究竟做错了什么
  • JavaScript:常量属性

    在javascript中 我可以将对象的属性声明为常量吗 这是一个示例对象 var XU Cc Components classes or function aXU this Cc Components classes var XU new
  • 使用 :hover 作为元素的内联样式(使用 HTML/CSS/php)[重复]

    这个问题在这里已经有答案了 可能的重复 如何将 a hover 规则嵌入到文档中间的样式属性中 https stackoverflow com questions 131653 how do i embed an ahover rule i
  • 如何在 javascript 中基于类型字符串创建新对象?

    如何基于变量类型字符串 包含对象名称 在 javascript 中创建新对象 现在我有 随着更多工具的出现 列表会变得更长 function getTool name switch name case SelectTool return n
  • 如何知道浏览器空闲时间?

    如何跟踪浏览器空闲时间 我用的是IE8 我没有使用任何会话管理 也不想在服务器端处理它 这是纯 JavaScript 方法来跟踪空闲时间 并在达到一定限制时执行一些操作 var IDLE TIMEOUT 60 seconds var idl
  • 为什么 Array.prototype.filter() 在 Magnolia JavaScript 模型中抛出错误?

    我正在尝试过滤 FreeMarker 列表Magnolia JavaScript 模型 https documentation magnolia cms com display DOCS61 How to work with JavaScr
  • JavaScript 中的实时摩尔斯电码转换器

    在看到谷歌关于莫尔斯电码 gmail 的愚人节笑话后 我想我应该尝试用 javascript 创建一个实时莫尔斯电码转换器 我正在使用正则表达式和替换将莫尔斯电码更改为字符 例如 replace g a replace g r 我遇到的问题
  • 不使用控件时,视频元素在 Chrome 中消失

    So I think这是一个浏览器错误 它出现在一个更复杂的设计 网站中 但我已经进行了很好的尝试 简化了我的代码和设计等 并发现了以下内容 嵌入时
  • Javascript onload 不起作用[关闭]

    这个问题不太可能对任何未来的访客有帮助 它只与一个较小的地理区域 一个特定的时间点或一个非常狭窄的情况相关 通常不适用于全世界的互联网受众 为了帮助使这个问题更广泛地适用 访问帮助中心 help reopen questions 我正在使用
  • 弹出窗口的动态高度取决于内容,可能吗?

    是否有可能获得一个宽度始终为 400px 的弹出窗口 但根据弹出窗口中的内容动态高度 我已经看到了这个 但不知道如何将其应用到弹出窗口 调整 iframe 的宽度高度以适应其中的内容 https stackoverflow com ques
  • 具有固定顶部菜单的语义 UI 侧边栏

    Semantic UI 对其进行预警侧边栏页面 http semantic ui com modules sidebar html usage 当侧边栏出现时 固定位置内容可能会出现改变其位置的问题 然后它提供了该问题的两种可能的解决方案

随机推荐

  • java多线程测试性能,总线程使用总时间。主要用于返回主线程

    java多线程测试性能 总线程使用总时间 返回主线程的方法 转载 https www cnblogs com jack xsh p 8615644 html 返回主线程的方法 前段时间在做java多线程 然后涉及到了一个效率的问题 java
  • Matlab将double类型转换为正整数类型

    这个求和运算 countsum round中数据类型为double 不能直接累加 也可能是可以的 但是不知道哪个地方设置的问题 解决方法 如下
  • 几何平均详解,及其与算术平均、调和平均、均方根的关系

    2 几何平均与算术平均的转换关系 附 3 2 几何平均数适用于求连乘样本的均值 它是变化的中心 代表平均变化率 算术平均数适用于求连加样本的均值 它是数值的中心 代表平均数量 中位数适合求带有离群值样本的均值 它是位置的中心 代表平均位置
  • UE4:使用样条生成随机路径,并使物体沿着路径行走

    一 关于样条的相关知识 参考自 样条函数 馒头and花卷 博客园 三次样条 cubic spline 插值 知乎 B Spline 三 样条曲线的性质 Fun With GeometryFun With Geometry 个人理解的也不是非
  • 猪猪侠的黑客学习路线

    猪猪侠是谁 我想说 他应该是我们这一代黑客都想成为的人 在 知乎 上 如何黑掉知乎 的问题被提出后 他就跟帖贴出了密码库的连接密码和用户数据的信息结构 360公司一份内部PPT显示 2008年前 安全公司普遍净利润低 而在BAT 百度 阿里
  • Java中的List集合 ,Set集合,Map 的使用

    一 List集合 List集合是有序的 且元素可以重复 ArrayList 就是一个动态的数组 LinkedList 基于链表的存储结构 特点 ArrayList 查询快 增删慢 LinkList 查询慢 增删快 代码演示 list 有序
  • win10和win11系统,手机或者其他设备连接不上电脑热点,一直在转圈圈的解决方法

    win10 win11系统 1 点击win选择设置 一个齿轮 不好截图就不放图了 2 选择网络和internet 3 选择高级网络设置 4 选择更多网络适配选项 5 选择WLAN 右键属性 6 共享 gt 允许其他网络用户通过此计算机的 家
  • openwrt之snmpd

    OpenWRT uses UCI etc config snmpd to generate the etc snmp snmpd conf so you cannot simply edit this file and restart sn
  • 最新通信工程专业毕业设计题目选题推荐 - 100例

    文章目录 1前言 2 如何选题 3 通信工程选题方向 3 1 移动通信方向 3 2 嵌入式开发方向 3 3 人工智能方向 3 4 物联网方向 3 5 算法研究方向 3 6 移动应用开发方向 3 7 网络通信方向 3 8 学长作品展示 4 最
  • python查看变量内存地址的内置函数是_查看变量内存地址的Python内置函数是____...

    查看变量内存地址的Python内置函数是 答 id 产妇乳汁分泌主要依赖于 答 哺乳时吸吮刺激 下列选项中 属于 路径面板 中的工具按钮的是 答 用前景色填充路径 用画笔描边路径 将路径作为选区载入 从选区生成工作路径 添加图层蒙版 属于一
  • CentOS 8 Cannot prepare internal mirrorlist No URLs in mirrorlist

    CentOS 8 Cannot prepare internal mirrorlist No URLs in mirrorlist 解决方法 输入以下命令 sudo dnf install y curl policycoreutils op
  • 【Linux网络编程笔记】TCP短连接产生大量TIME_WAIT导致无法对外建立新TCP连接的原因及解决方法—基础知识篇

    最近遇到一个线上报警 服务器出现大量TIME WAIT导致其无法与下游模块建立新HTTP连接 在解决过程中 通过查阅经典教材和技术文章 加深了对TCP网络问题的理解 作为笔记 记录于此 备注 本文主要介绍TCP编程中涉及到的众多基础知识 关
  • spring源码学习:spring初始化流程

    首先借个图 说明一下spring的bean的整个生命流程 销毁什么的这个看图就知道怎么回事 使用的话一般都是纯业务 而且我们更关心spring是怎么初始化的 初始化成我们定义的那个样子 我们就是以这个出发点来看一下spring的大概流程 s
  • GIS_开源GIS

    GIS 开源GIS 图 文 QGIS QGIS是一个开放源码的地理信息系统 该项目诞生于2002年5月 并于同年6月作为SourceForge上的一个项目建立 我们一直在努力使GIS软件 传统上是昂贵的专有软件 成为任何人都可以使用个人电脑
  • python ADF检验

    前言 本文对ADF检验进行研究 python示例代码 不对概念进行分析介绍 Code import numpy as np import matplotlib pyplot as plt from statsmodels tsa statt
  • EPOLLRDHUP EPOLLHUP 事件

    EPOLLRDHUP是从Linux内核2 6 17开始由GNU引入的事件 对端正常关闭 程序里close shell下kill或ctr c 触发EPOLLIN和EPOLLRDHUP 但是不触发EPOLLERR 和EPOLLHUP 再man
  • 最新物联网毕设100例(一)

    单片机毕业设计项目分享系列 这里是DD学长 单片机毕业设计及享100例系列的第一篇 目的是分享高质量的毕设作品给大家 包含全面内容 源码 原理图 PCB 实物演示 论文 这两年开始毕业设计和毕业答辩的要求和难度不断提升 传统的单片机项目缺少
  • 图像分割套件PaddleSeg全面解析(八)预测代码解读

    训练完成模型之后 可以对图片进行预测 还可以实现模型结果可视化 查看分割效果 运行命令如下 python predict py config configs quick start bisenet optic disc 512x512 1k
  • C# ListView用法详解

    拖控件 listView 控件到新建form中 并添加相应的button lable和textbox 如下图 1 点击表格右上角的三角形 添加表头信息 2 Name 程序里调用的名称 Text 表格里显示的信息 其它可以设置大小等信息 3
  • 视频托管--七牛云

    目录 vue video player 视频托管 vue video player 安装 npm install vue video player S 在main js导入 vue video播放器 require video js dis