Skip to content

A JavaScript, browser-oriented, MPEG-DASH player, but more specialer.

Notifications You must be signed in to change notification settings

vulcancreative/pepper-player

Repository files navigation

pepper

CircleCI Coverage Status Github file size

A JavaScript-based MPEG-DASH player, for use in modern desktop and mobile browsers.

Features include:

  • Less than 10 KB in size
  • No runtime dependencies
  • Ultra low-latency start times (even up to 4K)
  • Automatic or manual adaptive quality
  • Lazy loading of media segments (reduces serving bandwidth)
  • Client-side, on-the-fly HLS conversion (currently static only)
  • Hooks for custom user-interface
  • Developer-friendly hooks for analysis, inline ads, et cetera
  • Cross-browser compatible (<= ES8)
  • Fully tested, ~100% coverage
  • Mobile compatible

Being incorporated from working prototype now:

  • Embedding (for use in animation)
  • DRM and CENC compliance
  • Usage documentation

Up next:

  • Contribution info

dev installation

λ git clone https://github.com/chris-calo/pepper-player.git
λ cd pepper-player
λ npm i
λ npm run build && cd lib && npx http-server --port 8000

versioning

pepper is our interpretation of a newish, living standard. But, we frequently liken its lifespan to that of a "perpetually-awkward teenager – complete with headgear, a speech-impediment, and uncomfortably-pointy classroom boners."

We first made the player to help ease the development of a client app, starting in November of 2016. Due to timeline restrictions, we hastily built pepper twice that winter – resulting in v1.0. First written in nasty ol' CoffeeScript, pepper has since adopted the ECMAScript standard. Our goal is to build a compact, yet quick and maintainable, library. This round-about journey has lead our little player to be re-written ~5 times in 2.5 years… YIKES!

v2.X – the current stable, production version – was scratch-made, using modern practices. It remains the de-facto player for many, large clients. Daily, it serves terabytes of on-demand and live data, on behalf of clients, to the unaware masses. If asked, most have no idea what pepper is or where it came from. Who knew something so discreet could have such an impact?!

And in case anyone asks… shh… don't tell! It'll spoil the surprise!