P2p Media Loader Versions Save

An open-source engine for P2P streaming of live and on demand video directly in a web browser HTML page

0.6.2

4 years ago

New features

  • requestUrl and responseUrl properties for Segment objects
  • Plyr player demos

Improvements

  • Reduced size of the bundle by about 5%
  • The bundle is compiled to ES2017 standard (reduces bundle size)

API changes

  • Settings interfaces
  • Segment object as a POJO

0.6.1

4 years ago

New features

  • Custom segments/assets storage support - allows storing video segments for example in indexedDB to watch the video while next page visit without network requests (i.e. offline playback)
  • Configurable number of peer requests per announce (max 10)
  • DPlayer support in the demo
  • videojs-hlsjs-plugin support - allows videojs integration with quality selector

Improvements

  • Removed default public trackers that usually don't work
  • Improved interface between core and integrations (i.e. hlsjs and shaka)

Fixes

  • Fixed issues when httpDownloadInitialTimeout is set
  • Fixed version string when using JavaScript sources without bundle (i.e. via NPM)

0.5.0

5 years ago

P2P algorithm new features, fixes and improvements

  • Ability to download initial segments over P2P (useful for VOD)
  • Consume only mode (useful for mobile/cellular users)
  • Choose random peer for segment download
  • Support for multiple simultaneous HTTP downloads
  • Fixed random segments download from an HTTP source
  • Random HTTP downloads are done regularly by an interval
  • Ability to not initiate random HTTP downloads if there are no other peers in the swarm
  • Ability to specify max priority for segments downloaded over HTTP or P2P

Network usage improvements

  • Reduced size of commands sent from peer to peer
  • Reduced size of segments map sent from peer to peer
  • Reuse WebSocket connections on quality change

Other

  • Generate readable peer ID, imitate WebTorrent (some trackers allow only known BitTorrent clients to connect)
  • Default tracker from Novage
  • Callback segmentUrlBuilder allows multiple HTTP sources for HLS (useful for PeerTube)

0.4.0

5 years ago

Security improvements

  • Segment validation allows protection from malicious peers

hls.js engine improvements

  • Support for HTTP redirects
  • Support for byte ranges in manifests
  • Support for swarm ID for streams without master manifest

Algorithms improvements

  • Improved P2P and HTTP error handling
  • Tuned bandwidth approximation algorithm

New features

  • Ability to get peer ID of self
  • Ability to get related peer ID for various events
  • Support for configuration of XMLHttpRequest that allows integration of content protection

0.3.0

5 years ago

macOS Safari support fixed About 60% smaller minified library size Library compiled to ES6 target Correct URL handling

0.2.1

5 years ago

Support built into Flowplayer hlsjs-lite Fixed version export for webpack build

0.2.0

5 years ago

Support setting custom swarm ID

0.1.0

5 years ago

The project is now open-source under Apache License 2.0