Description
NodePlayer.js 是一款基于Asm.js/Wasm 实现的纯JavaScript直播播放器。能够播放http-flv/Websocket-flv/http2-flv协议的直播流,能够在 PC\Android\iOS 浏览器Webview 内实现毫秒级低延迟直播播放,软解码H.264/H.265+AAC流,WebGL视频渲染,WebAudio音频播放。支持在微信公众号、朋友圈分享中打开。
chrome91之后已正式加入SIMD软解码指令集加速,chrome94之后已正式加入H264硬解码能力。
下载
试用开发包(10分钟断开, 刷新页面继续测试):
asm稳定版, 兼容高:NodePlayer_v0.5.70-asm_trial.zip
wasm稳定版,性能强(推荐):NodePlayer_v0.5.70-wasm_trial.zip
wasm开发版,SIMD软解码,Worker多核软解码,WebCodecs硬解码,MediaSource硬解码:NodePlayer_v0.10.2-wasm_trial.zip
在线Demo
- ASMJS: http://demo.nodemedia.cn/uploads/nodeplayer.html
- WASM: http://demo.nodemedia.cn/uploads/nodeplayer_wasm.html
- SIMD指令集加速单核并行解码: http://demo.nodemedia.cn/uploads/simd/index.html
- WASM 弹幕:http://demo.nodemedia.cn/uploads/nodeplayer_danmu.html
- WASM 轮播: http://demo.nodemedia.cn/uploads/nodeplayer_wasm_loop.html
- WASM 自动播放:http://demo.nodemedia.cn/uploads/nodeplayer_auto.html?url=http://flv.bdplay.nodemedia.cn/live/bbb.flv
- WASM Worker 4画面:http://demo.nodemedia.cn/uploads/worker/index_2x2.html
- WASM Worker 9画面:http://demo.nodemedia.cn/uploads/worker/index_3x3.html
- WebCodecs 硬解码h264 https://demo.nodemedia.cn/uploads/wcs/index.html??url=https://flv.bdplay.nodemedia.cn/live/bbb.flv
- WebCodecs 硬解码h264 4画面 https://demo.nodemedia.cn/uploads/wcs/index_2x2.html??url=https://flv.bdplay.nodemedia.cn/live/bbb.flv
- MediaSource 硬解码h264 http://demo.nodemedia.cn/uploads/mse/index.html
- MediaSource 硬解码h264 4画面http://demo.nodemedia.cn/uploads/mse/index_2x2.html
- AudioWorklet音频引擎https://demo.nodemedia.cn/uploads/nodeplayer_wasm_audioworklet.html
低延迟
OBS推流到局域网NMSv3,使用NodePlayer.js_v0.5.45-wasm版,bufferTime设置为100 毫秒,实测延迟400毫秒。低于1秒,达到毫秒级低延迟。
100毫秒极限低延迟:
功能特色
- 支持解码H.264视频(Baseline, Main, High Profile全支持,支持解码B帧视频)
- 支持解码H.265视频(flv id == 12), windows 系统下 360浏览器可使用mse硬解
- 支持填充,等比,等比缩放 3中视频缩放模式
- 支持解码AAC音频(LC,HE,HEv2 Profile全支持)
- 支持解码Nellymoser音频,Flash端推流音频信息完整
- 支持解码8kHz PCM_ALAW, PCM_MULAW的G.711音频,传统监控视频上云无需转码
- 支持解码Opus音频(flv_id=13)
- 支持音量调节
- 支持播放中途视频分辨率改变
- 支持播放中途音频采样与编码改变
- 可设置播放缓冲区时长,最低毫秒极限低延迟
注:为保证视频平滑播放,建议根据网络情况,有CDN分发设置为500-1000毫秒,无CDN设置为1000-2000毫秒,也可自行更加网络环境调整 - 支持智能不花屏丢帧,长时间播放绝不累积延迟。
- 可创建多个播放实例,能同时播放多实例音频
- 程序精简,经CDN加速,GZIP压缩(实际下载500k),加载速度更快
注:阿里云oss已更新策略,需要自行gzip压缩后上传并设置Content-Encoding为gzip - 同时支持http-flv和websocket-flv协议
注:以http-flv请求时,存在跨域请求的问题,需要设置access-control-allow-origin, websocket-flv默认不存在此问题 - 支持HTTPS/WSS加密视频传输,保证视频内容传输安全
- 支持HTTP2-flv流,不受chrome 6路并发限制
- 支持自动分析是否支持并采用MSE进行播放(硬件解码,在除iOS平台以外的大部分浏览器支持)
- 支持WebWorker多核解码,提升多画面播放性能。
- 支持WebCodecs硬件解码API
- 支持MediaSourceExtensions 硬件解码
- 支持MediaSourceExtensions 硬件解码后渲染到canvas
- 支持SIMD软解码指令集加速
自建流媒体服务器支持
CDN加速直播云服务商
- 奥点云
- 百度云
- 腾讯云
- 阿里云
- 星域CDN
- 网宿科技
受限
- 本方案使用Fetch WebGL WebAudio WebSocket WebAssembly等技术,IE肯定无法支持
- 本方案采用js软解,单线程,处理器性能要求高,运算量大,手机端发热。
- iPhone处理器性能强劲,型号统一,表现一致。但Android品牌众多,性能天差地别,表现很不一致。
- Android手机浏览器版本跨度非常大,性能表现不一致。
商务服务
产品使用需商用授权,请联系客服
QQ:281269007
Email : service@nodemedia.cn