Skip to content

hhy5277/flv.js

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

flv.js

HTML5 Flash Video(FLV) Player, written in pure JavaScript without Flash. LONG LIVE FLV!

This project relies on Media Source Extensions, and inspired by hls.js.

Overview

A JavaScript library which implements Flash Video(FLV) format playback in HTML5 video. It works by transmuxing FLV file stream into ISO BMFF (Fragmented MP4) segments, then feed mp4 segments into browser through Media Source Extensions API.

flv.js is written in ECMAScript 6, and transpiled into ECMAScript 5 by Babel Compiler, bundled with Browserify.

Features

  • FLV container with H.264 + AAC codec playback
  • Multipart segmented video playback
  • HTTP FLV low latency live stream playback
  • FLV over WebSocket live stream playback
  • Compatible with Chrome, FireFox, Safari 10, IE11 and Edge
  • Extermely low overhead, and hardware accelerated by your browser!

Build

npm install          # install dev-dependences
npm install -g gulp  # install build tool
gulp release         # packaged & minimized js will be emitted in dist folder

cnpm mirror is recommended if you are in Mainland China.

Getting Started

<script src="flv.min.js"></script>
<video id="videoElement"></video>
<script>
    if (flvjs.isSupported()) {
        var videoElement = document.getElementById('videoElement');
        var flvPlayer = flvjs.createPlayer({
            type: 'flv',
            url: 'http://example.com/flv/video.flv'
        });
        flvPlayer.attachMediaElement(videoElement);
        flvPlayer.load();
        flvPlayer.play();
    }
</script>

About

HTML5 FLV Player

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • JavaScript 98.5%
  • HTML 1.5%