Node-Media-Server

Node.js 实现的流媒体服务器
授权协议 MIT
开发语言 JavaScript
所属分类 服务器软件、 流媒体服务器
软件类型 开源软件
地区 不详
投 递 者 邢项禹
操作系统 跨平台
开源组织
适用人群 未知
 软件概览

Node-Media-Server 是一个 Node.js 实现的 RTMP/HTTP/WebSocket/HLS/DASH 流媒体服务器。

特性

  • 跨平台支持 Windows/Linux/Unix
  • 支持的音视频编码 H.264/H.265/AAC/SPEEX/NELLYMOSER
  • 支持缓存最近一个关键帧间隔数据,实现RTMP协议秒开
  • 支持RTMP直播流转LIVE-HTTP/WS-FLV流,支持 NodePlayer.js 播放
  • 支持星域CDN风格的鉴权
  • 支持事件回调
  • 支持https/wss加密传输
  • 支持服务器和流媒体信息统计
  • 支持RTMP直播流转HLS,DASH直播流
  • 支持RTMP直播流录制为MP4文件并开启faststart
  • 支持RTMP/RTSP中继
  • 支持API控制中继
  • 支持实时多分辨率转码

用法

npx 运行

npx node-media-server

安装为全局程序

npm i node-media-server -g
node-media-server

docker 运行

docker run --name nms -d -p 1935:1935 -p 8000:8000 -p 8443:8443 illuspas/node-media-server

npm 定制开发(推荐)

mkdir nms
cd nms
npm install node-media-server
vi app.js
const NodeMediaServer = require('node-media-server');

const config = {
  rtmp: {
    port: 1935,
    chunk_size: 60000,
    gop_cache: true,
    ping: 30,
    ping_timeout: 60
  },
  http: {
    port: 8000,
    allow_origin: '*'
  }
};

