Пробовал сначала подключить камеру к BlackSwift, ничего не заработало. Делал я это прямо перед отбытием в отпуск, поэтому особо не было времени на разбирательства. Сейчас время пришло, и я задумался, что же может быть не так. К сожалению, в BlackSwift всё было уже настроено (при этом не работало), так что я взял простой OpenWRT на моём роутере и начал с нуля.
После установки драйверов, я заметил сообщение в dmesg:
[810639.630000] uvcvideo: UVC non compliance - GET_DEF(PROBE) not supported. Enabling workaround.
Эта ошибка исчезла после того, как я сделал
insmod /lib/modules/3.18.20/uvcvideo.ko quirks=0x100
Теперь оно пишет в лог:
[812248.000000] uvcvideo: Forcing device quirks to 0x100 by module parameter for testing purpose.
Чтобы это работало на постоянной основе, я добавил в /etc/init.d/mjpg-streamer
start_service() { rmmod uvcvideo insmod /lib/modules/3.18.20/uvcvideo.ko quirks=0x100
А куда деваться, если modprobe нет? Ну, во всяком случае я ничего лучше не придумал.
Первая проблема решилась, но изображения всё равно не появилось. Стал разбираться дальше. Оказывается, ничего всё ещё не работало. Постепенно всё заработало, когда я добавил
option yuv '1' option fps '6' option quality '99'
Моей веб-камере обязательно надо option yuv '1', а вот остальные параметры пришлось подбирать. Как только переставало работать, я немного уменьшал параметр. Оказалось, что вот так всё отлично работает с моей самой дешёвой веб-камерой. Какие-то 300-350 рублей, и Диане будет видно цветы. Ну, в общих чертах — качество отвратное. Наверное, стоит купить камеру рублей за 1000.
Это ночью. Днём нормально видно, но в красно-синем свете тоже не очень выглядит.