Skip to content
JS
Package category

Video and audio

Media players, streaming, audio processing and codecs.

776 packages2 comparisons

Packages compared

776 packages
PackageWeekly downloads12-month change52 weeksGzipLast releaseModuleTypesCategories
hls-video-element
Custom element (web component) for playing video using the HTTP Live Streaming (HLS) format. Uses HLS.js.
591.6k+284%-6 months ago
1.5.11
ESM + CommonJSBundledVideo and audio
@ffmpeg/ffmpeg
FFmpeg WebAssembly version for browser
555.5k---1 year ago
0.12.15
ESM + CommonJSBundledVideo and audio
dash-video-element
Custom element for playing video using the DASH format. Uses dash.js.
549.2k+270%-6 months ago
0.3.2
ESM + CommonJSBundledVideo and audio
youtube-video-element
Custom element (web component) for the YouTube player.
525.6k+277%-7 months ago
1.9.0
ESM + CommonJSBundledVideo and audio
automation-events
A module which provides an implementation of an automation event list.
517.7k+192%-3 months ago
8.0.1
ESM + CommonJSBundledVideo and audio
standardized-audio-context
A cross-browser wrapper for the Web Audio API which aims to closely follow the standard.
505.4k+166%-2 years ago
25.3.77
ESM + CommonJSBundledVideo and audio, Polyfills and shims
vimeo-video-element
A custom element for the Vimeo player with an API that matches the `<video>` API
503.1k+261%-1 month ago
1.7.3
ESM + CommonJSBundledVideo and audio
wistia-video-element
A custom element for the Wistia player with an API that matches the `<video>` API
500k+264%-4 months ago
1.4.0
ESM + CommonJSBundledVideo and audio
cloudflare-video-element
A custom element for the Cloudflare player with an API that matches the `<video>` API
499.5k+263%-9 months ago
1.3.5
ESM + CommonJSBundledCloud SDKs, Video and audio
super-media-element
Helps you create a custom element w/ a HTMLMediaElement API.
498.1k+265%-2 years ago
1.4.2
ESM onlyBundledVideo and audio
spotify-audio-element
A custom element for the Spotify player with an API that aims to match the `<audio>` API
497.2k+254%-9 months ago
1.0.4
ESM + CommonJSBundledVideo and audio
twitch-video-element
A custom element for the Twitch player with an API that matches the `<video>` API
497.2k+277%-5 months ago
0.2.0
ESM + CommonJSBundledVideo and audio
tiktok-video-element
Custom element (web component) for the TikTok player.
496.5k+282%-9 months ago
0.1.2
ESM + CommonJSBundledVideo and audio
react-native-vision-camera
VisionCamera is the fastest and most powerful Camera for react-native.
425.3k+76%-1 month ago
5.2.3
ESM + CommonJSBundledReact, Video and audio
@deepgram/captions
Node implementation of Deepgram's WebVTT and SRT formatting. Given a transcription, this package can return a valid string to store as WebVTT or SRT caption files.
424.5k---2 years ago
1.2.0
ESM + CommonJSBundledVideo and audio
assemblyai
The AssemblyAI JavaScript SDK provides an easy-to-use interface for interacting with the AssemblyAI API, which supports async and real-time transcription.
404.1k+329%-today
4.41.5
ESM + CommonJSBundledVideo and audio
@ffmpeg/util
browser utils for @ffmpeg/*
399.7k---1 year ago
0.12.2
ESM + CommonJSBundledVideo and audio
mp4box
JavaScript version of GPAC's MP4Box tool
336k+351%-3 months ago
2.4.1
ESM + CommonJSBundledVideo and audio
expo-av
Expo universal module for Audio and Video playback
330.6k+31%-9 months ago
16.0.8
CommonJSBundledReact, Video and audio
bytebuffer
The swiss army knife for binary data in JavaScript.
305.6k+14%-10 years ago
5.0.1
CommonJSNoneWebSockets and realtime, Video and audio
@remotion/paths
Utilities for working with SVG paths
288.4k---1 day ago
4.0.528
ESM + CommonJSBundledVideo and audio, React
media-captions
Media captions parser and renderer.
283.3k+246%-3 years ago
0.0.18
ESM onlyBundledParsers and serialisers, TypeScript tooling
plyr
A simple, accessible and customizable HTML5, YouTube and Vimeo media player
277.6k+96%-8 months ago
3.8.4
ESM + CommonJSBundledVideo and audio
shaka-player
DASH/EME video player library
276.1k+105%--
5.2.11
CommonJSBundledVideo and audio
extendable-media-recorder
An extendable drop-in replacement for the native MediaRecorder.
254.1k+154%-1 month ago
9.2.40
ESM + CommonJSBundledVideo and audio, DOM and browser utilities
@livekit/react-native-webrtc
WebRTC for React Native
233.7k---13 days ago
144.2.0
ESM + CommonJSBundledReact, WebSockets and realtime
get-browser-rtc
get webrtc browser methods unprefixed
228.5k+42%-5 years ago
1.1.0
CommonJSNoneVideo and audio, WebSockets and realtime
recordrtc
RecordRTC is a server-less (entire client-side) JavaScript library that can be used to record WebRTC audio/video media streams. It supports cross-browser audio/video recording.
225.7k+63%--
5.6.2
CommonJSNoneVideo and audio
@breezystack/lamejs
Pure JavaScript MP3 Encoder
224.7k---2 years ago
1.2.7
ESM + CommonJSBundledVideo and audio
tone
A Web Audio framework for making interactive music in the browser.
223.5k+154%--
15.1.22
ESM onlyBundledVideo and audio
simple-peer
Simple one-to-one WebRTC video/voice and data channels
221.5k+50%-4 years ago
9.11.1
CommonJSNoneVideo and audio
@audiowave/react
React audio visualization component
219.9k---10 months ago
0.6.2
ESM + CommonJSBundledReact, Video and audio
@audiowave/core
Core audio processing utilities and interfaces for AudioWave
215.9k---10 months ago
0.3.1
ESM + CommonJSBundledVideo and audio
@vidstack/react
Build awesome media experiences on the web.
214k---2 years ago
0.6.15
ESM onlyBundledVideo and audio, React
@wavesurfer/react
React component and hook for wavesurfer.js
211.6k---9 months ago
1.0.12
ESM onlyBundledVideo and audio, React
twilio-video
Twilio Video JavaScript Library
199.2k+38%-13 days ago
2.36.0
CommonJSBundledVideo and audio
mp4-muxer
MP4 multiplexer in pure TypeScript with support for WebCodecs API, video & audio.
196.1k+5%--
5.2.2
ESM + CommonJSBundledVideo and audio, TypeScript tooling
@ffmpeg/core
FFmpeg WebAssembly version (single thread)
191.3k---1 year ago
0.12.10
ESM + CommonJSNoneVideo and audio
react-native-webrtc
WebRTC for React Native
175.5k+432%-2 months ago
124.0.8
ESM + CommonJSBundledReact, WebSockets and realtime
@solid-primitives/audio
Primitives to manage audio and single sounds.
172.5k---2 months ago
1.4.5
ESM onlyBundledVideo and audio, TypeScript tooling
@telnyx/webrtc
Telnyx WebRTC Client
169.5k---1 month ago
2.27.10
ESM + CommonJSBundledVideo and audio, WebSockets and realtime
react-native-image-crop-picker
Select single or multiple images, with cropping option
157.3k+34%-11 months ago
0.51.1
CommonJSBundledReact, Image processing
react-native-compressor
Compress Image, Video, and Audio same like Whatsapp & Auto/Manual Compression | Background Upload | Download File | Create Video Thumbnail
146.2k+178%-2 months ago
2.0.3
ESM + CommonJSBundledVideo and audio, Image processing
fast-average-color
A simple library that calculates the average color of images, videos and canvas in browser environment.
144.2k+95%--
9.6.0
ESM + CommonJSBundled3D, WebGL and game engines, Video and audio
@uppy/webcam
Uppy plugin that takes photos or records videos using the device's camera.
144k---30 days ago
6.0.0
ESM onlyNoneVideo and audio
@daily-co/daily-react
Daily React makes it easier to integrate [@daily-co/daily-js](https://www.npmjs.com/package/@daily-co/daily-js) in React applications.
133.5k---2 months ago
0.26.0
ESM + CommonJSBundledReact, Video and audio
video-extensions
List of video file extensions
129.6k+129%-2 years ago
2.0.0
ESM onlyBundledVideo and audio
wavefile
Create, read and write wav files according to the specs.
128.3k+92%-6 years ago
11.0.0
ESM + CommonJSBundledVideo and audio
bpm-detective
Detects the BPM of a song or audio sample
122.7k+39687%-5 years ago
2.0.5
CommonJSNoneVideo and audio
get-video-id
Get the YouTube, Vimeo, Vine, VideoPress, TikTok, Microsoft Stream, Loom or Dailymotion video id from a url or embed string.
121k+57%-5 months ago
4.2.0
ESM + CommonJSBundledVideo and audio

12-month change compares the average of the last 4 weeks of downloads with the first 4 weeks of the 52-week series. Gzip size is for the whole package, as measured by Bundlephobia. "-" means the value has not been fetched.

  • hls-video-elementCustom element (web component) for playing video using the HTTP Live Streaming (HLS) format. Uses HLS.js.
  • @ffmpeg/ffmpegFFmpeg WebAssembly version for browser
  • dash-video-elementCustom element for playing video using the DASH format. Uses dash.js.
  • youtube-video-elementCustom element (web component) for the YouTube player.
  • automation-eventsA module which provides an implementation of an automation event list.
  • standardized-audio-contextA cross-browser wrapper for the Web Audio API which aims to closely follow the standard.
  • vimeo-video-elementA custom element for the Vimeo player with an API that matches the `<video>` API
  • wistia-video-elementA custom element for the Wistia player with an API that matches the `<video>` API
  • cloudflare-video-elementA custom element for the Cloudflare player with an API that matches the `<video>` API
  • super-media-elementHelps you create a custom element w/ a HTMLMediaElement API.
  • spotify-audio-elementA custom element for the Spotify player with an API that aims to match the `<audio>` API
  • twitch-video-elementA custom element for the Twitch player with an API that matches the `<video>` API
  • tiktok-video-elementCustom element (web component) for the TikTok player.
  • react-native-vision-cameraVisionCamera is the fastest and most powerful Camera for react-native.
  • @deepgram/captionsNode implementation of Deepgram's WebVTT and SRT formatting. Given a transcription, this package can return a valid string to store as WebVTT or SRT caption files.
  • assemblyaiThe AssemblyAI JavaScript SDK provides an easy-to-use interface for interacting with the AssemblyAI API, which supports async and real-time transcription.
  • @ffmpeg/utilbrowser utils for @ffmpeg/*
  • mp4boxJavaScript version of GPAC's MP4Box tool
  • expo-avExpo universal module for Audio and Video playback
  • bytebufferThe swiss army knife for binary data in JavaScript.
  • @remotion/pathsUtilities for working with SVG paths
  • media-captionsMedia captions parser and renderer.
  • plyrA simple, accessible and customizable HTML5, YouTube and Vimeo media player
  • shaka-playerDASH/EME video player library
  • extendable-media-recorderAn extendable drop-in replacement for the native MediaRecorder.
  • @livekit/react-native-webrtcWebRTC for React Native
  • get-browser-rtcget webrtc browser methods unprefixed
  • recordrtcRecordRTC is a server-less (entire client-side) JavaScript library that can be used to record WebRTC audio/video media streams. It supports cross-browser audio/video recording.
  • @breezystack/lamejsPure JavaScript MP3 Encoder
  • toneA Web Audio framework for making interactive music in the browser.
  • simple-peerSimple one-to-one WebRTC video/voice and data channels
  • @audiowave/reactReact audio visualization component
  • @audiowave/coreCore audio processing utilities and interfaces for AudioWave
  • @vidstack/reactBuild awesome media experiences on the web.
  • @wavesurfer/reactReact component and hook for wavesurfer.js
  • twilio-videoTwilio Video JavaScript Library
  • mp4-muxerMP4 multiplexer in pure TypeScript with support for WebCodecs API, video & audio.
  • @ffmpeg/coreFFmpeg WebAssembly version (single thread)
  • react-native-webrtcWebRTC for React Native
  • @solid-primitives/audioPrimitives to manage audio and single sounds.
  • @telnyx/webrtcTelnyx WebRTC Client
  • react-native-image-crop-pickerSelect single or multiple images, with cropping option
  • react-native-compressorCompress Image, Video, and Audio same like Whatsapp & Auto/Manual Compression | Background Upload | Download File | Create Video Thumbnail
  • fast-average-colorA simple library that calculates the average color of images, videos and canvas in browser environment.
  • @uppy/webcamUppy plugin that takes photos or records videos using the device's camera.
  • @daily-co/daily-reactDaily React makes it easier to integrate [@daily-co/daily-js](https://www.npmjs.com/package/@daily-co/daily-js) in React applications.
  • video-extensionsList of video file extensions
  • wavefileCreate, read and write wav files according to the specs.
  • bpm-detectiveDetects the BPM of a song or audio sample
  • get-video-idGet the YouTube, Vimeo, Vine, VideoPress, TikTok, Microsoft Stream, Loom or Dailymotion video id from a url or embed string.