![require(esm) Backported to Node.js 20, Paving the Way for ESM-Only Packages](https://cdn.sanity.io/images/cgdhsj6q/production/be8ab80c8efa5907bc341c6fefe9aa20d239d890-1600x1097.png?w=400&fit=max&auto=format)
Security News
require(esm) Backported to Node.js 20, Paving the Way for ESM-Only Packages
require(esm) backported to Node.js 20, easing the transition to ESM-only packages and reducing complexity for developers as Node 18 nears end-of-life.
@100mslive/hls-stats
Advanced tools
A simple library for HLS stats for Hls.js.
yarn add @100mslive/hls-stats
or
npm install --save @100mslive/hls-stats
import Hls from "hls.js";
/**
* Initialize Hls.js and attach the video element.
*/
const hlsInstance = new Hls();
hlsInstance.loadSource(hlsUrl);
hlsInstance.attachMedia(videoEl);
/**
* initialize HlsStats
*/
const hlsStats = new HlsStats(hlsController.getHlsJsInstance(), videoEl);
hlsStats
have a subscribe
function which takes two parameter. a callbackFn
and an interval
in ms.
The interval
tells how frequent you want hls-stats to report back to you. Default is 2000ms
const unsubscribe = hlsStats.subscribe(state => {
// ...
});
the subscribe()
also returns a reference to unsubscribe()
function which could later be used to unsubscribe
from your subscription
hls-stats currently exposes the following stats
Name | Description | Unit | Usage |
---|---|---|---|
bandwidthEstimate | The current bandwidth, as seen by the player | bits per second | Use this to show the current network speed of the user |
bitrate | server indicated bitrate of current layer of hls stream | bits per second | Use to know the bitrate required for current layer |
bufferedDuration | buffered duration from the current position | ms | This can be used to show how much data is buffered from the current location (forward buffer) |
distanceFromLiveEdge | The distance from the live edge | ms | Used to know currently buffered duration ahead |
droppedFrames | The number of dropped frames till now | Used to calculate the total num of dropped frames | |
videoSize.width videoSize.height | The width and height of the video | px | Used to know the resolution being played |
watchDuration | Total duration watched | ms | used to know the overall watch duration (not the stream length) |
FAQs
A simple library that provides stats for your hls stream
We found that @100mslive/hls-stats demonstrated a healthy version release cadence and project activity because the last version was released less than a year ago. It has 17 open source maintainers collaborating on the project.
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Security News
require(esm) backported to Node.js 20, easing the transition to ESM-only packages and reducing complexity for developers as Node 18 nears end-of-life.
Security News
PyPI now supports iOS and Android wheels, making it easier for Python developers to distribute mobile packages.
Security News
Create React App is officially deprecated due to React 19 issues and lack of maintenance—developers should switch to Vite or other modern alternatives.