Skip to content

Latest commit

 

History

History
executable file
·
92 lines (73 loc) · 2.44 KB

get-started.md

File metadata and controls

executable file
·
92 lines (73 loc) · 2.44 KB

Get Started with PearDownloader

PearDownloader is a multi-source and multi-protocol P2P streaming downloader that works in the browser. It's easy to get started!

Import

Script

Simply include the (pear-downloader.min.js) script on your page:

<script src="pear-downloader.min.js"></script>

Browserify

To install PearPlayer for use in the browser with require('PearDownloader'), run:

npm install peardownloader --save

Then you can require PearDownloader like this:

var PearDownloader = require('PearDownloader');

Quick Examples

input url and download

var PearDownloader = require('PearDownloader');
var downloader = new PearDownloader(url);

There is a complete example in examples/downloader-test.html

Listen to PearDownloader events

/**
 * @param {string} url 第一个参数为url
 * @param {boolean} object.useMonitor 是否开启monitor,会稍微影响性能,默认false
 */
var downloader = new PearDownloader(url, { useMonitor: true });

downloader.on('begin', onBegin);
downloader.on('progress', onProgress);
downloader.on('sourcemap', onSourceMap);
downloader.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 onSourceMap(sourceType, index) {
  console.log('Received source type:' + sourceType + ' index:' + index);
}

Build

PearDownloader 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-downloader

To get a compressed bundle,use:

npm run uglify-downloader

More Documentation

Check out the API Documentation and FAQ for more details.