首页 » SEO优化 » rtmpphp直播技巧_在Windows下用Nginx的rtmp模块搭建直播

rtmpphp直播技巧_在Windows下用Nginx的rtmp模块搭建直播

访客 2024-11-22 0

扫一扫用手机浏览

文章目录 [+]

我一贯都是一人独立做开拓,一贯在做一个微信小程序。

我想做过独立开拓的人都知道,由于没有团队合营,所有的功能,数据库等,除了调研以外,都是拍脑袋想出来的。

rtmpphp直播技巧_在Windows下用Nginx的rtmp模块搭建直播

基本是边想边做边改,弗成就推翻重来。

rtmpphp直播技巧_在Windows下用Nginx的rtmp模块搭建直播
(图片来自网络侵删)

个中滋味那是一个酸爽能够形容的。






牢骚发完,开始说本日的紧张内容。

由于疫情没有完备结束,各大实体店主都转战直播。

这便是写这篇文章的缘由。

先给大家看一下我编译好的Nginx模块

编译的准备事情

windows系统Win7,Win10,WinXP都是可以的

还须要理解一点点Linux命令,基本也便是ls(列目录),cd(跟windows一样,进出目录),vim(i:进入编辑模式,esc退出,:q退出,:wq保存退出,:q!强行退出)

准备软件:

0、安装Visual Studio 2005、2008、2010、2013、2015、2017,随便选一个版本安装就行。

我这里安装的是2015

1、MinGW - Minimalist GNU for Windows (https://osdn.net/frs/redir.php?m=tuna&f=mingw%2F68260%2Fmingw-get-setup.exe)

下载地址是0.63的bata版。

点击左侧列表Baseic Setup,在中部的插件中照图选择就好,然后点击Installation菜单中的Apply Changes安装插件,安装过程是比较漫长的,可以用这个韶光做其他事。

查看环境变量中有没有MinGW的干系设置。
如果么有的话,手动添加MinGW安装目录下的bin和msys\1.0\bin到PATH中。

2、下载安装Mercurial

进入官网https://www.mercurial-scm.org/右侧有download图标,点击下面的windows

3、下载安装strawberryperl

进入官网http://strawberryperl.com/右侧下载适宜你系统位数的版本。

4、下载安装nasm

进入官网https://www.nasm.us/中部就有下载连接,现在的版本是2.14.02

5、下载Nginx源码包

官网下载nginx.org或者用hg clone http://hg.nginx.org/nginx下载

hg下载步骤

打开cmd,cd到一个你知道的目录,然后录入hg clone http://hg.nginx.org/nginx nginx-win32-src就下载到了

5、下载模块:

nginx-rtmp-module(1.2.1)

https://github.com/arut/nginx-rtmp-module/releases

openssl(1.1.1d)

https://github.com/openssl/openssl/releases

zlib(1.2.11)

http://www.zlib.net/zlib1211.zip

pcre(8.44)

https://ftp.pcre.org/pub/pcre/pcre-8.44.zip

6、在Nginx源码目录中创建一个lib文件夹,用来存放模块。
当然,你也可以放在其他任意一个位置,只要在配置文件中逐一对应就可以,在后面的配置文件中你可以看到如何配置模块。

7、创建编译bat文件

在Nginx源码包的目录中创建一个bat文件,文件名随意,自己记得就好。
我这里是c.bat。

将下面的代码粘贴进去

auto/configure \--with-cc=cl \--with-cc-opt=-DFD_SETSIZE=1024 \--builddir=objs \ #这里是定义天生文件的目录--with-debug \--prefix= \--conf-path=conf/nginx.conf \ #这里定义天生conf配置文件的位置,以此类推就--pid-path=nginx.pid \#这里是Nginx运行时天生记录pid值的临时文件,以前是在logs下,我改在了根目录中--http-log-path=logs/access.log \#以此类推,这些紧张是配置哪些目录里放些什么文件。
--error-log-path=logs/error.log \--sbin-path=nginx.exe \--http-client-body-temp-path=temp/client_body_temp \--http-proxy-temp-path=temp/proxy_temp \--http-fastcgi-temp-path=temp/fastcgi_temp \--http-scgi-temp-path=temp/scgi_temp \--http-uwsgi-temp-path=temp/uwsgi_temp \--with-pcre=lib/pcre-8.44 \--with-zlib=lib/zlib-1.2.11 \--with-http_v2_module \--with-http_realip_module \--with-http_addition_module \--with-http_sub_module \--with-http_dav_module \--with-http_stub_status_module \--with-http_flv_module \--with-http_mp4_module \--with-http_gunzip_module \--with-http_gzip_static_module \--with-http_auth_request_module \--with-http_random_index_module \--with-http_secure_link_module \--with-http_slice_module \--with-mail \--with-stream \--with-openssl=lib/openssl-1.1.1d \--with-openssl-opt='no-asm no-tests -D_WIN32_WINNT=0x0501' \--with-http_ssl_module \--with-mail_ssl_module \--with-stream_ssl_module \--with-select_module \--add-module=lib/nginx-rtmp-module-1.2.1 \

8、开始编辑根本文件

在MinGW安装目录中的mysbs\1.0\,找到msys.bat,双击运行会打开一个cmd窗口。

进入你设定的nginx源码目录,我的是在c:/aaa/nginx,运行c.bat天生编译文件。

这个过程可能会要几分钟,末了会显示类似上面的结果。

到这里,第一步的编译过程结束。

9、修正缺点

打开你nginx源码目录中的auto/lib/openssl目录,在这个目录中有个makefile.msvc文件,用记事本打开,找到ms\do_ms修正为ms\do_nasm

还有记得检讨nasm是否 已经添加到环境变量中的path中。

不然天生时会发生缺点。

还有,编译时有些警告会认为是缺点,咱们降落缺点级别,让它顺利编译还须要修正一个文件

打开你的nginx源码目录中的auto\cc文件夹下有一个msvc文件,用记事本啥的打开,搜索w4,就只有一个,修正为w3就好。

千万记得,只改这个单独的,有一个类似的是ms\do_ms.bat,这个不须要修正,这个文件是UNIX格式,以是都在一行中显示的,将滚动条拖到中部,就能看到ms\do_ms,修正就好。

10、windows Visual Studio 2015 编译windows可实行的文件

点击开始找到Visual Studio 2015/Visual Studio Toosl/VS2015 开拓职员命令提示,点击运行,又会弹出一个cmd命令行窗口。

cd到你nginx的安装目录中,输入 nmake /f objs\MakeFile,回车后会等良久,你可以干点别的什么。

如果在末了一步,搜索的时候发生缺点不要紧,那是由于你没安装windows版的sed。
你可以在某度中搜索windows sed,安装就好。

到这里就天生完毕。

打开nginx源码目录中的objs文件夹,会看到nginx.exe就在个中。

将这个文件复制到其他目录中,新建logs、temp文件夹,然后将源码目录中的conf、contrib文件夹和docs下的html一并拷贝到新的文件夹就哦可拉。

现在你的nginx支持rtmp了

下面配置nginx

用文本编辑器打开conf中的nginx.conf文件

在文件底部添加代码

rtmp { # 配置RTMP模块 server { # 做事器 listen 1935; # 监听端口, 默认为1935 chunk_size 4000; # 数据块大小 4000 application live { # 运用名称, 可理解为直播房间的名称 live on; # 直播 [on]开启 } application hls { live on; hls on; hls_path html/hls;#视频流存放地址 hls_fragment 5s; hls_playlist_length 15s; hls_continuous on; #连续模式。
hls_cleanup on; #对多余的切片进行删除。
hls_nested on; #嵌套模式。
} }}

