All Projects → illuspas → Nodeplayer.js

illuspas / Nodeplayer.js

Pure JavaScrip HTML5 live stream player

Programming Languages

javascript
184084 projects - #8 most used programming language

Projects that are alternatives of or similar to Nodeplayer.js

Ksylive ios
金山云直播SDK [ iOS推流+播放 ]融合版 支持美颜滤镜(Beauty Filter)、美声(Beauty Voice)、软硬编(Software/Hardware Encoder) 、网络自适应(Network Auto Adapt)、混音(Audio Mixer)、混响(Reverb)、画中画(PIP)
Stars: ✭ 861 (+448.41%)
Mutual labels:  aac, livestream, h264, h265
Wxinlineplayer
🤟Super fast H.264/H.265 FLV player
Stars: ✭ 873 (+456.05%)
Mutual labels:  player, h264, flv, h265
Flvplayer
🍭 FlvPlayer.js is a JavaScript player for decode flv to the canvas
Stars: ✭ 210 (+33.76%)
Mutual labels:  player, aac, h264, flv
Analysisavp
音视频学习,相关文件格式/协议分析。h264 nalu aac adts flv
Stars: ✭ 38 (-75.8%)
Mutual labels:  aac, h264, flv
Node Video Lib
Node.js Video Library / MP4 & FLV parser / MP4 builder / HLS muxer
Stars: ✭ 264 (+68.15%)
Mutual labels:  h264, flv, h265
VideoCodecKit
iOS macOS 编解码库 脱离ffmpeg等外部依赖 支持H.264 H.265裸流播放 硬件编解码 rtmp推流等
Stars: ✭ 78 (-50.32%)
Mutual labels:  h264, flv, h265
demuxer
A tool for demux ts/mp4/flv by typescript. Support HEVC/AVC/AAC codec
Stars: ✭ 108 (-31.21%)
Mutual labels:  h264, aac, h265
Livego
live video streaming server in golang
Stars: ✭ 7,312 (+4557.32%)
Mutual labels:  livestream, h264, flv
Yuview
The Free and Open Source Cross Platform YUV Viewer with an advanced analytics toolset
Stars: ✭ 665 (+323.57%)
Mutual labels:  player, h265
Rtsp Simple Server
ready-to-use RTSP / RTMP server and proxy that allows to read, publish and proxy video and audio streams
Stars: ✭ 882 (+461.78%)
Mutual labels:  aac, h264
Conv2mp4 Ps
This Powershell script will recursively search through a user-defined file path and convert all videos of user-specified file types to MP4 with H264 video and AAC audio using ffmpeg. The purpose of this script is to reduce transcoding CPU load on a media server like Plex or Emby and increase video compatibility across platforms.
Stars: ✭ 97 (-38.22%)
Mutual labels:  aac, h264
Mp4composer Android
This library generate an Mp4 movie using Android MediaCodec API and apply filter, scale, trim, transcode, crop, timeScale, mute and rotate Mp4.
Stars: ✭ 674 (+329.3%)
Mutual labels:  h264, h265
Trinity
android video record editor muxer sdk
Stars: ✭ 609 (+287.9%)
Mutual labels:  aac, h264
Yt Player
Simple, robust, blazing-fast YouTube Player API
Stars: ✭ 576 (+266.88%)
Mutual labels:  player, browser
Testing Video
Generator of test video files for testing your media playback devices and calibrate TV sets
Stars: ✭ 70 (-55.41%)
Mutual labels:  h264, h265
P2p Cdn Sdk Javascript
Free p2p cdn github javascript sdk to reduce video streaming costs of live and on demand video using webrtc by upto 90% and improve scalability by 6x - 🚀 Vadootv 🚀
Stars: ✭ 158 (+0.64%)
Mutual labels:  player, livestream
Camerartmpsdk
CameraRtmpSDK is an audio and video based on ffmpeg SDK, is committed to creating a cross-platform audio and video sampling, encoding, mixing, protocol upload program.
Stars: ✭ 95 (-39.49%)
Mutual labels:  aac, h264
Oarplayer
Android Rtmp播放器,基于MediaCodec与srs-librtmp,不依赖ffmpeg
Stars: ✭ 124 (-21.02%)
Mutual labels:  player, livestream
Reflv
react component wrap flv.js
Stars: ✭ 122 (-22.29%)
Mutual labels:  livestream, flv
Dplayer
🍭 Wow, such a lovely HTML5 danmaku video player
Stars: ✭ 12,101 (+7607.64%)
Mutual labels:  player, flv

NodePlayer.js

Pure JavaScrip live stream player, 100% written in c/c++. 😂

商用优化版

http://www.nodemedia.cn/products/node-media-player/

  • 商用版现已支持http-flv
  • 商用版现已支持wasm版本,性能提升一倍
  • 商用版现已支持播放RTMP

特性

  • 仅支持WebSocket的传输协议
  • 仅支持Flv封装
  • 首屏启动低于500毫秒,延迟低于2秒
  • 支持H.264/H.265 视频软解码
  • 支持AAC/MP3/NellyMoser 音频软解码
  • 支持iOS/Android原生浏览器或WebView控件
  • 支持微信、QQ内部打开
  • 视频渲染 WebGL
  • 音频播放 WebAudio
  • 全解码版js小于3M
  • 支持平铺,等比缩放,拉伸填充的视频缩放模式

问题

解码性能低下,如何开启ffmpeg的SIMD
优化思路:Emscripten不能编译.S文件,也不支持inline SIMD assembly。但是支持C API的 SSE1, SSE2, SSE3, SSSE3指令集。对h264addpx_template.c,h264chroma_template.c, h264dsp_template.c, h264idct_template.c, h264pred_template.c, h264qpel_template.c 进行SIMD移植。AAC,HEVC解码器也是相同原理。   官方文档说编译ARM NEON指令集(#include <arm_neon.h>)代码还不支持,但也可能行。   Intel有一个项目ARM_NEON_2_x86_SSE 是否可以考虑使用NEON的API进行移植开发,后期如果Emscripte开始支持NEON则可自动支持。
emscripten/vector.h 中直接映射了SIMD.js的API,根据这篇介绍 ,应该是同时支持X86平台的SSE和ARM平台的NEON指令集。那直接使用这个api来优化应该更好一点。

支持的服务端

Node-Media-Server

开发历程

  • [x] WebSocket网络传输
  • [x] FLV解析
  • [x] 音频解码与播放
  • [x] 视频解码与渲染
  • [ ] 兼容性测试
  • [ ] 性能优化

与flv.js比较

img

微信内打开

img

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].