前言:各直播技术延时分析
目录
RTSP传输延时分析
0.成像延迟:
一般的技术是毫无为力的,涉及到 CCD 相关的硬件,现在市面上最好的 CCD,一秒钟 50 帧,成像延迟也在 20 毫秒左右,一般的 CCD 只有 20 ~ 25 帧左右,成像延迟 40 ~ 50 毫秒
实测RK3568平台,自带相机+hdmi输入图像,成像+渲染合计172ms延时
1.转换图像数据耗时.
实测在RK3568平台转换一帧1080P的视频数据,从image转换到nv12数据需要耗时20ms(java)/帧
优化:改为(native)方式转换,耗时降低至12ms/帧
2.编码延时
实测在RK3568平台,将nv12数据编码成H264.h265耗时。编码用同步方式编码估算为43帧/s,约等于23ms/帧。
优化:改为异步编码可提升到100帧/S
以下是编码延时测算。
3.网络传输延时
局域网内很低,在50ms以内(deepseek)
4.协议栈缓冲(deepseek):
RTSP over UDP:更低延迟(但易受丢包影响)。
RTSP over TCP:默认缓冲可能引入 200ms~500ms(如VLC的默认设置)
优化:
4.1在播放器可以设置为UDP播放
4.2使用ffmpeg可以设置为udp无缓存低延时拉流播放
ffplay -rtsp_transport udp -fflags nobuffer -flags low_delay -i rtsp://192.168.30.236:8554/1
5.服务器处理(deepseek):
轻量级服务(如rtsp-simple-server):可控制在 50ms~200ms。
6.客户端缓冲:
默认缓冲可能导致 300ms~1秒 额外延迟,可通过调整参数减少
优化:可以通过设置客户端缓冲