Mat*_*ick 5 ubuntu nginx rtmp video-streaming live-streaming
我正试图在本地将电视捕获从一台计算机传输到另一台计算机,但我的延迟高于我想要的.
我的设置是12GB,i5 x4 3.2ghz,Geforce 970,带有Elgato HD60 Pro采集卡.该机器正在运行安装了Nginx + RTMP(https://github.com/arut/nginx-rtmp-module)的Ubuntu实例.
它配备了捕获/流媒体软件,允许您调整带宽+分辨率.它设置为流式传输到本地RTMP rtmp://192.168.1.200/capture.
在我的接收机器上,我尝试过使用VLC(开放式网络)和FFPLAY(ffplay -fflags nobuffer rtmp://192.168.1.200/capture -loglevel verbose).
FFPLAY的延迟比VLC低,考虑到nobuffer标志似乎是有意义的.然而,在我看到正确的更新之前,它仍然是大约2-3秒.
我想这意味着Elgato和RTMP服务器之间或者RTMP服务器和我的ffplay流之间存在瓶颈.
我试过的事情:
注意:我的RTMP NGINX配置中没有特殊选项.这是一个标准live on,而且几乎就是这样.
诊断问题的最佳方法是什么?我想得到它<1s.
谢谢!
小智 0
我认为在你的情况下瓶颈是视频处理。通常,软件视频编码不是那么快。如果你降低视频质量、比特率等,你就会增加更多的处理,只会增加延迟。如果您需要将视频发送到距离源不太远的地方,只需使用 HDMI 等视频接口即可。它将按原样传递视频(无需处理)。如果您确实对网络流式传输感兴趣,请考虑使用特殊的硬件编码器设备,例如 PCI 或外部设备。这些设备具有嵌入式硬件视频编码器,不使用 CPU 进行视频处理。通常使用硬件编码器延迟小于 1 秒,但这仍然是正确的说法:“更多视频处理 = 更多延迟”
| 归档时间: |
|
| 查看次数: |
225 次 |
| 最近记录: |