React中插入视频(video-react)

xiaoxiao2025-04-26  9

一. 在react中引入

1. 下载视频插件

npm install –save video-react

2. 引入

   import { Player } from 'video-react';

 import "node_modules/video-react/dist/video-react.css";

3. 调用

    <Player ref="player" videoId="video-1">

          <source src={this.state.inputVideoUrl}/>

        </Player>

二. 插件属性

网址https://video-react.js.org/components/player/

Player

Attributes

Name

Type

default

 

fluid

 

bool

true

它始终是100%宽的,通过视频的比率来计算高度。

width

number

 

视频的宽度值可以是数字或百分比,也可以是自动值。(只有将fluid设置为假),此属性才有效。

height

number

 

视频的高度值可以是数字或百分比,也可以是自动值。(只有将fluid设置为假),此属性才有效。

src

string

 

要嵌入的视频的URL。这是可选的,您可以使用播放器块中的< source>元素来指定嵌入的视频。

poster

string

 

指示海报框显示用户播放或搜索的URL。如果未指定此属性,则直到第一帧可用时才显示任何内容;然后第一帧显示为海报帧。

preload

枚举

 

none: 指示不应预装视频。

metadata:指示仅获取视频元数据(例如长度)。

auto:指示可以下载整个视频文件,即使用户不希望使用它。

muted

 

bool

false

指示视频中包含的音频的默认设置。如果设置,音频将被初步沉默。它的默认值为false,意味着音频将在播放视频时播放。

playsInline

 

bool

false

HTML5视频是否在线播放或使用本机全屏控制器。

aspectRatio

 

string

 

auto

纵横比是视频的宽度除以它的高度.

auto ,16:9,4:3

autoPlay

 

bool

 

false

如果指定视频可以自动播放,只要它可以这样做,而不停止完成加载数据。

startTime

 

number

 

 

在特定时间搜索视频

Properties

Name

 

playbackRate

 

设置或返回视频回放的速度

<Player ref="player">  

<source src="https://media.w3.org/2010/05/sintel/trailer_hd.mp4" /> </Player>

 // access the player object by ref

// set playbackRate to 2

this.refs.player.playbackRate = 2;

 

muted

 

设置或返回视频是否静音

volume

 

设置或返回视频的音量

videoWidth

 

返回视频的宽度

videoHeight

 

返回视频的高度

video

 

返回视频组件对象

Methods

Name

 

getState()

 

获取状态

const { player } = this.refs.player.getState();

console.log(player.currentTime);

// print current time

 

Play()

开始

Pause()

暂停

Load()

更改视频源并重新加载视频

addTextTrack()

向视频添加新的的文本轨迹

canPType()lay

检查浏览器是否可以播放不同类型的视频:

Seek(time)

按时间(秒)查找视频

forward(seconds)

 

向前跳多少秒

replay(seconds)

 

跳回多少秒

toggleFullscreen()

 

输入或存在全屏

subscribeToStateChange(listener)

 

Subscribe to the player state changes.

 componentDidMount() {   // subscribe state change   this.refs.player.subscribeToStateChange(this.handleStateChange.bind(this)); }  handleStateChange(state, prevState) {   // copy player state to this component's state   this.setState({     player: state,     currentTime: state.currentTime   }); }

 

player

currentSrc

 

返回当前视频的URL

duration

 

返回当前视频的长度(以秒为单位)

currentTime

 

返回视频中的当前播放位置(以秒为单位)

seekingTime

 

返回视频中的当前查找位置(以秒为单位)

buffered

 

返回表示视频缓冲区的TimeRanges对象

waiting

 

返回播放器是否需要缓冲下一帧

seeking

 

返回用户当前是否正在视频中搜索

paused

 

返回播放器是否已暂停。

autoPaused

 

返回玩家是否已被玩家自己暂停

ended

 

返回视频的播放是否结束

playbackRate

 

返回视频回放的速度

muted

 

返回视频是否静音

volume

 

返回视频的音量

readyState

 

返回视频的当前就绪状态

networkState

 

返回视频的当前网络状态

videoWidth

 

返回视频宽度

videoHeight

 

返回视频高度

hasStarted

 

返回视频是否已启动

userActivity

 

返回用户是否处于活动状态。

isActive

 

返回玩家是否处于活动状态。

isFullscreen

 

返回播放器是否处于全屏状态。

videoId

 

设置id

转载请注明原文地址: https://www.6miu.com/read-5029213.html

最新回复(0)