var nms = new NodeMediaServer(config)
nms.run();
node app.js
  • GitHub - illuspas/Node-Media-Server: A Node.js implementation of RTMP/HTTP-FLV/WS-FLV/HLS/DASH/MP4 Media Server 1.简介 Node-Media-Server是RTMP / HTTP-FLV / WS-FLV / HLS / DASH媒体服务器的Node.js实现 2.特性 跨平台支持Wi

  • Node-Media-Server (相对稳定可用性高) 主要应用Node.js 实现的RTSP(结合ffmpeg)/RTMP/HTTP/WebSocket/HLS/DASH流媒体服务器 特性 跨平台支持 Windows/Linux/Unix 支持的音视频编码 H.264/H.265/AAC/SPEEX/NELLYMOSER 支持缓存最近一个关键帧间隔数据,实现RTMP协议秒开 支持事件回调 支持

  • github上这个项目没有告知需要npm版本2.1.2 node>8,所以写下这个避免踩坑 系统版本:centos 6系列 yum install epel-release npm wget -y npm config set strict-ssl false #有时候会提示根证书不信任,关掉这个省去麻烦 npm install npm@v2.1.2 -g #升级npm,-g代表直接替换旧版本 w

  •  Microsoft Visual Studio Solution File, Format Version 12.00 # Visual Studio 14 VisualStudioVersion = 14.0.24720.0 MinimumVisualStudioVersion = 10.0.40219.1 Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91B

  • 服务端 const NodeMediaServer = require('node-media-server'); const config = { /**推流*/ rtmp: { port: 1935, chunk_size: 60000, gop_cache: true, ping: 60, ping_timeout: 30 }, /**

  • 随着Internet和Intranet应用日益丰富,视频点播也逐渐应用于宽带网和局域网。人们已不再满足于浏览文字和图片,越来越多的人更喜欢在网上看电影、听音乐。而视频点播和音频点播功能的实现,则必须   依靠流媒体服务技术。就目前来看,最流行的流媒体点播 服务器只有两种,即 Windows Media服务和Real Server。下面我们在这里主要讨论在Windows 2003 Server环境下

  •   Win2003中搭建视频服务器    随着Internet和Intranet应用日益丰富,视频点播也逐渐应用于宽带网和局域网。人们已不再满足于浏览文字和图片,越来越多的人更喜欢在网 上看电影、听音乐。而视频点播和音频点播功能的实现,则必须依靠流媒体服务技术。就目前来看,最流行的流媒体点播服务器只有两种,即Windows Media服务和Real Server。下面我们在这里主要讨论在Windo

  • ./configure --add-dynamic-module=/xxx/nginx-http-flv-module-master    首先需要在编译nginx时把模块加入,下面的nginx.conf测试正常 user www-data; worker_processes auto; pid /run/nginx.pid; load_module modules/ngx_http_flv_li

  • 经过各种测试,发现目前H5播放直播最理想的是ws-flv Node-Media-Server可以支持 具体内容链接来自:https://www.cnblogs.com/ldy-blogs/p/10081787.html 此处只做记录 http://www.92km.net/archives/nms.html(没成功) 这个貌似简单 https://github.com/illuspas/Node-

  •         在前面我们说过安卓的开机流程,在内核初始化完成后,init 进程创建后会根据/system/etc/init 目录下的.rc文件进行创建服务,今天介绍下mediaserver的创建,跟实现的对应的功能。         我们先看看framework/av/media/mediaserver/mediaserver.rc,这个很简单就起mediaserver on property:

  • http://www.nodemedia.cn/products/node-media-server/ 文档说的是明明白白的 https://www.npmjs.com/package/node-media-server npm上说的也是明明白白的 npm install node-media-server const NodeMediaServer = require('node-media-

 相关资料
  • 我们正在开发一个应用程序,可以实时监控你的后院。每个客户端都有一个连接到internet的摄像头,流媒体到我们的公共Node.js服务器。 我试图使用node-media-server发布一个MPEG-DASH(或HLS)流,以供我们的应用程序客户端使用,在世界各地的不同网络、带宽和分辨率上。 我们的目标是尽可能接近“实时”生活,这样你就可以立即监控你后院发生的事情。 已经完成的技术流程是: 据我

  • Media 对象提供录制和回放设备上的音频文件的能力。 var media = new Media(src, mediaSuccess, [mediaError]); 备注:Media的当前实现并没有遵守W3C媒体捕获的相关规范,目前只是为了提供方便。未来的实现将遵守最新的W3C规范并可能不再支持当前的APIs。 参数: src:一个包含音频内容的URI。(DOMString类型) mediaSu

  • @media工作原理和在常规CSS中一样,但是,要使用Stylus的块状符号。 @media print #header #footer display none 生成为: @media print { #header, #footer { display: none; } }

  • 主要内容:什么是多媒体?,浏览器支持,多媒体格式,视频格式,声音格式Web 上的多媒体指的是音效、音乐、视频和动画。 现代网络浏览器已支持很多多媒体格式。 什么是多媒体? 多媒体来自多种不同的格式。它可以是您听到或看到的任何内容,文字、图片、音乐、音效、录音、电影、动画等等。 在因特网上,您会经常发现嵌入网页中的多媒体元素,现代浏览器已支持多种多媒体格式。 在本教程中,您将了解到不同的多媒体格式,以及如何在您的网页中使用它们。 浏览器支持 第一款因特网浏览器只支持

  • Web 上的多媒体指的是音效、音乐、视频和动画。 现代网络浏览器已支持很多多媒体格式。 什么是多媒体? 多媒体来自多种不同的格式。它可以是您听到或看到的任何内容,文字、图片、音乐、音效、录音、电影、动画等等。 在因特网上,您会经常发现嵌入网页中的多媒体元素,现代浏览器已支持多种多媒体格式。 在本教程中,您将了解到不同的多媒体格式,以及如何在您的网页中使用它们。 浏览器支持 第一款因特网浏览器只支持

  • 在本章中,我们将研究Joomla Media Settings 。 Joomla媒体设置有助于配置全局媒体文件选项,如文件格式,MIME规范,文件上传,文件大小等。 Joomla媒体设置 以下是用于设置Joomla媒体选项的简单步骤 - Step (1) - 进入System → Global Configuration ,如下面的屏幕所示。 单击Joomla Global Configurati

  • 本章讨论Media对象。 这些是抽象对象样式,用于构建各种类型的组件(如博客评论,推文等),这些组件在文本内容旁边具有左对齐或右对齐图像。 媒体对象的目标是使用于开发这些信息块的代码大大缩短。 媒体对象的目标(轻量级标记,易扩展性)是通过将类应用于某些简单标记来实现的。 媒体对象有两种形式 - .media - 此类允许将媒体对象(图像,视频和音频)浮动到内容块的左侧或右侧。 .media-lis

  • 分页媒体与连续媒体的不同之处在于,文档的内容被分成一个或多个离散页面。 分页媒体包括纸张,透明胶片,显示在计算机屏幕上的页面等。 CSS2标准引入了一些基本的分页控制功能,让作者帮助浏览器找出如何最好地打印文档。 CSS2页面模型指定如何在具有有限宽度和高度的矩形区域(页面框)内格式化文档。 这些功能分为两组 - CSS2功能定义特定的页面布局。 CSS2功能可控制文档的分页。 定义页面:@pag