All Projects → 131 → H264 Live Player

131 / H264 Live Player

Licence: mit
A live h264 player for the browser (ideal for raspberrypi / raspicam )

Programming Languages

javascript
184084 projects - #8 most used programming language

Projects that are alternatives of or similar to H264 Live Player

Hstardoc
My blogs write with markdown.
Stars: ✭ 297 (-66.48%)
Mutual labels:  html5, canvas
Canvas Nest.js
♋ Interactive Particle / Nest System With JavaScript and Canvas, no jQuery.
Stars: ✭ 3,966 (+347.63%)
Mutual labels:  html5, canvas
Melonjs
a fresh & lightweight javascript game engine
Stars: ✭ 3,721 (+319.98%)
Mutual labels:  html5, canvas
Pi Temp
Web server using a Raspberry Pi and DHT22 sensor to graph the humidity and temperature in my apartment over time.
Stars: ✭ 114 (-87.13%)
Mutual labels:  raspberry-pi, html5
Zrender
A lightweight graphic library providing 2d draw for Apache ECharts
Stars: ✭ 5,122 (+478.1%)
Mutual labels:  html5, canvas
Front Ui
😄 🎨 Collect some front-end special effects (收集一些前端特效)
Stars: ✭ 259 (-70.77%)
Mutual labels:  html5, canvas
Taro
A lightweight 3D game engine for the web.
Stars: ✭ 345 (-61.06%)
Mutual labels:  html5, canvas
Three.js
JavaScript 3D Library.
Stars: ✭ 78,237 (+8730.36%)
Mutual labels:  html5, canvas
Html5
HTML5学习、总结、实践
Stars: ✭ 493 (-44.36%)
Mutual labels:  html5, canvas
Rpi Webrtc Streamer
This repo's objective is providing something like Web Cam server on the most popular Raspberry PI hardware. By integrating [WebRTC](https://webrtc.org/native-code/) and Raspberry PI, we can stream the Raspberry camera feed to browser or native client which talks WebRTC.
Stars: ✭ 428 (-51.69%)
Mutual labels:  raspberry-pi, h264
Ip Kvm Interface
DIY IP-KVM for Remote Desktop Access
Stars: ✭ 62 (-93%)
Mutual labels:  raspberry-pi, html5
Html5 Animation
Foundation HTML5 Animation with JavaScript example code and book exercises.
Stars: ✭ 667 (-24.72%)
Mutual labels:  html5, canvas
Flvplayer
🍭 FlvPlayer.js is a JavaScript player for decode flv to the canvas
Stars: ✭ 210 (-76.3%)
Mutual labels:  h264, canvas
Dynamic effect
平时练习的一些前端动效,基于HTML5,CSS3,Canvas,Svg
Stars: ✭ 264 (-70.2%)
Mutual labels:  html5, canvas
Wxinlineplayer
🤟Super fast H.264/H.265 FLV player
Stars: ✭ 873 (-1.47%)
Mutual labels:  h264, canvas
Phaser3 Docs
Phaser 3 Documentation and TypeScript Defs
Stars: ✭ 339 (-61.74%)
Mutual labels:  html5, canvas
One Html Page Challenge
Can you create something cool without modern tools?
Stars: ✭ 205 (-76.86%)
Mutual labels:  html5, canvas
Chart.js
Simple HTML5 Charts using the <canvas> tag
Stars: ✭ 55,646 (+6180.59%)
Mutual labels:  html5, canvas
Planck.js
2D JavaScript Physics Engine
Stars: ✭ 4,149 (+368.28%)
Mutual labels:  html5, canvas
Jspaint
🎨 Classic MS Paint, REVIVED + ✨Extras
Stars: ✭ 5,972 (+574.04%)
Mutual labels:  html5, canvas

Motivation

This is a very simple h264 video player (that can run on live stream) for your browser. You might use this with raspicam raw h264 stream. This is a player around Broadway Decoder, with very simple API. NAL unit (h264 frames) are split on the server side, transported using websocket, and sent to the decoded (with frame dropping, if necessary)

Version License

History

  • I was targetting a real-time camera video feedback (no audio/surveillance cam) in the browser
  • There is no solution for "real time" mp4 video creation / playback (ffmpeg, mp4box.js, mp4parser - boxing takes time)
  • Media Source Extension is a dead end (mp4 boxing is far too hard to re-create on the client side)
  • Broadway provide the crazy emscripten/asm build of a h264 decoder accelerated by webGL canvas
  • Here is all the glue we need, enjoy ;-)

Installation/demo

git clone [email protected]:131/h264-live-player.git player
cd player
npm install

node server-rpi.js    # run on a rpi for a webcam demo
node server-static.js # for sample video (static) file delivery
node server-tcp.js    # for a remote tcp (rpi video feed) sample
node server-ffmpeg    # usefull on win32 to debug the live feed (use ffmpeg & your directshow device / webcam) 

# browse to http://127.0.0.1:8080/ for a demo player

Recommendations

  • Broadway h264 Decoder can only work with h264 baseline profile
  • Use a SANE birate
  • Browserify FTW
  • Once you understand how to integrate the server-side, feel free to use h264-live-player npm package in your client side app (see vendor/)
  • Use uws (instead of ws) as websocket server

Credits

Keywords / shout box

raspberry, mp4box, h264, nal, raspivid, mse, media source extension, iso, raspicam, bitrate, realtime, video, mp4, ffmpeg, websocket, ws, socket.io "Let's have a beer and talk in Paris"

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].