Возможно ли, чтобы два процесса могли одновременно обращаться к веб-камере?

8

Я хотел бы попробовать использовать Cheese в Google+ Hangouts и аналогичные конфигурации, и я хотел бы узнать, возможно ли, чтобы веб-камера использовалась двумя процессами для одновременного доступа к веб-камере. Я еще не пробовал, но прежде чем это сделать, я решил, что спрошу.

Итак, возможно ли это?

    
задан RolandiXor 19.07.2012 в 23:46
источник

3 ответа

5

Хорошо, я просто попробовал. Интересные результаты.

У меня есть игрушки для скайпа и сыра и веб-камеры и тусовки (которые все работают) и попробовали их вместе.

Результаты:

Вы не можете использовать одну и ту же веб-камеру на двух вещах одновременно.

Сыр (рабочая) + Игрушка для веб-камеры (не работает) + Skype (малая, вверху справа. Не работает).

Тем не менее, вы можете использовать 2 веб-камеры. (Cheese + Webcam Toy).

Hangouts (не работает) + сыр (рабочий)

Hangouts (работа над его собственным).

Сыр сломался, когда я впервые открыл Hangouts. Он сделал то же самое с другими, но мой интернет слишком медленный, чтобы загружать каждый скриншот (и я сомневаюсь, что вы оцените более 30 скриншотов) ...

Я даже попытался сделать символическую ссылку на /dev/video0 и сохранить ее в /dev как video2 . Это не сработало.

Я также не могу запускать сразу 2 процесса сыра.

Изображение моего сада, чтобы поднять настроение, так как ответ отрицательный. На данный момент очень круто: я могу качаться (на качелях) и прыгать и садиться в детский бассейн. Взятый с сыром.

Если бы вам пришлось, я бы посоветовал сделать его полноэкранным и сделать 2 записи экрана. Я сомневаюсь, что это будет работать для того, чего вы хотите.

    
ответ дан Tim 06.08.2014 в 20:35
источник
7

К счастью, теперь YES!

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

Проект называется v4l2loopback . (Проверьте ссылку и прокрутите вниз, чтобы просмотреть инструкции README.)

Вы можете установить v4l2loopback , клонировав его GitHub и выполнив следующие команды:

$ git clone https://github.com/umlaeute/v4l2loopback.git
$ cd v4l2loopback
$ make
$ sudo make install

Примеры

Для образцов о том, как использовать его с GStreamer, FFmpeg, MPlayer и Skype, проверьте их небольшую wiki . Надеюсь, вы сможете найти правильные настройки в соответствии с вашими потребностями.

Наслаждайтесь настройкой!

    
ответ дан The Eye 11.08.2014 в 10:29
2

Ответ - нет, может быть ... Библиотека «Video 4 Linux» определяет, используется ли устройство и не будет инициировано. Однако; если вы хотите загрузить libv4l-dev и отредактировать его вручную, вы можете отредактировать код, чтобы избавиться от этой проверки, а затем просто перекомпилируйте ее. Я думаю, вы могли бы заставить это работать, но это было бы крайне нестабильно. Может быть, стоит проверить, хотя.

TLDR: все возможно, если вы программист с некоторой смазкой для локтя. Не хотите зайти так далеко? Тогда нет; его невозможно.

    
ответ дан Akiva 06.08.2014 в 20:58