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 --saveThen 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 browserifyInstall dependencies:
npm installTo get a normal size bundle,use:
npm run buildTo get a compressed bundle,use:
npm run build
npm run gulpCheck out the API Documentation and FAQ for more details.