node-media-server win环境安装架测试 踩坑记

01

  因为老师的项目中需要很多流媒体模块的东西,接触到 Node-Media-Server 这个流媒体服务器,这个国人开发的组件,之前还有SRS也是的。记录一下问题和效果。
  本子是win7,之前还有装nodejs时版本的问题,这里插一曲,win7在装nodejs时会因为版本版本问题弹框提示:在这里插入图片描述
  我也是第一次装只是遇到了这个点,大家有些别的问题我也没碰见,查了一番后,得知是v12.16.2 以上版本不支持win7系统,所以找了12.16.2 这一版

官网:https://nodejs.org/en/download/
win7 安装版:https://nodejs.org/dist/v12.16.2/node-v12.16.2-x64.msi
win7 便携配置版:https://nodejs.org/dist/v12.16.2/node-v12.16.2-win-x64.zip

直接安装就是正常安装,便携配置就是像tomcat一样解压之后,配置环境变量即可用。安装是他自己就给吧path环境变量配置了,并且顺带就把npm管理工具给装了。两种类型教程都有,一搜都能有。

02

1、node-media-server 流媒体服务器,用于转换流格式或者对视频流做一些操作以及向外推送流地址。

2、ffmpeg 推流工具,将你需要转换的视频或者视频流推流到流媒体服务器中,这一步即是推流。

3、拉流的意思是从流媒体服务器上拉取视频流,用固定格式的url在vlc等的播放器中播放,用视频播放器播放就是拉流。

03

node-media-server 是基于nodejs开发的,需先用npm安装。然而我就是这一步出很多问题,耽误了时间。

01 先在cmd下执行 他的安装命令

npm install node-media-server

