Skip to content

Simple, lightweight, and powerful web video player built on Video.js — with support for HLS, DASH, and progressive playback.

Notifications You must be signed in to change notification settings

codescoop/video-streamer-js

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

14 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

🎬 Video Streamer

npm version

A simple, lightweight, yet powerful web-based video player built using Video.js. Designed to support modern streaming protocols and playback requirements including HLS, DASH, DRM, and Ad Monetization.


🚀 Features

  • HLS (.m3u8) streaming support
  • MPEG-DASH (.mpd) streaming support
  • DRM (Widevine, FairPlay, PlayReady)
  • Ads (Google IMA, VAST, VPAID)
  • ✅ Responsive and mobile-friendly UI
  • ✅ Customizable & extensible via plugins

🧪 Supported Stream Types

Type Extension Description
MPEG-DASH .mpd Adaptive bitrate streaming (MPEG-DASH)
HLS .m3u8 Apple's HTTP Live Streaming
Progressive .mp4 Standard MP4 file streaming
Encrypted DRM-protected streams (Widevine, FairPlay)
Ad Tags .xml VAST / VPAID ad tags

🧑‍💻 How to Use

In Vanilla HTML

<!DOCTYPE html>
<html lang="en">
  <head>
    <title>Video Streamer</title>
  </head>
  <body>
    <video
      id="my-video"
      class="video-js"
      controls
      width="640"
      height="360"
    ></video>

    <script src="./dist/video-streamer-sdk.js"></script>
    <script>
      VideoStreamer.initializePlayer({
        videoId: 'my-video',
        videoSrc: 'https://www.w3schools.com/html/mov_bbb.mp4',
      });
    </script>
  </body>
</html>

In React

import React, { useEffect } from 'react';
import 'video.js/dist/video-js.css'; 
import { initializePlayer } from 'video-streamer-js'; 

export default function App() {
 useEffect(() => {
   const player = initializePlayer({
     videoId: 'my-video',
     videoSrc: 'https://www.w3schools.com/html/mov_bbb.mp4',
   });

   return () => {
     player?.dispose();
   };
 }, []);

 return (
   <video
     id="my-video"
     className="video-js"
     controls
     width="640"
     height="360"
   ></video>
 );
}

📦 Tech Stack


🛠️ Installation

git clone https://github.com/your-username/online-video-player.git
cd online-video-player
npm install
npm start

📸 Preview

Video Player Screenshot


About

Simple, lightweight, and powerful web video player built on Video.js — with support for HLS, DASH, and progressive playback.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published