В линуксе программа Webcamoid является отдалённым аналогом программы Splitcam для Windows. Но эта программа работает не очень стабильно. Например, в убунту 18.04 не получилось её запустить. Более оптимальным является использование программы ffmpeg. Для эмулирования вебкамеры в линуксе необходимо установить v4l2loopback:
# git clone https://github.com/umlaeute/v4l2loopback.git # cd v4l2loopback # make && make install # depmod -a # modprobe v4l2loopback
Проверяем какие камеры есть в системе.
# ls /dev/video*
Запускаем трансляцию рабочего стола на виртуальную камеру:
$ ffmpeg -f x11grab -r 15 -s 1280x720 -i :0.0+0,0 -vcodec rawvideo -pix_fmt yuv420p -threads 0 -f v4l2 /dev/video2
Где: 1280×720 — разрешение экрана; 0.0+0,0 — отступ от края экрана, актуально когда 2 монитора или когда нужно захватить часть экрана; /dev/video2 — виртуальная камера, номер должен отличаться от существующих в системе реальных вебкамер.
Проверить трансляцию можно с помощью mplayer:
$ mplayer tv:// -tv device=/dev/video2
Для трансляции файла используем команду:
$ ffmpeg -re -i video.mp4 -threads 0 -f v4l2 /dev/video2