视频播放-video-js组件

安装

  • yarn add video.js --save
  • npm install video.js --save

代码

import React, { useEffect, useRef } from 'react';
import VideoJs from 'video.js';
// import videozhCN from 'video.js/dist/lang/zh-CN.json'
import 'video.js/dist/video-js.css';
import styles from './index.less';
type VideoType = {
video: string;
photo: string;
};
const CommonVideo = props => {
const videoRef = useRef(null);
useEffect(() => {
const player = VideoJs(
videoRef.current,
{
autoplay: false, // 自动播放
muted: false, //静音
preload: 'auto', // 预加载
controls: true, // 是否显示控制条
controlBar: {
// 设置控制条组件
// /* 设置控制条里面组件的相关属性及显示与否
currentTimeDisplay: true,
timeDivider: true,
durationDisplay: true,
remainingTimeDisplay: true, // 显示倒计时时间
fluid: true,
language: 'zh-CN', // 设置语言
volumePanel: {
inline: false,
},
// */
/* 使用children的形式可以控制每一个控件的位置,以及显示与否 */
children: [
{ name: 'playToggle' }, // 播放按钮
{ name: 'currentTimeDisplay' }, // 当前已播放时间
{ name: 'progressControl' }, // 播放进度条
{ name: 'durationDisplay' }, // 总时间
{
// 倍数播放
name: 'playbackRateMenuButton',
playbackRates: [0.5, 1, 1.5, 2, 2.5],
},
{
name: 'volumePanel', // 音量控制
inline: false, // 不使用水平方式
},
{ name: 'FullscreenToggle' }, // 全屏
],
},
},
() => {
player.src(props.video);
player.poster(props.photo);
},
);
return () => {
// player.dispose();
};
}, [props]);
return (
<video
ref={videoRef}
preload="true"
// className={styles.videoContent}
className={['video-js', 'vjs-16-9', 'vjs-big-play-centered', styles.videoContent].join(' ')}
playsInline
></video>
);
};
export default CommonVideo;

视频播放-videojs的更多相关文章

  1. 一款开源免费跨浏览器的视频播放器--videojs使用介绍

    最近项目中的视频功能,需要做到浏览器全兼容,所以之前用html5实现的视频功能就需要进行改造了.在网上翻了个遍,试来试去,在所有的视频播放器中,就数它最实际了.首先我们来看看它的优点: 1.它是开源免 ...

  2. 基于Html5的兼容所有主流浏览器的在线视频播放器videoJs

    在一个新的项目上需要实现在线视频播放,原本打算借助优酷的视频存储和播放,但是发现这个需要用户注册优酷账户,严重影响用户体验,于是这个方案被毙掉了.于是开始了自己开发一个在线播放器的想法,当然尽量使用已 ...

  3. 免费视频播放器videojs中文教程

    Video.js是一款web视频播放器,支持html5和flash两种播放方式.更多关于video.js的介绍,可以访问官方网站介绍,我之前也写过一篇关于video.js的使用心得,有兴趣的可以点这里 ...

  4. 在网站中嵌入VideoJs视频播放器

    一个博客难免需要引用视频来说明内容,但想要自己来实现一个视频播放器是不是一时半会就能完成的,更重要的是这需要对视频播放技术有一定的了解.于是自然而然的有人会想到开源项目.一个不错的选择便是video. ...

  5. 【转】一款开源免费跨浏览器的视频播放器--videojs使用介绍

    特别提示:本人博客部分有参考网络其他博客,但均是本人亲手编写过并验证通过.如发现博客有错误,请及时提出以免误导其他人,谢谢!欢迎转载,但记得标明文章出处:http://www.cnblogs.com/ ...

  6. Html5视频播放器-VideoJS+Audio标签实现视频,音频及字幕同步播放

    一,VideoJS介绍 引用脚本,videojs很为你着想,直接cdn了,你都不需要下载这些代码放入自己的网站 <link href=”http://vjs.zencdn.net/c/video ...

  7. video.js--很赞的H5视频播放库

    video.js是一款很流行的html5视频播放插件.很适合在移动端播放视频(比如微信网页),功能强大,且支持降级到flash,兼容ie8.官网:http://videojs.com/    git& ...

  8. video.js-H5视频播放库

    video.js是一款很流行的html5视频播放插件.很适合在移动端播放视频(比如微信网页),功能强大,且支持降级到flash,兼容ie8.官网:http://videojs.com/    git& ...

  9. 用javascript做一个视频播放器

    以前我们在网页上播放视频,都是要麻烦flash来实现.看着那一大段的<object>真心觉得累.随着html5的不断普及,现在是时候使用html5提供的video元素来做点正经事了,但是要 ...

  10. 一款全兼容的播放器 videojs

    [官网]http://www.videojs.com/ videojs就提供了这样一套解决方案,他是一个兼容HTML5的视频播放工具,早期版本兼容所有浏览器,方法是:提供三个后缀名的视频,并在不支持h ...

随机推荐

  1. min-max 容斥简记

    min-max 容斥实际上就是这么个式子: \[\max(S_k) = \sum\limits_{T\subseteq S} (-1)^{|T|-k}\dbinom{|T|-1}{k-1}\min(T ...

  2. 使用vue的插槽理解

    使用插槽的时候其实就是引用子组件,在引用的组件中间写上你要的代码,然后在子组件的的<slot ></slot>中就包含父组件写下的代码. 父组件 import addshop ...

  3. Unity 热更新XLua

    什么是冷更新 开发者将测试好的代码,发布到应用商店的审核平台,平台方会进行稳定性及性能 测试.测试成功后,用户即可在AppStore看到应用的更新信息,用户点击应用更 新后,需要先关闭应用,再进行更新 ...

  4. jmeter中返回值提取并存储。

    jmeter中,关于对接口提取值如何存入CSV文件并且做到换列操作的处理.我这里简单介绍一下. 1.首先把接口调通(这个是必须条件),确认好需要提取存入csv的字段,这里以统计token跟userid ...

  5. 进程间通信-信号-pipe-fifo

    一.实验截图 (一)fifo (二)pipe (三)signal 二.实验代码 fifo //consumer #include <stdio.h> #include <stdlib ...

  6. python查看服务器cpu、硬盘、内存使用率,用于日常巡检

    最近由于增加了很多新的服务,服务器经常会因为oom.磁盘空间不足等原因造成各种各样的问题.所以需要写一个小工具完成对各服务器的巡检. 思路比较简单:利用paramiko这个库,在服务器上执行linux ...

  7. jquery 页面追加换行等等操作备份

    var str= "a<br/>b<br/>c<br/>"; var Newstr = str.replace("<br/> ...

  8. 实时平台-Flink篇

    Flink任务统一通过实时平台统一管理的好处不用多说,这里简单介绍下实时平台-Flink模块的功能以及实现. 主要分为两大块 一.任务管理 任务管理主要包括任务的提交.暂停.下线.重启.历史版本回滚. ...

  9. 什么是压测,为什么要进行压力测试?Jmeter工具的使用

    1.背景介绍 什么是压测? 压力测试是通过不断向被测系统施加"压力",测试系统在压力情况下的性能表现,考察当前软硬件环境下系统所能承受的最大负荷并帮助找出系统瓶颈所在,也就是我们可 ...

  10. 由浇花工具开始IOT物联网平台之开始前言篇【1】

    在2020年时,突然有个想法,就是做个浇花工具,因为平时喜欢养花,有时忘记浇花,有时感觉手动浇花太麻烦,所以做个这个小玩意,是用.NET 开发的WinForm小程序,来控制单片机,带动水泵浇花,还可以 ...