Я пытаюсь транслировать свое полноэкранное приложение в реальном времени и просматривать его с другого компьютера в той же сети.

Я использую эту команду для запуска потоковой передачи, она работает хорошо, и я могу видеть прямую трансляцию с задержкой в 2/3 секунды:

ffmpeg -video_size 1920x1080 -r 10 -f x11grab -i :0.0 -f mpegts -b:v 4096k udp://othermachineaddress:8554

Но когда я пытаюсь воспроизвести видео, иногда я вижу некоторые графические артефакты с фоном рабочего стола (часть его) потоковой машины (в которой мое приложение работает в полноэкранном режиме), вы не можете видеть фон рабочего стола в реальном времени. машина).

Я предполагаю, что это не проблема, связанная с потоком UDP, но с захватом экрана (нет другого графического артефакта, такого как зеленый экран, который предлагает потерю пакета). Во время потоковой передачи загрузка ЦП и ОЗУ минимальна.

Я использую Ubuntu 16.04 на обеих машинах.

Есть какие-то флаги, которые я могу попытаться разрешить "фоновый артефакт рабочего стола"?

1 ответ1

0

Эта проблема, кажется, вызвана корицей на потоковой машине. Та же проблема здесь

Два возможных решения, оба работают для меня:

  1. Изменить DE. Я пробовал и Gnome3, и Unity, потоковая передача работает нормально.
  2. Отключить в настройках Nvidia опцию "Разрешить переключение". Это позволяет мне решить проблему с корицей. пример

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .