srt推拉流延时性能测试

本文涉及的产品
性能测试 PTS,5000VUM额度
简介: srt推拉流延时性能测试

先说下环境:

编码器速度设置最快,编码延时设置最低。

av_opt_set(pCodecCtx->priv_data, “preset”, “ultrafast”, 0);
av_opt_set(pCodecCtx->priv_data, “tune”, “zerolatency”, 0);


视频编码比特率为8M

计算机为15年的老机,现在性能很拉跨,四核Intel® Core™ i5-4460 CPU @ 3.20GHz处理器。用top命令实时观看cpu使用情况id。


推流到本机运行的两个接口的srt流媒体服务器:srt-live-transmit

用ffmpeg命令推流 560ms id49 保持25帧

用代码推流 500ms id50


推流到srt并发流媒体srt-live-server服务器上:

ffmpeg命令推到本机 570ms id55 稳定25帧

代码推到本机 620ms id56

ffmpeg命令推到阿里云上700ms 稳定25帧 id72

代码 推到阿里云770ms id69

命令 推到局域网150 760ms

以上拉流均使用ffplay,延时是在加这两个参数基础上测得,如果不加,延时会非常大,会在5s左右。

ffplay -fflags nobuffer -analyzeduration 1000000 -f mpegts srt://192.168.100.150:9090?streamid=live.deviser.com.cn/live/aaa


延迟非常小,srt是建立在udp之上,这个测试结果很接近udp直接推流,推流相同的视频,相同的计算机性能,相对于nginx+rtmp的2s左右,srs+rtmp的1.6s左右,srt在600ms毫秒,如果只注重延时,srt协议是个很好的选择。

实测使用vlc拉mpegs格式的srt流,无法播放。

实测udp推流时,vlc拉流无法播放。


搭建srs+rtmp的流媒体服务器,另一篇博客:srs搭建rtmp流媒体服务器

编译带h264编码和aac编码的ffmpeg库,另一篇文章:libfdk-aac和x264安装编译


用udp推流延时测试,见:rtmp改udp推流,并测试延时性能

srt流媒体搭建:srt流媒体搭建

ffmpeg编译配置srt模块:ffmpeg编译配置srt模块



