一套分流+水印的直播系统顺手打包成docker镜像,方便大家需要用到的时候开箱即用,不需要百度一些零碎的文章 也可做简单的直播服务,只需调整配置文件便可达到你的需求.需求:将直播流分流到两个云厂商的直播云,一个有水印,一个无水印。使用hls播放朋友需求的拓扑示意图: 当前拓扑示意图(阿某云和腾讯云不方便放出推流和拉流地址,有兴趣的同学可以去申请玩一下) docker-ngi
转载
2024-03-27 09:47:03
410阅读
最近在总结RTMP使用过程中的一点经验, 发现网上博客与我的使用体会有很多相似之处,故将其博客转载,并加入直接的一些体会:直播应用中,RTMP和HLS基本上可以覆盖所有客户端观看,HLS主要是延时比较大,RTMP主要优势在于延时低。一、应用场景 低延时应用场景包括: . 互动式直播:譬如2013年大行其道的美女主播,游戏直播等等 各
转载
2024-08-03 09:07:36
68阅读
HLS:网络协议HTTP M3U8索引文件 延迟很大播放协议采用的是 HLS(m3u8)协议,并感觉延迟较大,这个是正常的。 HLS 协议是苹果主推的基于大颗粒的 TS 分片的流媒体协议,每个分片的时长通常在5秒以上,分片数量一般为3个 - 4个,所以总延迟在10秒 - 30秒左右。只能通过适当减少分片个数或者缩短每个分片的时长来降低延迟,但需要综合考虑对卡顿指标可能造成的影响。&nbs
转载
2023-10-03 07:01:03
321阅读
前言1.RTMP(实时消息传输协议)是Adobe 公司开发的一个基于TCP的应用层协议。 2.RTMP协议中基本的数据单元称为消息(Message)。 3.当RTMP协议在互联网中传输数据的时候,消息会被拆分成更小的单元,称为消息块(Chunk)。一、握手协议要建立一个有效的RTMP Connection链接,首先要“握手”:客户端要向服务器发送C0,C1,C2(按序)三个chunk,服务器向客户
转载
2024-03-12 17:55:19
322阅读
Nginx本身是一个非常出色的HTTP服务器,FFMPEG是非常好的音视频解决方案.这两个东西通过一个nginx的模块nginx-rtmp-module,组合在一起即可以搭建一个功能相对比较完善的流媒体服务器.这个流媒体服务器可以支持RTMP和HLS(Live Http Stream)从安装开始Nginx的安装参照我之前的这个: 不同的是在configure的时候需要增加nginx-rt
转载
2024-07-05 10:31:52
2247阅读
基本原理就是nginx已经是安好编译好的,添加模块需要在解压目录(不是安装目录)里的添加上这个模块(用./configure注册上所有要用的模块),再在解压目录里重新编译,把新编译好的编译文件去安装目录替换那个老的编译文件,不用重新安装。我的安装目录/usr/local/webserver/nginx解压目录/usr/local/src/nginx-1.16.1一、首先就是先下载ngi
转载
2024-05-23 15:49:44
179阅读
rtmp直播延迟RTMP直播延迟是指使用RTMP协议进行实时传输的直播过程中,视频和音频信号从采集到播放之间的时间延迟。RTMP(Real-Time Messaging Protocol)是一种用于实时数据传输的协议,常用于音视频直播和互动直播。RTMP直播延迟的主要原因包括以下几个方面:编码和传输延迟:视频和音频信号需要经过编码和传输过程,这个过程会引入一定的延迟。编码延迟取决于编码算法和编码参
原创
2024-05-22 15:01:08
270阅读
ngx_rtmp_control_moduleRTMP控制模块主要包括录制指令、关闭指令、重定向指令三个控制命令。和其他RTMP有所不同的地方是:RTMP控制模块是注册在HTTP模块下的,它是通过在HTTP配置域下进行控制配置,并通过HTTP Get请求来实现外部对RTMP服务的控制功能。源码分析注册HTTP回调static char *
ngx_rtmp_control(ngx_conf_t *
转载
2024-04-07 20:43:31
181阅读
一、安装Nginx依赖库#安装Nginx的编译环境gcc
yum install gcc-c++或者sudo apt install gcc二、安装pcrewget https://ftp.pcre.org/pub/pcre/pcre-8.10.tar.gz
tar -zxf pcre-8.10.tar.gz
./configure
make
make install三、安装zlibwget ht
转载
2024-03-26 11:21:37
254阅读
首先声明一点:这里的“高并发”是相对的,相对于硬件而言,而不是绝对的高并发。后者需要分布式来实现,这里不做讨论。本文关注的是单机的高并发。最近在做一个语音通信系统,要求在线用户2W,并发1K路通话。硬件是两台服务器,酷睿多核,4G内存,千兆网卡(我用过的最好的硬件,负担这些应该问题不大)。系统的另一个指标是呼叫时延和语音时延。这是这个系统的关键。最终我们的系统拿到用户现场测试的时候,效果可能有点太
转载
2023-06-30 18:53:01
0阅读
实验环境说明:进行本实验的前提:需要在ubuntu上搭建好ffmpeg环境,参考我的另一篇博文ffmpeg编译过程经历的99八十一难 下面开始本文内容 PART1 编译安装带Nginx-rtmp-module的Nginx服务器1 下载Nginx (Nginx从官网下载比较好,不要去github下) &n
转载
2024-09-18 10:56:40
121阅读
使用推流OBS工具进行直播推流操作时,默认的推流关键帧间隔是10秒,而客户端在播放时,通常需要3个关键帧的数据才会开始播放,为了实现更低的延迟,您需要在推流时将关键帧的间隔设置的小一些,您可以逐步调整这些设置,以找到适合您网络条件的最佳配置,建议您将关键帧间隔设置为2-3秒。上图:图 / OBS关键帧间隔设置
如今很多站长都会租用大带宽低延迟的国外服务器,这主要是因为国外服务器所在机房距离我国较远,多少都会影响网站的访问速度,所以租用国外大带宽低延迟服务器可以有效改善国内访问速度慢的问题。目前提供国外大带宽低延迟服务器的主机商有很多,不过很多朋友在选择时无从下手,毕竟也不知道究竟哪家比较好。为此本文就简单给大家推荐业内口碑较好的天下数据美国服务器,算是性能比较好的国外大带宽低延迟服务器了,这里就从以下四
注:这里用的是hls 延迟有10秒左右,所以慎重一、安装RTMP给nginx安装第三方模块nginx-rtmp-modulehttps://github.com/arut/nginx-rtmp-module.git 1、进入nginx的目录cd /nginx目录2、加入第三方包nginx-rtmp-module./configure --add-module=nginx-rtmp-mod
转载
2024-05-27 15:26:53
786阅读
人总是需要压力才能进步, 最近有个项目, 需要我在RK3568上, 推流到公网, 最大程度的降低延迟. 废话不多说, 先直接看效果: 数据经过WiFi发送到Inenter的SRS服务器, 再通过网页拉流的.因为是打金任务, 所以逼了自己一把, 把RTMP推流好好捋一遍. 先说说任务目标, 首先是MPP编码, 把mpp的github库下载下来, 研究mpi_enc_test这个例程, 基本就能实现,
VHOST(虚拟主机)就是一址多域的意思,主流的Web服务器都有这个功能,它解决了运行Web的主机在同一个IP地址情况下可以为不同域名的请求提供服务的问题。假设有两个域名A和B,在DNS上A和B都指向同一个A记录(IPv4)或者AAAA记录(IPv6),Web服务器通过不同的域名信息解析到不同的配置,从而为A和B提供不同的服务。Nginx根据请求的信息(端口,IP地址和域名)匹配到对应的配置的大概
转载
2024-08-18 13:17:50
72阅读
前言最近复习了下直播低延迟技术方案,顺便把自己方案完善了一下作为记录.低延时效果截图如下:ps:左侧为相机采集画面.右侧为拉流端公网拉取画面,延迟为172ms(由于第三相机拍摄照片故延迟计算为包含采集延时)ps:推拉流两端视频截图,由于是桌面截图,故延迟不包含设备采集延时,延迟为132ms,后续会放出测试程序,供大家进行实测对比手术示教及手术指导直播低延迟方案是我在17年 18年在上一家公司医疗直
转载
2024-07-05 20:39:36
287阅读
# Python RTMP 低延迟推流技术概述
在当今的网络视频直播中,低延迟推流技术正变得越来越重要。RTMP(Real-Time Messaging Protocol)是一个用于音频、视频和数据传输的协议,广泛应用于直播流媒体的传输。本文将介绍如何利用Python实现低延迟的RTMP推流,并通过具体代码示例帮助理解。
## 什么是RTMP?
RTMP协议最早由Adobe开发,目的是为了在
在直播应用中,RTMP 和 HLS 是两种较为成熟且广泛应用的流媒体协议,基本上可以覆盖所有客户端。RTMP 是互联网 TCP/IP 五层体系结构中应用层的协议,主要优势就是实时性高,基本可将直播延时控制在3秒以内,因此广泛应用于低延时直播。HLS是由 Apple 公司实现的基于 HTTP 的流媒体传输协议,拥有性能高、完美支持 iOS等优势。相比于 RTMP 协议,HLS 无需在移动端安装 AP
接入层通常指请求的入口,该层的主要目的有:负载均衡、非法请求过滤、请求聚合、缓存、降级、限流、A/B测试、服务器质量监控等等。 根据具体业务场景