![](https://img-blog.csdnimg.cn/20201014180756922.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
nginx
文章平均质量分 87
未央千城
这个作者很懒,什么都没留下…
展开
-
基于nginx-rtmp-module模块实现的HTTP-FLV直播模块nginx-http-flv-module(四)
nginx-http-flv-module 的两个更新记录。原创 2023-01-12 23:52:08 · 396 阅读 · 0 评论 -
nginx-rtmp-module 的缺陷分析(四)
Nginx一般情况下都是以多进程方式(一个 master 进程和多个 worker 进程)运行的,但是nginx-rtmp-module模块对多进程方式的支持很不成熟。前面的文章提到过以多进程方式运行 Nginx 时,由于nginx-rtmp-module 本身不支持 Vhost 功能,再加上它使用 Unix domain socket(没有端口信息)转发媒体流到其他的 worker 进程,导致其他的 worker 进程无法知道转发的媒体流需要匹配的是哪个 server 配置。Nginx 从...原创 2021-01-17 00:42:20 · 515 阅读 · 0 评论 -
在nginx-http-flv-module中支持H.265(HEVC)
众所周知,FLV规范不支持H.265,并且近年来各大浏览器都逐渐不支持Flash,Adobe也宣布到2020年底不再支持Flash。作为FLV相关技术的所有者,Adobe估计也没动力更新规范来支持H.265;外加H.265标准的一些专利所有者的授权方案被指抢钱,更加打击了很多软件厂商的积极性。从H.265标准出来没多久,就有人请求Adobe在FLV规范中加入对H.265的支持:https:...原创 2019-09-23 21:58:06 · 8653 阅读 · 6 评论 -
高性能流媒体服务器nginx-http-live-module
nginx-rtmp-module实现了开创性的工作,但是,实际上它的完成度并不高,缺少的功能和很多缺陷在前面的文章中已有提及。如果要在实际生产环境中使用,必须进行大量的修改。 nginx-http-flv-module部分解决了一些问题,由于我自身有些知识和测试环境所限,有些问题的解决周期很长甚至无法解决。不管怎样,nginx-http-flv-module能成...原创 2019-06-25 13:59:46 · 11462 阅读 · 4 评论 -
nginx-rtmp-module的缺陷分析(三)
VHOST(虚拟主机)就是一址多域的意思,主流的Web服务器都有这个功能,它解决了运行Web的主机在同一个IP地址情况下可以为不同域名的请求提供服务的问题。假设有两个域名A和B,在DNS上A和B都指向同一个A记录(IPv4)或者AAAA记录(IPv6),Web服务器通过不同的域名信息解析到不同的配置,从而为A和B提供不同的服务。Nginx根据请求的信息(端口,IP地址和域名)匹配到对应的配置的大概...原创 2019-05-11 22:42:03 · 2349 阅读 · 0 评论 -
nginx-rtmp-module的缺陷分析(二)
nginx-rtmp-module使用指令push和pull来relay媒体流数据,以便分布式部署服务。当nginx-rtmp-module作为边缘服务器(一般不会向边缘服务器推流)时,使用pull从源服务器获取媒体流数据,俗称“回源”。先看原理图:注意:上图是单进程模式的pull回源图。可以看出,多个连接请求同一个媒体流(RTMP的URL格式为:rtmp://host[:port]/...原创 2019-04-24 16:18:52 · 3491 阅读 · 2 评论 -
nginx-rtmp-module的缺陷分析
Arut最初在开发nginx-rtmp-module的时候只实现了单进程模式,好处是架构简单,推送和播放,数据统计,流媒体控制等都在一个进程上完成。但是这显然浪费了Nginx多进程(在Linux和FreeBSD平台上每个进程都可以绑定一个CPU核心,以减少进程切换带来的开销)的处理能力。但是,如果开启多进程模式,推送和播放如果不在同一个进程上,会造成播放失败的问题:另外,请求数据统计信息也...原创 2019-04-14 11:41:35 · 3162 阅读 · 1 评论 -
基于nginx-rtmp-module模块实现的HTTP-FLV直播模块nginx-http-flv-module(三)
接上一篇《基于nginx-rtmp-module模块实现的HTTP-FLV直播模块nginx-http-flv-module(二)》内容。 项目地址:https://github.com/winshining/nginx-http-flv-module,欢迎大家下载测试,返回bug和提交PR。2018-10-28:现在nginx-htt-flv-module还...原创 2018-08-08 17:58:06 · 11156 阅读 · 21 评论 -
基于nginx-rtmp-module模块实现的HTTP-FLV直播模块nginx-http-flv-module(一)
本文后续的内容将在这里更新:《基于nginx-rtmp-module模块实现的HTTP-FLV直播模块nginx-http-flv-module(二)》。注意:下文的配置很多已经不能用了,因为现在的实现跟早期的实现相差有点大。而为了看到整个项目的变迁史,所以保留了下来,下文的更新中提到了为什么有些配置项不能再使用的原因。现在使用的配置可查找下文中的README.CN.md。另外,除非你...原创 2018-02-07 22:23:29 · 58878 阅读 · 95 评论 -
基于nginx-rtmp-module模块实现的HTTP-FLV直播模块nginx-http-flv-module(二)
由于《基于nginx-rtmp-module模块实现的HTTP-FLV直播模块nginx-http-flv-module(一)》内容已经很长,所以后续的更新将记录在这儿。非常感谢网友们的测试反馈和代码提交!项目地址:https://github.com/winshining/nginx-http-flv-module。有问题或者建议,可以加Q群:711969608详聊。目前已经有很多个...原创 2018-03-09 01:50:41 · 39487 阅读 · 39 评论 -
对nginx上传文件的第三方实现nginx-upload-module的修改
nginx官方推荐的第三方上传模块nginx-upload-module在nginx-1.3.9后已经不能编译通过,究其原因是因为nginx-1.3.9废弃了ngx_http_request_body_t中的to_write成员指针。 github上有人解决了这个问题,参考https://github.com/vkholodkov/nginx-upload-mod...原创 2017-01-29 12:42:35 · 5246 阅读 · 19 评论 -
nginx变量机制
初识变量前面曾讲过nginx配置文件的解析过程,也就是nginx如何在启动的过程中对用户设定的配置文件进行解析,并将配置文件中的各个配置项与配置值转换为对应的nginx内部变量值,从而能让nginx按照用户预想的情况去运行。如果只是一些比较简单并且确定的功能配置需求,那么nginx用户能够很方便的做出相应的设定,比如用户想要设置工作进程数为2个,那么配置文件中这样写即可:worker_转载 2016-10-12 18:15:41 · 2143 阅读 · 0 评论