相关实践学习
通过性能测试PTS对云服务器ECS进行规格选择与性能压测
本文为您介绍如何利用性能测试PTS对云服务器ECS进行规格选择与性能压测。
相关文章
|
7月前
|
开发工具 Android开发 开发者
Android平台如何不推RTMP|不发布RTSP流|不实时录像|不回传GB28181数据时实时快照?
本文介绍了一种在Android平台上实现实时截图快照的方法,尤其适用于无需依赖系统接口的情况,如在RTMP推送、RTSP服务或GB28181设备接入等场景下进行截图。通过底层模块(libSmartPublisher.so)实现了截图功能,封装了`SnapShotImpl.java`类来管理截图流程。此外,提供了关键代码片段展示初始化SDK实例、执行截图、以及在Activity销毁时释放资源的过程。此方案还考虑到了快照数据的灵活处理需求,符合GB/T28181-2022的技术规范。对于寻求更灵活快照机制的开发者来说,这是一个值得参考的设计思路。
117 1
|
6月前
|
XML 编解码 开发工具
多路RTSP转RTMP推送方案的两个选择
RTSP转RTMP模块设计,可以用ffmpeg直接命令行转发,也可以用方案二的非常成熟的转发设计,ffmpeg转发,需要有一定的代码基础,有问题的话,bug修复需要对底层逻辑非常了解才行,方案二,技术成熟,二次开发难度不大,很容易集成到自己现有系统
115 2
|
7月前
|
编解码 开发工具 Android开发
iOS平台如何实现毫秒级延迟的RTMP|RTSP播放器
在我的blog里面,最近很少有提到iOS平台RTMP推送|轻量级RTSP服务和RTMP|RTSP直播播放模块,实际上,我们在2016年就发布了iOS平台直播推拉流、转发模块,只是因为传统行业,对iOS的需求比较少,所以一直没单独说明,本文主要介绍下,如何在iOS平台播放RTMP或RTSP流。
136 6
|
7月前
|
编解码 网络协议 开发工具
Android平台如何实现多路低延迟RTSP|RTMP播放?
本文档详细介绍了大牛直播SDK在Android平台上实现RTSP与RTMP流媒体播放及录像功能的技术细节。早在2015年,SDK的第一版就已经支持了多实例播放,并且通过简单的实例封装就能轻松实现。文档中提供了代码示例,展示了如何开启播放、停止播放以及开始和停止录像等功能。此外,SDK还提供了丰富的配置选项,例如设置录像目录、文件大小限制、转码选项等。总结部分列出了该SDK的关键特性,包括但不限于高稳定性和低延迟的播放能力、多实例支持、事件回调、硬解码支持、网络状态监控以及复杂的网络环境处理等。这些功能使得SDK能够应对各种应用场景,特别是在对延迟和稳定性有极高要求的情况下表现优异。
141 5
|
7月前
|
存储 编解码 开发工具
拉取RTSP流后的几个去向探讨(播放|转RTMP|轻量级RTSP服务|本地录制|GB28181)
本文汇总了大牛直播SDK在Android平台上拉取RTSP流后的多种应用方向,包括本地播放、转推至RTMP服务器、轻量级RTSP服务、GB28181平台及录像等功能。提供了详细的实现方法与示例代码,旨在帮助开发者高效利用RTSP流数据,实现低延迟、稳定且灵活的应用场景。
176 1
|
7月前
|
监控 开发工具 数据安全/隐私保护
Windows平台如何实现多路RTSP|RTMP流合成后录像或转发RTMP服务
本文介绍了在Windows平台上实现多路RTSP/RTMP视频流的合并技术。主要应用场景包括驾考、全景摄像头以及多路会议录制等。技术实现上,文章详细展示了如何使用特定的SDK来解码并回调YUV或RGB数据,再将这些数据按照图层形式进行合成。示例代码中给出了初始化参数、设置视频帧回调函数、以及如何配置不同图层的具体步骤。最终,合成后的视频可以推送到RTMP服务器、注入到本地RTSP服务,或是直接录制为MP4文件。此外,还提供了添加实时文字水印的方法,并展示了四路视频流合成后的“四宫格”效果。
219 0
|
10月前
|
Web App开发 移动开发 前端开发
web端实现rtsp实时推流视频播放可行性方案
总之,要在Web端实现RTSP实时推流视频播放,需要使用适当的前端技术(如HTML5 Video或WebRTC),以及媒体服务器或流转换器来处理RTSP流。这需要一些开发和配置工作,但是可以实现实时视频流的播放。具体的实现方案可能会根据您的需求和技术栈而有所不同,所以需要仔细评估和选择适合您的解决方案。
918 0
|
存储 编解码 缓存
海康摄像头开发笔记(一):连接防爆摄像头、配置摄像头网段、设置rtsp码流、播放rtsp流、获取rtsp流、调优rtsp流播放延迟以及录像存储
Hik防爆摄像头录像,因为防爆摄像头会有对应的APP软件,与普通的网络摄像头和球机不一样,默认认为它不可以通过web网页配置,所以弄了个来实测确认。经测试实际上也是可以通过web网页配置(与网络摄像头基本是一致的,在码流方面可能会有些不一样),然后提取rtsp流的,界面与球机无异,只是没有球机的云台控制功能,但是界面上也是有的。
海康摄像头开发笔记(一):连接防爆摄像头、配置摄像头网段、设置rtsp码流、播放rtsp流、获取rtsp流、调优rtsp流播放延迟以及录像存储
|
网络协议
rtmp改udp推流,并测试延时性能
rtmp改udp推流,并测试延时性能
329 0
rtmp改udp推流,并测试延时性能
|
存储 编解码 监控
跨平台低延迟RTSP转RTMP推送技术方案探讨
实现RTSP摄像头数据转RTMP推送到服务器,可以用第三方库或者工具实现,总体设计架构如下:
387 0