ffmpeg, обрабатывающий потоковую передачу экрана в реальном времени, имеет высокую задержку - PullRequest
0 голосов
/ 27 февраля 2020

Я пытаюсь сделать общий доступ к экрану с помощью ffmpeg, используя следующую команду:

ffmpeg -f avfoundation -i "1:1" -c:v libx264 -threads 4 -preset ultrafast -c:a aac -ar 44100 -f flv rtmp://localhost/live/test

Теперь у меня есть сервер rtmp, который получает данные и использует flv. js, я Показываю прямую трансляцию видео в браузере. Интеграция работает отлично, но проблема в том, что поток очень сильно задерживается. Существует задержка, скажем, по крайней мере 10 секунд; Я не уверен, можем ли мы сделать это меньше задержки (больше похоже на мгновенный обмен экранами).

Примечание: я использую Node RTMP-сервер, используя https://github.com/illuspas/Node-Media-Server. Код для этого здесь:

const NodeMediaServer = require('node-media-server');

const config = {
  rtmp: {
    port: 1935,
    chunk_size: 6000,
    gop_cache: true,
    ping: 30,
    ping_timeout: 60
  },
  http: {
    port: 8000,
    allow_origin: '*'
  }
};

var nms = new NodeMediaServer(config)
nms.run();

Есть предложения? Я на MacOS

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...