Приветствую. Суть задачи - нужно прокидывать видео в виртуальную веб-камеру в питоновском проекте.
До рабочего
ручного механизма запуска я дошел самостоятельно:
1) Установим пакет
sudo apt install v4l2loopback
и добавляем виртуальную камеру
sudo modprobe v4l2loopback exclusive_caps=1 max_width=4096 max_height=4096 video_nr=74 max_buffers=2 card_label="Virtual Camera"
2) активируем камеру из файла видео
ffmpeg -re -i "video.mkv" -map 0:v -f v4l2 /dev/video74
второй вкладкой - проверить трансляцию
ffplay /dev/video74
в результате - видео передается в виртуальную камеру
Но чтобы такое воспроизвести с помощью кода на питоне, мешают некоторые моменты:
1) pip не "знает" пакет v4l2loopback:
pip install v4l2loopback
ERROR: Could not find a version that satisfies the requirement v4l2loopback (from versions: none)
ERROR: No matching distribution found for v4l2loopback
в результате чего нет возможности установить этот пакет через зависимость. проект не личный, нужен функционал установки пакета через зависимость
также pip знаком с некоторыми смежными пакетами (например, pyv4l2), но этого не хватает для полноценной работы нужного функционала
2) даже если пакет удастся установить через зависимость, непонятно, как выполнять команду с sudo
sudo modprobe v4l2loopback exclusive_caps=1 max_width=4096 max_height=4096 video_nr=74 max_buffers=2 card_label="Virtual Camera"
Задача решается с целью применения в автотесте.
Можно ли как-то обойти эти 2 проблемы?