如何解决如何减少基于图像的实时流的延迟?
我需要对实时图像进行编码和流式传输,但是总是有大约3s的延迟,如何减少延迟呢?
实时流是通过以下命令生成的
ffmpeg -analyzeduration 0 -probesize 32 -i h264_rtsp_url \
-vf fps=1 -fflags nobuffer -fflags flush_packets -f mjpeg - \
| ffmpeg -r 1 -f image2pipe -analyzeduration 0 -probesize 32 -i - \
-c:v libx264 -pix_fmt yuv420p -tune zerolatency \
-force_key_frames "expr:gte(t,n_forced*1)" \
-flags low_delay -fflags nobuffer -fflags flush_packets \
-profile:v main -preset medium -r 15 \
-f rtp_mpegts rtp://127.0.0.1:4001
将预设从medium
更改为ultrafast
不会影响结果,但延迟仍为3s。
我正在使用mpv
播放视频流,
图片编码的流:
mpv --profile='low-latency' \
--untimed --no-cache --no-demuxer-thread --vd-lavc-threads=1 \
rtp://127.0.0.1:4001
原始流:
mpv --profile='low-latency' \
--untimed --no-cache --no-demuxer-thread --vd-lavc-threads=1 \
h264_rtsp_url
[1] https://trac.ffmpeg.org/wiki/StreamingGuide
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。