NodePlayer.js 是一款基于ASM.js实现的纯JavaScript直播播放器。能够播放http-flv/Websocket-flv协议的直播流。
能够在 PC\Android\iOS 浏览器Webview 内实现2秒以内低延迟直播播放,软解码H.264+AAC流,WebGL视频渲染,WebAudio音频播放。
支持在微信公众号、朋友圈分享中打开。
商用版特色:
- 支持解码H.264视频(Baseline, Main, High Profile全支持,支持解码B帧视频)
- 支持解码H.265视频(flv id == 12)
注:程序压缩前增大500k,压缩后增大100k,解码性能不高,默认不编译。如有特殊需求联系客服定制开通,不另收费。 - 支持填充,等比,等比缩放 3种视频缩放模式
- 支持解码AAC音频(LC,HE,HEv2 Profile全支持)
- 支持解码Nellymoser音频,Flash端推流音频信息完整
- 支持解码8kHz PCM_ALAW, PCM_MULAW的G.711音频,传统监控视频上云无需转码
- 支持音量调节
- 可设置播放缓冲区时长,最低100毫秒极限低延迟
注:为保证视频平滑播放,建议根据网络情况,有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加密视频传输,保证视频内容传输安全
- 支持自动分析是否支持并采用MSE进行播放(硬件解码,在除iOS平台以外的大部分浏览器支持)
- 手机浏览器内打开视频不会变成全屏播放
- 支持实时回调当前播放流缓冲区时长,帧率,音视频码率
链接: https://fly63.com/nav/2938