前端Web浏览器基于Flash如何实时播放监控视频画面(二)之Windows搭建(RTMP)流媒体服务器
本片文章只是起到抛砖引玉的作用,能从头到尾走通就行,并不做深入研究。为了让文章通俗易懂,尽量使用白话描述。
0x001: 获取
流媒体服务器有很多,这里以nginx为例。
nginx for Windows (http://nginx-win.ecsds.eu/download/nginx 1.7.11.3 Gryphon.zip,当然你也可以下载其他高版本)
(注:此版本与nginx.org的官方版本有啥区别,是否为一家,是否安全并不得知,介意请勿下载使用。曾尝试从 此txt文件中查找但并没有读到什么有用的信息,并没有明确说明与nginx.org的关系。如果你知道些关于nginx-win.ecsds.eu与nginx.org官方提供的nginx有何区别,欢迎在下方评论指出,让更多人受益)
nginx-rtmp-module (https://github.com/arut/nginx-rtmp-module/archive/v1.2.1.zip)
nginx通过rtmp模块提供rtmp服务,但此模块不跟随nginx一起被打包,需要单独下载。
0x002: 配置
以上两个文件全部下载后,解压nginx 1.7.11.3 Gryphon.zip,移动至某个盘符下(不建议放在C盘),我这里只有一个盘,就直接放在C盘了。解压nginx-rtmp-module-1.2.1.zip,移动nginx-rtmp-module-1.2.1文件夹到nginx根目录

复制 nginx根目录/conf/nginx-win.conf,重命名为nginx.conf(这样做的原因是nginx启动默认会加载以nginx.conf命名的conf文件)

打开 nginx根目录/nginx-rtmp-module-1.2.1/README.md,将滚动条拉到最后,将rtmp模块的配置内容 复制到 nginx根目录/conf/nginx.conf内的 events模块后,http模块前,然后保存。application 后的 mytv可以根据自己的需求改为想要改的,但要记住,因为在下一篇文章中 '推流时' 会用到。

下方http模块内的server listen 监听端口,根据自己的需求来决定改或不改,因为我这里有IIS服务器,为避免80端口冲突,所以将其改为8085

0x003: 启动
使用CMD窗口进入nginx根目录或在nginx根目录内鼠标右键 '在此处打开命令窗口',敲入 start nginx

如果此时没有什么异常的话,会有一个CMD窗口一闪而过,说明nginx "可能" 已经启动成功了。
之后打开浏览器验证一下,输入http://localhost:刚刚改的端口,我这里是http://localhost:8085,如果出现以下画面,才说明nginx服务器 "真正"启动成功了

提示:新搭建的windows server 20** 服务器环境,可能会出现以下错误,如果未出现可略过此步骤。
解决方案:从网上下载或从其他电脑拷贝msvcr100.dll文件,根据自己系统版本的位数,分别放到C:\Windows\System32 或 C:\Windows\SysWOW64,之后再重新运行nginx。


0x004: nginx常用命令
启动
start nginx 或 nginx.exe(不建议使用后者,因为后者会造成CMD窗口阻塞,不再接受任何命令)
再或者 nginx根目录/nginx.exe -c nginx根目录/conf/nginx.conf
停止
nginx.exe -s stop 或 nginx.exe -s quit
重新加载Nginx
nginx.exe -s reload
查看Nginx版本
nginx -v
0x005: 下一步
前端Web浏览器基于Flash如何实时播放监控视频画面(二)之Windows搭建(RTMP)流媒体服务器的更多相关文章
- 前端Web浏览器基于Flash如何实时播放监控视频画面(前言)之流程介绍
[关键字:前端浏览器如何播放RTSP流画面.前端浏览器如何播放RTMP流画面] 本片文章只是起到抛砖引玉的作用,能从头到尾走通就行,并不做深入研究.为了让文章通俗易懂,尽量使用白话描述. 考虑到视频延 ...
- 前端Web浏览器基于Flash如何实时播放监控视频画面(四)之使用videoJs‘拉流’
本片文章只是起到抛砖引玉的作用,能从头到尾走通就行,并不做深入研究.为了让文章通俗易懂,尽量使用白话描述. 0x001: 下载videoJs 对于Video.js 5.x及更低版本,Flash技术(v ...
- 前端Web浏览器基于Flash如何实时播放监控视频画面(三)之使用ffmpeg‘推流’
本片文章只是起到抛砖引玉的作用,能从头到尾走通就行,并不做深入研究.为了让文章通俗易懂,尽量使用白话描述. 0x001: 下载ffmpeg 开源免费的推流软件有很多,这里以 ffmpeg 为例.ffm ...
- 前端Web浏览器基于Flash如何实时播放监控视频画面(一)之获取监控摄像头的RTSP流
本片文章只是起到抛砖引玉的作用,能从头到尾走通就行,并不做深入研究.为了让文章通俗易懂,尽量使用白话描述. 0x001: 获取 现在市场上普见的摄像头都支持RTSP协议,如果你不懂什么是RTSP协议, ...
- 前端Web浏览器基于H5如何实时播放监控视频画面(前言)之流程介绍
先看上边这张图.由于离2020年12月各浏览器禁用Flash的日子越来越近,又正恰巧要做新录播项目,所以有了以下内容. 还记得去年也是这个时候,大约是四五六月份,甲方来了个需求想把车间的监控系统接入到 ...
- EasyDSS RTMP流媒体服务器基于RTMP拉模式和转推模式搭建公网全平台全终端直播集群的方案
近期,我们有一位EasyDSS流媒体用户在需求中提出:如何搭建一个用户量巨大的讲座直播,提供给普通用户免费观看,每天上午和下午分别有几场讲座同时直播,持续几天时间. 推荐方案 ★ 由于甲方是中国移动运 ...
- EasyDSS RTMP流媒体服务器videojs flash播放RTMP/HLS提示错误的解决方案
本文转自EasyDSS团队成员StarIT的博客:http://blog.csdn.net/staritstarit/article/details/73692715 问题 在博客<EasyDS ...
- EasyDSS RTMP流媒体服务器web前端:vue组件之间的传值,父组件向子组件传值
之前接触最多的都是EasyNVR,主要针对的都是前端的一些问题.也有接触到一些easydss流媒体服务器. 前端方面的,EasyDSS流媒体服务器与EasyNVR有着根本的不同.EasyNVR使用的是 ...
- EasyNVR网页H5无插件播放摄像机视频功能二次开发之直播通道接口保活示例代码
背景需求 随着雪亮工程.明厨亮灶.手机看店.智慧幼儿园监控等行业开始将传统的安防摄像头进行互联网.微信直播,我们知道摄像头直播的春天了.将安防摄像头或NVR上的视频流转成互联网直播常用的RTMP.HT ...
随机推荐
- 输出1-n的全排列dfs
https://ac.nowcoder.com/acm/contest/998/C #include<stdio.h> #include<iostream> #include ...
- Number of Containers ZOJ - 3175(数论题)
Problem Description For two integers m and k, k is said to be a container of m if k is divisible by ...
- dash shell 的一些总结
最近写个一些dash shell 相关的代码,中间遇到了一些坑以及需要注意的地方,记录一下 1 参数 numberofargmuments(){ echo "The number of ar ...
- TP5实现自定义抛出异常消息(关闭debug)
重写Handle的render方法,实现自定义异常消息----------------------------------------------------------------------- 首 ...
- easyswoole报错:failed: Error during WebSocket handshake: Unexpected response code: 200
WebSocket connection to 'ws://www.xxxx.com/xxx/xx' failed: Error during WebSocket handshake: Unexpec ...
- drf的三大认证
目录 三大认证任务分析 auth组件的认证权限六表 自定义User表分析 源码分析 认证与权限工作原理 源码分析 认证模块工作原理 权限模块工作原理 admin关联自定义用户表 自定义认证.权限类 用 ...
- python的文件读写操作
文件读写 本文转自廖雪峰老师的教程https://www.liaoxuefeng.com/wiki/1016959663602400/1017607179232640 读写文件是最常见的IO操作.Py ...
- C#面向对象15 多态
多态 概念:让一个对象能够表现出多种的状态(类型) 实现多态的3种手段:1.虚方法 2.抽象类 3.接口 1.虚方法 步骤:1.将父类的方法标记为虚方法,使用关键字 virtual,这个函数可以被子类 ...
- squoosh
谷歌在线压缩图片
- mysql 触发器 if then elseif else 的运用
create procedure dbname.proc_getGrade (stu_no varchar(20),cour_no varchar(10)) BEGIN declare stu_gra ...