Перенаправити реальну веб-камеру на віртуальну веб-камеру через термінал


15

Чи є спосіб перенаправити реальну веб-камеру на віртуальну веб-камеру з командного рядка, наприклад, використовуючи v4l2loopbackмодуль з ffmpeg?

Деталі

У мене є стара веб-камера, яка працює з більшістю програмного забезпечення (vlc, сир тощо), але не з іншими (Skype).

Можливе рішення, щоб змусити його працювати з таким програмним забезпеченням, - це перенаправити його на віртуальну веб-камеру за допомогою v4l2loopbackмодуля, як це робиться Webcamoid , але мені це потрібно зробити з командного рядка, наприклад через ffmpeg.

Я впевнений, що це можливо і через ffmpeg, але оскільки справжні веб-камери рідко переспрямовуються на віртуальні, я не знайшов прикладів в Інтернеті (єдині приклади, які я знайшов, як-от цей , перехоплення екрана захоплює або наявне відео замість віртуальної веб-камери) .



1
@LordNeckbeard Відповіді мають щось спільне, але питання дуже різні. Ця ОП просить надіслати попередньо записане відео ( input.mp4) на існуючий фізичний пристрій, і відповідач пропонує замість цього використовувати v4l2loopback. Тут мова йде про відправку живого реального веб - камери для віртуального веб - камери, так як це може зробити веб - камеру побічно більш сумісні з деякими додатками (наприклад , Skype), які не визнають його інакше. Насправді, відповідь на це питання пропонує використовувати щось подібне, ffmpeg -i input.mp4а це не те, що я шукав тут.
Kubuntuer82

1
@LordNeckbeard і ця відповідь також показує, як захопити робочий стіл, який не тільки не був тим, що я шукав тут, але він також дуже схожий на цю посаду, про яку я вже згадував у своєму запитанні. Я шукав щось інше, тобто перенаправляти іншу веб-камеру замість робочого столу чи файлу (як я також говорю в запитанні). Я розумію, що рішення базуються на одному і тому ж програмному забезпеченні, але оскільки питання дуже різні, я думаю, що все-таки добре поділитися цим людьми, які борються з цією конкретною проблемою.
Kubuntuer82

Відповіді:


19

Виходячи з цієї відповіді (вже згадуваної у запитанні), я думаю, що я знайшов рішення сам, і це працює зі Skype!

Припустимо, справжня веб-камера є /dev/video0. Коли ти біжиш

modprobe v4l2loopback

модуль створює другу (віртуальну) веб-камеру, наприклад в /dev/video1. На цьому етапі достатньо виконати:

ffmpeg -i /dev/video0 -vcodec rawvideo -pix_fmt yuv420p -threads 0 -f v4l2 /dev/video1

а нова віртуальна веб-камера готова до використання та вибору також і через Skype.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.