从这我就出问题了,
(https://img-blog.csdnimg.cn/20210312173459959.jpg?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3B1YmxpY3N0YXRpY2ZpbmFs,size_16,color_FFFFFF,t_70#pic_center)
手上没有个正规的教程,而且win下装这个几乎没有教程,自己家参考着搜来的摸索着做了,说没有这个package.json。各种尝试推到C盘,D盘根下再次执行,在nodejs根目录下执行,在nodejs\node_module 下执行都还是这个问题。

搜到的这句话 npm init -f 执行完一样没成
在这里插入图片描述
尝试 npm install node-media-server -g 也不行,尝试 npm install node-media-server – save也不行,及=就各种搜到的解决命令来回尝试,来回切到提到的那几个目录不停尝试这几个命令
每次执行时他就是那种安装进度变化,几乎都一样、

然而,发生了意外惊喜

突然地去看了一下我的nodejs/node_module目录下有了很多变化,多了很多东西,之前才装好nodejs时只有npm文件夹。然后现在如图,
在这里插入图片描述
多了很多文件夹,当然包括 node-media-server。竟然的发现怎么突然就把nms给装上了。莫名其妙的就给装上去了,误打误撞了。

怀疑很有可能是这个帖子中的描述起了作用

https://segmentfault.com/q/1010000012930521

04

nms 流媒体服务器的 配置文件 app.js
在这里插入图片描述

app.js
const NodeMediaServer= require(‘node-media-server’);
这是app.js文件初始的展示
然后把第一行 const NodeMediaServer = require(’./’); 引号内文件换成 node-media-server。
进到nms的目录里,执行node app.js
在这里插入图片描述
出现上图结果就是启动成功。因为app.js 中对http配的是8000端口,所以这里就是用
localhost:8000/admin 访问。登录页面账号密码都是admin(当然这在app.js文件中都是可配置的)
在这里插入图片描述
这是访问主页,他默认把机子配置内存等检测了。退出访问就在cmd下 ctrl+c。
有些地方跟toncat很像

至此,node-media-server的本地安装部署加访问主页就成功了。

05

接下来 就是测试把本地机子的视频音频等文件进行推流然后拉流(播放)。
推流方式多样,这里我用的是ffmpeg这个工具,过程教程都有,可搜索。这里展示一下用vlc播放(媒体-打开网络串流-输入url)的结果
在这里插入图片描述
注意这里要用nms里的readme文件中的一段加入ffmpeg的配置来设置推流拉流
在这里插入图片描述
ffmpeg配置地方如图。
在这里插入图片描述

06

接下来把nms往远程服务器上装,windows server r2 2012,使用win的mstsc远程 来操作的。
因为之前给这装过nodejs了,如下图是版本
在这里插入图片描述
所以直接开始装nms,但是始终就是如图下这个问题,我把在我本地的方法都类似的尝试了,不行。又所以一番,
在这里插入图片描述
如下帖子中的方法都试验了,还是没能行

https://segmentfault.com/q/1010000012930521
http://www.bubuko.com/infodetail-2742157.html

感觉这个东西没那么普遍,出错的教程也不是很多,先这样了,之后在看。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/575522.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

UIScrollview 技巧

设置UIScrollView的contentSize 如果使用自动布局,那么它会自动帮你基于这个scrollview的子视图的约束来计算这个内容大小。在非自动布局情况下,如果app旋转导致scrollview 的bounds改变,不会影响到scrollview的contentSize,而如果…

NiFi导出自己模板和导入别人模板

NiFi导出模板 进入nifi系统后,选择自己想要导出的流程或者组(支持group作为模板导出) 点击空白处,右键选择create template 模板文件下载成功 NiFi导入模板 点击空白处,右键选择upload template 查看导入结…

Node.js开发入门(一)——安装Node.js及编辑器配置

Node.js是一个轻松构建快速,可扩展的网络应用平台建立在Chrome的JavaScript运行。Node.js使用事件驱动,非阻塞I/O模型,使得它重量轻,高效,完美的数据密集型实时应用程序运行在分布式设备。 Node.js是让JavaScript脱离浏…

架构风格与基于网络的软件架构设计

原文链接 https://blog.csdn.net/on_1y/article/details/60358117 架构风格与基于网络的软件架构设计 如今许多服务都采用了 RESTful API, 而 REST 这一架构风格,最早即来源于 Roy Thomas Fielding 的博士论文 Architectural Styles and the Design of Network-bas…

win7安装nodejs 高版本不支持 换低版本

win7安装nodejs失败 显示This application is only supported on Windows 8.1,Windows Server 2012 R2,or higer. win7安装nodejs失败 在win7重装nodejs,版本是node-v14.16.1-x64,安装时报了win7系统不支持的问题 2021年4月8日 —— 目前除了最新的v14大…

研究生导师一般希望招什么样的研究生?

虽然还不是导师,但也在学校蹲了不少年头了,看着一级级研究生毕业奔赴各方,其实还是蛮有感触的。 各位同学很多在硕士期间回忆并不算好,其实就是从一开始没有搞明白一件事:导师招生为了什么,我们上研又为了什…

Android Fragment应用实战

现在Fragment的应用真的是越来越广泛了,之前Android在3.0版本加入Fragment的时候,主要是为了解决Android Pad屏幕比较大,空间不能充分利用的问题,但现在即使只是在手机上,也有很多的场景可以运用到Fragment了&#xff…

初识树莓派

初识树莓派这一微型计算机,基本了解概念, 1、树莓派简介 Raspberry Pi(中文名为“树莓派”,简写为RPi,或者 RasPi/RPi)是为学生计算机编程教育而设计,只有信用卡大小的卡片式电脑,其系统基于Linux开发而来的。树莓派由…

ffmpeg抓取rtsp流并保存_详细解析RTSP框架和数据包分析(1)

0.引言 本文主要讲解RTSP框架和抓取RTSP数据包,进行详细分析。可以阅读以下几篇文章,能够帮助你更详细理解。 手把手搭建RTSP流媒体服务器 HLS实战之Wireshark抓包分析 HTTP实战之Wireshark抓包分析 1.RTSP协议简述 RTSP:Real Time Stream…

xshell 软件的窗口一直是置顶 调整为不置顶

突然感觉xshell 软件的窗口一直是置顶状态,点别的软件窗口点不过去, 搜索一下:微信的 alta是截图,和xshell这个冲突了。如果在xshell下按了这个,不知不觉就被置顶了。。。。。MMP 即这个意思: 如果要修改…

Linux下Vim工具常用命令

原文地址: http://www.cnblogs.com/lizhenghn/p/3675011.html 在linux下做开发,甚至是只做管理维护工作,也少不了Vim的使用。作为一个新手,我也是刚刚接触,本节将我日常使用或收集的Vim常用命令记录下来。 当然&#x…

测试telnet安装成功 以及如何进入和退出telnet命令模式

telnet装好之后,测试。 输入:telnet www.baidu.com 80 出现如图提示是意思是: 正常连通。 然后 按 ctrl ] 进入telnet客户端命令模式,然后用quit退出。进入linux命令模式。