然后启动nginx你就可以推流和拉流了。

我这里有配置好的,有须要的朋友留言,留下邮箱,我发给你。

下一次我们来讲http_image_filter_module模块。

这是nginx自带的模块,须要添加gd库。

标签:

相关文章

IT验收资料的规范与重要性

在信息化时代,信息技术(IT)已经成为企业、政府机构等组织不可或缺的一部分。IT项目验收作为项目生命周期中的关键环节,对于确保项目...

SEO优化 2024-12-28 阅读0 评论0

Lidlit,引领未来城市交通的绿色创新力量

随着城市化进程的加快,城市交通拥堵、空气污染等问题日益突出,如何实现绿色、低碳、高效的出行方式成为全球关注的焦点。在这个背景下,L...

SEO优化 2024-12-28 阅读0 评论0

符号语言,沟通的桥梁,文化的传承

符号语言作为一种独特的沟通方式,自古以来就在人类社会中发挥着重要作用。从古代的甲骨文到现代的互联网表情包,符号语言以其简洁、形象、...

SEO优化 2024-12-28 阅读0 评论0

第二封锁协议,历史与现实的交汇点

第二封锁协议,这一历史名词,在二战期间曾一度成为全球关注的焦点。如今,我们站在新的历史节点,回顾这段历史,对于理解当今世界格局,具...

SEO优化 2024-12-28 阅读0 评论0

Moviit,科技赋能电影艺术的新篇章

随着科技的飞速发展,电影产业也在不断探索创新。Moviit作为一家专注于电影特效技术的公司,以其卓越的创新能力,为电影艺术开辟了新...

SEO优化 2024-12-28 阅读0 评论0