4

Я пытаюсь заставить VLC показывать мою веб-камеру в реальном времени:

vlc -I dummy v4l2:///dev/video0

по большей части делает трюк, за исключением того, что между действием (скажем, я поворачиваю голову) есть почти вторая задержка и просмотр его в окне видео. Есть ли способ уменьшить отставание или другое программное обеспечение, которое я могу использовать (Gentoo Linux)?

4 ответа4

2

Причудливо я пытаюсь решить эту же проблему, и я нашел небольшой успех. Я использую HP HD 3110. Они их в лучшем случае покупают примерно за 20 баксов. Во всяком случае, я пытался использовать его с VLC и сторонним программным обеспечением, и у меня была задержка около 300 мс, и то, что я делаю, это почти неприемлемо.

Яркость помогла, и установка экспозиции на очень низкое значение, по-видимому, помогла, но она может просто повысить частоту кадров, которая не обязательно совпадает с уменьшением задержки. В конечном итоге лучшая производительность была достигнута благодаря использованию программного обеспечения, поставляемого с веб-камерой.

Задержка составляет около 100 мс или ниже, что ниже того, что люди обычно обнаруживают без усилий. У меня нет хорошего объяснения этому. Вполне возможно, что VLC и другое программное обеспечение, которое я использовал, немного буферизировали изображения, или программное обеспечение, поставляемое с устройством, может получать доступ к скрытым параметрам веб-камеры.

Главная проблема - ваша система, но, насколько я знаю, вы можете заставить ее работать. Во-вторых, программное обеспечение, поставляемое с камерой, не позволит его легко включить в другие программы.

2

Это, скорее всего, просто ограничение веб-камеры. Как и в ранних камерах для мобильных телефонов (у более новых, вероятно, меньше проблем), веб-камеры обычно имеют более низкую частоту кадров и имеют более медленные датчики освещения, а также занимают больше времени для обработки захваченных видеокадров. Это приводит к задержке между реальным временем и отображаемым видео. Наличие USB-соединения между камерой и ПК также увеличивает задержку.

Что вы можете попробовать сделать (помимо обновления до лучшей веб-камеры) - улучшить условия освещения. Цифровым камерам, как правило, требуется больше времени для захвата изображения в условиях низкой освещенности, потому что требуется больше времени для захвата необходимого количества света для получения достойного изображения (что-то вроде замедления скорости затвора в аналоговой камере). Использование камеры FireWire также может немного ускорить процесс.

1

Большинство камер имеют некоторые параметры, для регулировки уровня яркости и т.д.

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

0

Если этот вопрос по-прежнему актуален для кого-то, есть настройка, видимая, когда All включено в настройках - см. /Stream output/Sout stream/Display для Delay (ms) . Это значение равно 100 (мс) по умолчанию и должно учитываться, а также значения буфера при ретрансляции / потоковой передаче / транскодировании видео.

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

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .