Как читать веб-камеру, которая уже используется фоном?

В фоновом режиме выполняется захват веб-камеры ffmpeg .

 ffmpeg -f video4linux2 -s vga -i /dev/video0 capture.mp4 (1) 

Поэтому я не могу прочитать его с помощью ffplay поскольку используется устройство /dev/video0 :

  • Пределы дескриптора файла в / etc / system vs /etc/sysctl.conf vs /etc/security/limits.conf в Solaris
  • Ограничения на количество файловых дескрипторов
  • FFMPEG - Интерполировать рамки или добавить размытие изображения
  • ошибка при компиляции ffmpeg: gcc не может создать исполняемый файл
  • Есть ли какой-либо удаленный GUI для ffmpeg?
  • Flock, похоже, не работает
  •  ffplay -f video4linux2 -s vga -i /dev/video0 (2) [...] /dev/video0: Device or resource busy 

    Как читать веб-камеру с ffplay без остановки фонового захвата?

    PS: Команда фонового захвата не должна изменяться. Я знаю, что это можно сделать, изменив команду (1) на fifo.

  • Буферизация (называемая) в GNU OS
  • Flock, похоже, не работает
  • Потоковая передача FFServer H.264 от Logitech C920
  • ffmpeg и libvpx: ошибка при загрузке разделяемых библиотек
  • Rsync над пользовательской оболочкой с fifo
  • Возможно ли получить оригинальное (лучшее) качество звука при использовании avconv?
  • One Solution collect form web for “Как читать веб-камеру, которая уже используется фоном?”

    Сделай это:

     sudo modprobe v4l2loopback devices=1 

    Если вы получите аналогичную ошибку, например modprobe: FATAL: Module v4l2loopback not found in directory /lib/modules/4.6.0-kali1-amd64 , сначала установите v4l2loopback-dkms, например:

     sudo apt-get install v4l2loopback-dkms 

    Теперь запустите его сначала (обратите внимание, что он не может работать как фоновый процесс путем трейлинга & ):

     ffmpeg -f video4linux2 -i /dev/video0 -codec copy -f v4l2 /dev/video1 

    Не останавливая процесс выше, в других сеансах bash, вы должны выполнить две команды: ffmpeg -f video4linux2 -s vga -i /dev/video1 capture.mp4 и ffplay -f video4linux2 -s vga -i /dev/video1 (одновременно изменить его на / dev / video1).

    Если вы установите значение 2 :

     sudo modprobe v4l2loopback devices=2 

    Затем вы можете сделать ffmpeg -f video4linux2 -i /dev/video0 -codec copy -f v4l2 /dev/video1 -codec copy -f v4l2 /dev/video2 , которые позволяют использовать оба / dev / video1 и / dev / video2 в то же время.

    Linux и Unix - лучшая ОС в мире.