Go to file
2016-07-15 16:07:38 +08:00
demo i18n; improve UI 2016-07-14 15:26:15 +08:00
dist Fix crossOrigin for screenshot 2016-07-15 16:07:38 +08:00
nodejs deal danmaku maximum in back-end 2016-06-08 23:33:33 +08:00
src Fix crossOrigin for screenshot 2016-07-15 16:07:38 +08:00
.gitignore
.travis.yml
LICENSE change License 2016-07-08 12:23:23 +08:00
package.json New API: play(time) 2016-07-15 10:33:20 +08:00
README.md New API: play(time) 2016-07-15 10:33:20 +08:00
webpack.config.js Stop supporting HLS 2016-07-14 18:01:23 +08:00

DPlayer

npm npm devDependency Status npm Travis %e2%9d%a4

Wow, such a lovely HTML5 danmaku video player

Introduction

Demo

Screenshot image

Install

$ npm install dplayer --save

Usage

HTML

<link rel="stylesheet" href="DPlayer.min.css">
<!-- ... -->
<div id="player1" class="dplayer"></div>
<!-- ... -->
<script src="DPlayer.min.js"></script>

JS

var dp = new DPlayer(option);
dp.init();

Options

var option = {
    element: document.getElementById('player1'),                       // Optional, player element
    autoplay: false,                                                   // Optional, autoplay video, not supported by mobile browsers
    theme: '#FADFA3',                                                  // Optional, theme color, default: #b7daff
    loop: true,                                                        // Optional, loop play music, default: true
    lang: 'zh',                                                        // Optional, language, `zh` for Chinese, `en` for English, default: en
    video: {                                                           // Required, video info
        url: '若能绽放光芒.mp4',                                         // Required, video url
        pic: '若能绽放光芒.png'                                          // Optional, music picture
    },
    danmaku: {                                                         // Optional, showing danmaku
        id: '9E2E3368B56CDBB4',                                        // Required, danmaku id, MUST BE UNIQUE, CAN NOT USE THESE IN YOUR NEW PLAYER: `https://dplayer.daoapp.io/list`
        api: 'https://dplayer.daoapp.io/',                             // Required, danmaku api
        token: 'tokendemo',                                            // Optional, danmaku token for api
        maximum: 1000                                                  // Optional, maximum quantity of danmaku
    }
}

API

  • dp.init() // Load player
  • dp.play() // Resume play
  • dp.play(time) // Set currentTime
  • dp.pause() // Pause
  • ap.on(event, handler) // Event binding

Event binding

dp.on(event, handler)

event:

  • play: Triggered when DPlayer start play
  • pause: Triggered when DPlayer paused
  • canplay: Triggered when enough data is available that DPlayer can be played
  • playing: Triggered periodically when DPlayer is playing
  • ended: Triggered when DPlayer ended
  • error: Triggered when an error occurs

Work with module bundler

var DPlayer = require('DPlayer');
var dp = new DPlayer(option);
dp.init();

Danmaku back-end

Ready-made API:

https://dplayer.daoapp.io/

Build yourself:

Required environment

  • Node.js
  • Mongodb

Run in development

$ npm install
$ npm run dev

Make a release

$ npm install
$ npm run build

LICENSE

The Star And Thank Author License (SATA)