数据按时间拆开分批处理示例

我现在的问题是有一个大的事实表,已经有数十亿条数据,过来的临时表需要merge进去. 临时表的大小也不确定,可能上十亿也可能只有几百几千万而已. 如果直接让这两个表merge起来,则需要很大的内存来进行处理.所以我就想着把数据进行按时间拆分的处理,然后merge进去, 拆分的条件是如…

telnet远程登陆、mstsc远程控制、SSH之间的比较和区别

Telnet与远程桌面mstsc 一 演示 打开mstsc演示: 01 win r 输入mstsc 02 输入要远程的机子的用户名和密码 03 登录 04 连接开启了,如图即是通过win窗口操作远程机子。 以上是使用mstsc打开一个远程连接来通过windows窗口的方式来控制远程机器。 …

Linux查看已经开放的端口,开放端口遇到防火墙的问题。

Linux查看已经开放的端口,开放端口,FirewallD is not running 查看已经开放的端口 firewall-cmd --list-all1 如果出现这种情况说明你的防火墙没有开: 则先把防火墙打开:systemctl start firewalld 扩展内容:. 查看firewalld状…

用yum装程序 报[Errno 12] Timeout on Trying other mirror.

使用yum,报错如图下: 记着之前网卡和dns文件都配置好着的,114.114.114.114都加上的。 检查了下,发现dns文件的配置不见了。。。。 故把 /etc/resolv.conf 中加了如下:然后重点不要重启 service network restart &#…

JavaScript中的原型和继承

请在此暂时忘记之前学到的面向对象的一切知识。这里只需要考虑赛车的情况。是的,就是赛车。 最近我正在观看 24 Hours of Le Mans ,这是法国流行的一项赛事。最快的车被称为 Le Mans 原型车。这些车虽然是由“奥迪”或“标致”这些厂商制造的&#xff0c…

Centos7.x 网卡启动报错(Failed to start LSB: Bring up/down networking)

环境:华为云服务器、 CentOS 7.x 操作是 调整网卡配置文件和resolv.conf ,systemctl restart network 重启网络服务总是失败:如下: 按提示看细节: 搜索到还算靠谱的帖子,都说 大多都是网卡配置文件配置错误&#x…

计算机网络复习-OSI TCP/IP 物理层

我膨胀了,挂我啊~ 作者简介: 每年都吐槽吉师网安奇怪的课程安排、全校正经学网络安全不超20人情景以及割韭菜企业合作的FW,今年是第一年。。 TCP/IP模型 先做两道题: TCP/IP协议模型由高层到低层分为哪几层: 这题…

J2EE的十三个规范

J2EE想必大家都不陌生吧,貌似现在更流行将其称作JavaEE,不管名字怎么变,核心和思想是没有变的。学习J2EE首先要了解它的规范,下面我们一起看看它的十三个规范。 1,JDBC(Java Database Connectivity&#xf…