NodeMediaServer

简述

NodeMediaServer是基于Node.js开发的开源流媒体服务端。凭借Nodejs的跨平台特性,真正实现跨平台流媒体服务端。不管你的服务器是Windows,Linux,FreeBSD,都能完美兼容。即使是ARM-Linux,也能出色运行。无需搭建编译环境,真正达到即开即用。

NodeMediaServer利用Nodejs异步事件驱动的模型,搭建了高性能的RTMP协议处理机制,单机高并发完全没有性能瓶颈。

NodeMediaServer支持市面上所有标准RTMP协议推流,同时扩展了视频协议,增加了对H.265视频的支持,让您的带宽占用更低,并发量更高。GOP_CACHE功能保证了每次客户端都能第一时间拿到关键帧信息,并立即开始解码播放,秒开直播流。

NodeMediaServer除了提供标准的RTMP协议拉流以外,还支持将RTMP转流为Http-FLV, Websocket-FLV, HLS, DASH等直播协议,让您的选择更加广泛。同时,当转流为HLS,DASH时,能自动判断音频编码是否为AAC,否则自动转码为AAC音频流。保证从web_flash推流,音频也能完整的提供出HLS,DASH流。

NodeMediaServer支持将RTMP直播视频流保存为标准MP4文件,提供HTTP协议的录像回放的功能。MP4是Web和Mobile原生API标准支持度最高的格式。

NodeMediaServer支持丰富的流事件回调,您可以自行监听流的各个状态,进行事件操作。

NodeMediaServer支持过期时间戳+流地址签名式鉴权,保护推流安全,防盗链。

NodeMediaServer支持对接fms,传统flash+fms项目架构不做任何改变,轻松转http-flv,websocket-flv

安装方法

1.下载包

npm install node-media-server

2.创建一个应用实例 app.js

const NodeMediaServer = require('node-media-server');
const config = {
rtmp: {
port: 1935,
chunk_size: 60000,
gop_cache: true,
ping: 60,
ping_timeout: 30
},
http: {
port: 8000,
allow_origin: '*'
}
};
var nms = new NodeMediaServer(config)
nms.run();

3.运行服务

node app.js

只需三步,便搭建了基本的RTMP, HTTP-FLV流媒体服务器。

Windows x86_64 一键运行版

点击下载:https://nodemedia.oss-cn-hangzhou.aliyuncs.com/nms/2.1.3/nms-windows-x86_64_v2.1.3.zip

高级用法

请访问 https://github.com/illuspas/Node-Media-Server

或者联系客服获得技术支持

QQ: 281269007

EMail: service@nodemedia.cn