【发布时间】:2020-07-16 02:04:11
【问题描述】:
我有一个 MEVO 摄像头,用于通过我的 debian nginx rtmp 服务器将视频流式传输到 OBS。我还有一个 USB 网络摄像头直接连接到我的运行 OBS 的 PC,我通过同一个 nginx rtmp 服务器和一个名为 Larix Broadcaster 的应用程序将视频从我的智能手机流式传输到 OBS。 OBS PC的CPU使用率:15%; nginx rtmp 服务器:2%。
MEVO > nginx-rtmp > OBS
USB webcam > OBS
Smartphone (Larix) > nginx-rtmp > OBS
这可行,但流彼此不同步。 MEVO 和 OBS 之间有大约 2-5 秒的延迟(Larix 和 OBS 之间也有不同的延迟)。网络摄像头是即时的。我不介意 2 秒的延迟 - 我可以在网络摄像头的 OBS 中设置手动异步延迟,以将其与 MEVO 同步。问题是延迟不一致。每次我开始播放 MEVO 时,它都会发生变化!
然后,当我最终设法同步流时(幸运的镜头),同时流时它们会进出同步(抖动)。仅在 100-200ms 范围内,但足以可见。
看看MEVO,我相信它只支持RTMP。所以转移到另一个协议对我不起作用。
抖动和延迟变化的原因可能是什么?会不会是网络? MEVO 和 OBS 都在一个快速的 1Gbps 有线网络上。
我尝试将 OBS 中的网络缓冲设置为 1MB、2MB 或其他大小,但无济于事。我也尝试过在 nginx.conf 中更改 buflen,但无济于事。
nginx.conf:
worker_processes 1;
events {
worker_connections 1024;
}
rtmp {
server {
listen 1935;
chunk_size 4096;
buflen 1000ms;
application live {
live on;
record off;
max_connections 20;
}
}
}
- 我正在将 MEVO 流式传输到 rtmp://10.0.0.1/live/mevo(mevo 是 流密钥)
- 我正在将 Larix 流式传输到 rtmp://10.0.0.1/live/larix(larix 是 流密钥)
请帮我解决 OBS 中的抖动和变化延迟问题!谢谢。
更新,因为我正在尝试修复不断变化的启动滞后:
- 我尝试将 chunk_size 设置为 2048,但这没有帮助。
- 当我添加时:wait_key on;我从来没有让直播在 OBS 中显示。
有什么想法吗?
【问题讨论】:
标签: nginx video-streaming rtmp obs