У меня есть камера MEVO, которую я использую для потоковой передачи видео в OBS через мой сервер debian nginx rtmp. У меня также есть веб-камера USB, подключенная непосредственно к моему ПК с OBS, и я транслирую видео со своего смартфона в OBS через тот же сервер nginx rtmp и приложение под названием Larix Broadcaster. Загрузка процессора ПК OBS: 15%; Сервер nginx rtmp: 2%.
MEVO > nginx-rtmp > OBS
USB webcam > OBS
Smartphone (Larix) > nginx-rtmp > OBS
Это работает, но потоки не синхронизируются друг с другом. Между MEVO и OBS существует задержка около 2-5 секунд (а также разница между задержками между Larix и OBS). Веб-камера работает мгновенно. Я не возражаю против двухсекундной задержки - я могу установить ручную асинхронную задержку в OBS на веб-камере, чтобы синхронизировать ее с MEVO. Проблема в том, что задержка непостоянна. Каждый раз, когда я начинаю транслировать MEVO, он меняется!
Затем, когда мне, наконец, удается синхронизировать потоки (удачный выстрел), также во время потоковой передачи они входят и не синхронизируются (дрожание). Только в диапазоне 100-200 мс, но достаточно, чтобы быть заметным.
Глядя на MEVO, я считаю, что он поддерживает только RTMP. Так что переход на другой протокол для меня не сработает.
Что могло быть причиной дрожания и изменения задержки? Может быть, сеть? Оба MEVO и OBS находятся в быстрой проводной сети со скоростью 1 Гбит / с.
Я попытался установить сетевую буферизацию в OBS на 1 МБ, 2 МБ или что-то еще, но это не помогло. Я также пытался изменить buflen в nginx.conf, но безуспешно.
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.
Любые идеи?