xgplayer-react

React component for xgplayer, a HTML5 video player with a parser that saves traffic

Usage no npm install needed!

<script type="module">
  import xgplayerReact from 'https://cdn.skypack.dev/xgplayer-react';
</script>

README

Introduction

xgplayer is a web video player library. It has designed a separate, detachable UI component based on the principle that everything is componentized. More importantly, it is not only flexible in the UI layer, but also bold in its functionality: it gets rid of video loading, buffering, and format support for video dependence. Especially on mp4 it can be staged loading for that does not support streaming mp4. This means seamless switching with clarity, load control, and video savings. It also integrates on-demand and live support for FLV, HLS, and dash. Document

xgplayer-react is the React component which encapsulating the xgplayer.

Start

  1. Install

    $ npm install xgplayer-react@latest
    
  2. Usage

    Step 1. Add xgplayer-react component

    import Xgplayer from 'xgplayer-react';
    

Step 2. Use in template

<Xgplayer config={config} playerInit={(player)=>{ Player = player; }} />
```

Step 3. Config for xgplayer
```js
let config = {
  id: 'mse',
  url: '/xgplayer-demo.mp4'
};
let Player = null;
```
You can use 'config' object to pre-config xgplayer, such as size, volume, autoplay and so on. [More config](http://h5player.bytedance.com/en/config/)

'mp4', 'hls', 'flv', 'dash' are supported to play and you should add the plugin you want to use. [Functional Plugins List](http://h5player.bytedance.com/en/plugins/#functional-plugins-list).

'Player' is the xgplayer instance which exposed from the component. You can use 'Player' to access the API of xgplayer as follows.


### API

#### Attributes

```js
console.log(Player.currentTime)

More attributes

Method

Player.pause();

More methods

Event

Player.on('play', ()=>{console.log('play')})

More events

Life Cycle

Player.once('ready', ()=>{console.log('ready')})

More events

Plugins

xgplayer supports your custom plugins for more content viewing plugins

import Xgplayer from 'xgplayer-react';
import 'xgplayer-custom';

Demo

$ git clone git@github.com:bytedance/xgplayer-react.git
$ cd xgplayer-react
$ npm install
$ npm start

please visit http://localhost:9090/index.html

License

MIT