PearPlayer is a multi-source and multi-protocol P2P streaming player that works in the browser. It's easy to get started!
Simply include the
(pear-player.min.js
)
script on your page and use require()
:
<script src="pear-player.min.js"></script>
To install PearPlayer for use in the browser with require('PearPlayer')
, run:
npm install pearplayer --save
Then you can require PearPlayer like this:
var PearPlayer = require('PearPlayer');
var PearPlayer = require('PearPlayer');
var player = new PearPlayer('#pearvideo');
There is a complete example in examples/test.html。
var player = new PearPlayer('#pearvideo', {
//第一个参数为video标签的id或class
type: 'mp4', //播放视频的类型,目前只能是mp4
src: 'https://qq.webrtc.win/tv/pear001.mp4', //视频播放的src
useMonitor: true //是否开启monitor,会稍微影响性能,默认false
});
player.on('exception', onException);
player.on('begin', onBegin);
player.on('progress', onProgress);
player.on('buffersources', onBufferSources); //s: server n: node d: data channel b: browser
player.on('done', onDone);
function onBegin(fileLength, chunks) {
console.log('start downloading buffer by first aid, file length is:' + fileLength + ' total chunks:' + chunks);
}
function onProgress(downloaded) {
console.log('Progress: ' + (downloaded * 100).toFixed(1) + '%');
}
function onDone() {
console.log('finished downloading buffer by first aid');
}
function onException(exception) {
var errCode = exception.errCode;
switch (errCode) {
case 1:
//当前浏览器不支持WebRTC
console.log(exception.errMsg);
break;
}
}
function onBufferSources(bufferSources) {
//s: server n: node d: data channel b: browser
console.log('Current Buffer Sources:' + bufferSources);
}
PearPlayer works great with browserify, which lets
you use node.js style require()
to organize your browser
code, and load packages installed by npm.
npm install -g browserify
Install dependencies:
npm install
To get a normal size bundle,use:
npm run build
To get a compressed bundle,use:
npm run build
npm run gulp
Check out the API Documentation and FAQ for more details.