131 / H264 Live Player
Licence: mit
A live h264 player for the browser (ideal for raspberrypi / raspicam )
Stars: ✭ 886
Programming Languages
javascript
184084 projects - #8 most used programming language
Projects that are alternatives of or similar to H264 Live Player
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
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
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
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)
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].