Ip камера на роутере openwrt

Время на прочтение
8 мин

Количество просмотров 61K

Тема видеонаблюдения встала для меня остро с появлением загородного жилья. На просторах интернета можно найти кучу информации по организации видеонаблюдения. К сожалению большинство вариантов сводилось к покупке готовых комплектов из Китая. От знакомых слышал много критики на этот счёт. Как-то даже сам поучаствовал в настройке оборудования, купленного с Aliexpress. Где-то половина заявленных функций работала не так как заявлено, некоторые опции и вовсе не получилось настроить, хотя регистратор был не из дешёвых. И таких отзывов и мнений было много. Также многие критически относятся к тому, что видеозаписи хранятся на китайских облачных сервисах. И тогда появилась мысль — а что если попробовать сделать свой видеорегистратор с минимальным функционалом? А что? На тот момент я начал плотно увлекаться linux, писал приложения с элементарным функционалом на bash, экспериментировал с web… В принципе всё что нужно для решения поставленной задачи. Сказано — сделано.

Поехали. Выбор железа

В качестве подопытного был выбран популярный роутер TP-LINK TL-MR3020 с прошитым OPENWRT на борту.

Характеристики роутера:

  • MIPS процессор 300МГц;
  • 32 МБ оперативной памяти;
  • флэш чип на 4МБ;
  • USB порт 2.0;
  • RJ-45 порт с полным дуплексом на 100 Мб;
  • GPIO выводы как свободные, так и со светодиодами;
  • Кнопка и переключатель на GPIO выводах;

Камера — обычная китайская HD IP камера, заказанная в Китае. Видео берём по RTSP протоколу. В этом нам помогла утилита openRTSP, которая входила в репозиторий OPENWRT и имела весь необходимый функционал. Работать мы решили с облачным сервисом Яндекс.Диск по протоколу webdav. Каждому новому пользователю этот сервис бесплатно предоставляет 10Gb места на диске. Ну а там по мере надобности можно докупать.

Суть идеи

По rtsp протоколу берём видеопоток с IP камеры. Делаем буферную директорию. В неё записываем видеоролики. С помощью утилиты CURL по протоколу webdav отправляем ролики на облако. В нашем случае это Яндекс.Диск.

Пробуем

Подключив IP камеру по ethernet к роутеру, мы запустили пробную запись 10-ти секундного ролика в формате .mp4 на Яндекс диск:

OPENRTSP -V -B 51200 -b 200000 -4 -f 25 -d 10>/tmp/ya_disk/test.mp4

Затем отправили его на облако:

curl -v -m 180 --stderr /tmp/log -k -u $email:$pass -T /tmp/ya_disk/test.mp4 https://webdav.yandex.ru/

Работает!

Начались тесты с разными длинами роликов, разными интервалами записи, периодической записью. В целом тесты прошли успешно. Однако была проблема с записью очень коротких роликов (порядка 5-ти секунд). Ролики записывались с большей скоростью и их длина была меньше установленной. Решили проблему правкой исходников openRTSP: обеспечили строгое выполнение программой значения fps, введённого пользователем, а не взятого из SDP, также отбросили фреймы меньше 100 байт.

Продумываем функционал

После удачных тестов было решено сделать интерфейс управления. На тот момент я начинал знакомиться с вэбом, поэтому решили сделать web версию. Стек технологий на стороне пользователя (frontend): HTML5, CSS3, JQUERY, AJAX. На стороне железа (backend): UHTTPD, CGI, BASH. С дизайном мудрить не стали, использовали плиточное расположение кнопок главной страницы.

Главная страница приложения

Страницы управления и ввода данных были сделаны с помощью JQUERY. С первыми успешными результатами управления

роутером

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

Итак, функционал:

  • Поддержка любой IP камеры;
  • Поддержка 3G/4G модемов;
  • Запись на облачное хранилище (бесплатно) и/или на usb накопитель;
  • Периодическая запись и/или запись по движению;
  • Циклическая запись на диск;
  • Установка длины ролика;
  • Режимы записи: по времени, по движению, день, ночь;
  • Автономная работа при пропадании питания (примерно 20 мин);

Реализация клиентской части

В меню настроек регистратора 6 кнопок: WI-FI, ЗАПИСЬ, КАМЕРА, 3G/4G, ХРАНИЛИЩЕ и ПОМОЩЬ. Итак, по порядку:

WI-FI

Здесь производится настройка wi-fi регистратора. WI-FI может работать в 2 режимах — «клиент» и «точка доступа». В режиме «Точка доступа» всё понятно: номер канала, SSID, тип шифрования, пароль. В режиме «клиент» регистратор подключается к любой wi-fi точки доступа.

Соответственно в этом режиме 3G/4G модем не нужен. Чтобы пользователь не потерял регистратор при подключении клиентом к точке доступа мы физически реализовали режим репитера.

Единственно на что нужно обратить внимание — при подключении регистратора к точке доступа нужно проверить не «перескочило» ли мобильное устройство пользователя на другую wi-fi точку доступа, т.к. wi-fi точка доступа регистратора будет кратковременно пропадать. Поле «Режим восстановления» — это гарантия того, что вы не «потеряете» регистратор. Это гарантированное время при включении, когда пользователь сможет настроить устройство или включить точку доступа. По истечении режима восстановления будет автоматический переход на главную страницу меню. Эта часть функционала ещё тестируется и временно отключена.

ЗАПИСЬ

Поле индикации даты и времени, меню «Установка времени», «Запись в локальное хранилище» и «Запись в облачное хранилище».

Установка времени.

Нажав на кнопку «Изменить время» можно изменить время и дату. Также с помощью ползунка устанавливается время начала и конца дня (для всех оно индивидуально). Это сделано с целью оптимизировать режимы работы регистратора в разное время суток.

Запись в локальное хранилище.

Здесь можно включить или выключить запись на внешний носитель, включить или выключить запись по движению и/или периодическую запись с возможностью установки длины записанного ролика и периода записи роликов (в режиме периодической записи).

Запись в облачное хранилище.

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

ПОМОЩЬ

По пунктам расписано содержание пунктов меню интерфейса, а также назначение каждого из них.

КАМЕРА

Адрес RTSP потока камеры.

Данные для этого поля можно узнать посетив страницу настройки IP камеры. В дальнейшем мы планируем получать эти данные по ONVIF и поле будет заполняться автоматически. Пока о стабильной работе ONVIF на всех IP камерах приходится только мечтать.

Задержка между роликами.

Параметр определяющий паузу в секундах при записи видеороликов. Применяется в режиме записи по движению. Позволяет экономить интернет трафик при постоянном или частом движении в кадре.

Видео с камеры.

Полезно для контроля записываемой картинки при установке камеры.

3G/4G

Здесь отображается информация об интернет-соединении посредством 3G/4G модема. Данные обновляются каждые 3 секунды. Полезно для контроля качества связи при установке камеры.

ХРАНИЛИЩЕ

Здесь два подменю — «Локальное хранилище» и «Яндекс.Диск». При выборе первого попадаем в дерево файлов подключенного внешнего носителя, при выборе второго переходим в Яндекс.диск.

Мобильная версия интерфейса

Записанные видеоролики можно посмотреть на Яндекс.Диске встроенным проигрывателем сервиса. Также ролик можно скачать и посмотреть локально любым видеоплеером. Хранение записанных видеороликов организовано следующим образом:

CAM — папка для записи видеороликов с регистратора;
MOTION — папка для записи видеороликов, записанных по движению в кадре;
TIME — папка для записи видеороликов, записанных с заданной периодичностью;
YYYY-MM-DD — папка для видеороликов, записанных в течении суток;
DDMMYYYY-HH_MM_SS.mp4 — записанные в формате mp4 видеоролики;

Организация хранения файлов на Яндекс.Диске




Что внутри? Реализация серверной части

Как я писал выше первым подопытным стал роутер TP-LINK TL-MR3020 с OPENWRT на борту. Версия Barrier Breaker 14.07. На начало испытаний это была самая свежая версия. Сейчас обновили до LEDE. В репозитории этой версии не оказалось openRTSP, поэтому мы добавили утилиту сами, заодно убрав из неё всё лишнее.

После успешных испытаний мы начали рассматривать другие роутеры со схожей архитектурой. Искали платформу, которая больше подойдёт для регистратора как габаритами так и характеристиками. Идея такая, что, прошив любой из роутеров модифицированной прошивкой и подключив к нему IP камеру с 3G/4G модемом, вы получаете регистратор. Список устройств, на которых испытывался функционал регистратора:

  • TP-LINK TL-MR3020;
  • HAME A5;
  • CARAMBOLLA2;
  • UNWIREDONE;
  • Skywork skw71;
  • TP-LINK TL-MR10U (с аккумулятором);
  • TP-LINK TL-MR3040 (с аккумулятором);
  • TP-LINK TL-MR3220 V:2.3 (4 порта ethernet);

Пробовали примерять платы роутеров в корпуса. Идея была в том чтобы кроме корпуса ничего не торчало и не висело, а сам корпус был минимальных размеров. Поэтому по задумке 3G/4G модем должен быть внутри корпуса. Так у нас получился

колхозный

уличный прототип на базе платы TP-LINK TL-MR3020:

Конечно же мы отдали предпочтение роутерам с минимальными размерами. Поэтому решили попробовать китайский роутер HAME A5, напечатать для него корпус и посмотреть что получится:

На HAME A5 наша прошивка регистратора работала нестабильно, роутер постоянно зависал и перезагружался. Скорее всего это происходило из-за сильного перегрева. Поэтому пришлось от него отказаться в пользу более надёжного и проверенного варианта.

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

Характеристики CARAMBOLLA2:

  • Процессор AR9331, 400 MHz;
  • 64 MB оперативной памяти DDR2;
  • 16 MB FLASH;
  • 802.11 b/g/n, 2.4 GHz, 1×1 SISO, 150MBps max data rate, 21 dB output power;
  • Напряжение питания 3.3 V;
  • Размеры 28 х 38 mm;

При проектировании платы стало ясно, что она получается довольно маленькой:

А почему бы не установить её прямо в камеру? Так мы сразу решаем вопрос с корпусом для регистратора. Так и сделали. Вот что получилось:

Из фото видно что плата регистратора крепится параллельно платам камеры на стойки. Из соображений охлаждения чипа лучше использовать IP камеры с металлическим корпусом и сделать радиатор, чтобы тепло отводилось на корпус. Для подключения 3G/4G модема и/или usb накопителя был использован штатный провод ethernet IP камеры. Автономность работы камеры с регистратором внутри обеспечивает аккумулятор 700mAh 3.7V. Функция автономной работы будет полезна при умышленном отключении питания. Этого аккумулятора хватит примерно на 20 минут работы регистратора с камерой.

Даёшь больше камер!

Также проводились эксперименты с записью видеороликов с нескольких IP камер. Опыты показали, что запись видеороликов с 2-х IP камер работала достаточно стабильно, поэтому мы рассматриваем возможность создания регистратора в отдельном корпусе с возможностью подключения 2-х IP камер. Сейчас тестируем работу регистратора с тремя и четырьмя IP камерами. Результаты пока не однозначны. Питание камер будет организовано от регистратора через пассивный PoE.

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

Как лодку назовешь так она и поплывет

Вы наверное обратили внимание на надпись на плате. Мы подумали что негоже проекту быть без названия. Придумали скромное название — «Vip-Cam» (Video-Ip-Camera). Ну а версии с несколькими камерами — «Vip-Box».

Что дальше?

Планы на будущее:

  • Оптимизировать и тестировать код. Получить стабильно работающее устройство;
  • Провести исследования по возможности настройки IP камеры через меню web приложения;
  • Исследовать возможность интеграции видеорегистратора в систему «умный дом»;
  • Продолжить тестирование работы видеорегистратора с двумя и более IP камерами;
  • Провести испытания по работе камеры с солнечной батареей;
  • Создание модификации видеорегистратора с поддержкой 2-x IP видеокамер;
  • Добавление функционала удаленной настройки видеорегистратора и IP видеокамеры;
  • Добавление возможности дистанционно сделать видеоролик по требованию;

Исходники проекта находятся здесь.

Так мы на настоящее время реализовали идею облачного минирегистратора. Проект реализуется в свободное от работы время, поэтому сроки разработки сильно затягиваются. В итоге мы имеем работающий прототип малогабаритного видеорегистратора, способного записывать видеоролики на облачное хранилище совершенно бесплатно. Работы ещё много, но одна из задач решена — качественный, не имеющий аналогов, регистратор сделать вполне реально. Спасибо за внимание.

Previous page |
Home


This tutorial describes how to configure your OpenWRT
router to make an IP camera accessible externally
from WAN. The camera used is a
HIKVision DS-2CD1321-I Dome camera
connected to the router through a PoE adapter.

Connect the camera to the router

Use your camera’s manual to setup the connection from the router to the camera.
Connect your home laptop or PC to the router so that the camera and the laptop
are on the same local network.

Once they are connected, you should be able to access the camera using it’s
local IP address, for e.g. 192.168.1.64, through the browser.

Modify firewall policy in the OpenWRT Router

Firewall Settings for zones in OpenWRT Router

Open the LuCI web interface of your OpenWRT router and go to Network > Firewall > Zones.

Add all the required interfaces to the WAN zone by going to wan > Edit > Covered Networks.
Set the Allow forward to destination zones to lan.

Add port forwarding rules

Firewall settings for Port forward in OpenWRT Router

On the LuCI web Interface of your OpenWRT router, navigate to Network > Firewall > Port forwards
and click the add button.

Set a name for the forwarding rule and add wan as the Source zone. Set an External port of your choice and
set the internal port to the port through which the camera provides the feed. If the camera provides the feed
through the RTSP Protocol, the port will
most likely be 554. Set the Internal IP Adress to the IP address of the camera in the local network.

Click save and then save and apply.

Wrapping up

You should be able to access your camera feed now by using a network video player like
VLC.

If you have connected your router to a hosted server using a tunnel, you can access
the camera feed by using the IP address of the hosted server and the External Port
in the port forwarding rule set above.

Enjoy!


Previous page |
Home

Устанавливаем необходимые пакеты
opkg update
opkg install kmod-video-uvc mjpg-streamer

Подключаем web-камеру к устройству и проверяем, определилась ли она в системе
root@OpenWrt:/# ls /dev/vid*

Редактируем фаил конфигурации
vi /etc/config/mjpg-streamer

Цитата:

config mjpg-streamer core
option enabled «1»
option device «/dev/video0»
option resolution «640×480»
option fps «25»
option www «/www/webcam»
option port «8080»
#option yuv «on»
#option quality «50»

Потом выполнить
/etc/init.d/mjpg-streamer enable
/etc/init.d/mjpg-streamer start

Делаем reboot и смотрим через веб браузер, IE и Opera криво работают, лучше всего использовать Chrom
http://192.168.1.99:8080/stream.html

Без ребута настройки можно поменять так:
поток в формате YUV
mjpg_streamer -i «input_uvc.so -d /dev/video0 -y -r 640×480 -f 5 -q 50» -o «output_http.so -w /www/webcam -p 8080»

Поток в формате MJPG
mjpg_streamer -i «input_uvc.so -d /dev/video0 -r 640×480 -f 5» -o «output_http.so -w /www/webcam -p 8080»

Поток в фоновом режиме
mjpg_streamer -i «input_uvc.so -d /dev/video0 -r 640×480 -f 5» -o «output_http.so -w /www/webcam -p 8080» -b

Список поддерживаемых Web камер

Цитата:

0402:5606 USB 2.0 Camera (VIT D2010 notebooks) ALi Corporation [12]
0402:9665 1.3M WebCam (Acer Aspire AS7551-7442 notebooks) ALi Corporation
0408:030c HP Webcam (HP Pavilion DV6744 and DV6750) Quanta Computer
0408:2fb1 Laptop Integrated Webcam 2HDM (Dell XPS notebooks) Quanta Computer
0416:a91a LogiLink Wireless Webcam Windbond
041e:4057 Creative Live! Cam Optia Creative Labs
041e:4058 Creative Live! Cam Optia AF Creative Labs
041e:4063 Creative Live! Cam Video IM Pro Creative Labs [7]
041e:4065 Creative Live! Cam Optia Pro Creative Labs
041e:406a Creative Live! Cam Notebook Ultra Creative Labs
041e:406b Creative Live! Cam Chat IM Creative Labs
041e:406c Creative Live! Cam Sync Creative Labs
041e:4071 Creative Live! Cam Vid. IM Ultra Creative Labs
041e:4080 Creative Live! Cam Socialize HD Creative Labs [16]
041e:4088 Creative Live! Cam Chat HD Creative Labs
0458:505e Genius iSlim 330 Genius
0458:7055 Genius iSlim 2020AF Genius
0458:705d Genius iSlim 2000AF Genius
0458:706e Genius eFace 2025 Genius
0458:7070 Genius FaceCam 310 Genius [13]
0458:7071 Genius iSlim 1300 V2 Genius
0458:707c Genius eFace 1300 Genius
0458:7081 Genius FaceCam 2000 Genius
045e:00f8 Microsoft LifeCam NX-6000 Microsoft
045e:074a Microsoft LifeCam VX-500 Microsoft
045e:075d Microsoft LifeCam Cinema Microsoft [13]
045e:076d Microsoft LifeCam HD-5000 Microsoft
045e:0770 Microsoft LifeCam VX-700 Microsoft
045e:0772 Microsoft LifeCam Studio Microsoft [13]
045e:0779 Microsoft LifeCam HD-3000 Microsoft
046d:0802 Logitech Webcam C200 Logitech
046d:0804 Logitech Webcam C250 Logitech
046d:0805 Logitech Webcam C300 Logitech
046d:0807 Logitech Webcam C500 Logitech
046d:0808 Logitech Webcam C600 Logitech
046d:0809 Logitech Webcam Pro 9000 Logitech
046d:080a Logitech Portable Webcam C905 Logitech
046d:0819 Logitech Webcam C210 Logitech
046d:081d Logitech Webcam C310 Logitech
046d:0821 Logitech Portable Webcam C910 Logitech
046d:0825 Logitech HD Webcam C270 Logitech
046d:0826 Logitech HD Webcam C525 Logitech
046d:08c1 Logitech Quickcam Fusion Logitech [1,2]
046d:08c2 Logitech Quickcam Orbit/Sphere MP Logitech [1,2]
046d:08c3 Logitech Quickcam for Notebooks Pro Logitech [1,2]
046d:08c5 Logitech Quickcam Pro 5000 Logitech [1,2]
046d:08c6 Logitech Quickcam OEM Dell Notebook Logitech [1,2]
046d:08c7 Logitech Quickcam OEM Cisco VT Camera II Logitech [1,2]
046d:08c9 Logitech Quickcam Ultra Vision Logitech [1,2]
046d:08ca Logitech Quickcam Fusion (2006 model) Logitech [1,2]
046d:08cb Logitech Quickcam for Notebooks Pro (2006 model) Logitech [1,2]
046d:08cc Logitech Quickcam Orbit/Sphere MP (2006 model) Logitech [1,2]
046d:08ce Logitech Quickcam Pro 5000 (2006 model) Logitech [1,2]
046d:0990 Logitech Quickcam Pro 9000
Logitech Quickcam Pro 9000 for Business Logitech [6]
046d:0991 Logitech Quickcam Pro for Notebooks (2007 model)
Logitech Quickcam Pro for Notebooks for Business Logitech
046d:0992 Logitech Quickcam Communicate Deluxe Logitech
046d:0994 Logitech Quickcam Orbit/Sphere AF Logitech
046d:09a1 Logitech Quickcam Communicate MP/S5500
Logitech Quickcam Communicate MP for Business Logitech
046d:09a2 Logitech Quickcam Communicate Deluxe/S7500 Logitech
046d:09a4 Logitech Quickcam E 3500 Logitech
046d:09a5 Logitech Quickcam 3000 for Business Logitech
046d:09a6 Logitech Quickcam Vision Pro Logitech
046d:09b0 Acer OrbiCam (Acer notebooks) Logitech
046d:09b2 Fujitsu Webcam (Fujitsu-Siemens notebooks) Logitech [3]
046d:09c0 Quickcam for Dell Notebooks (Dell notebooks) Logitech [1,2]
046d:09c1 Logitech Quickcam Deluxe for Notebooks
Logitech Quickcam Deluxe for Notebooks for Business Logitech [1,2]
0471:0331 Philips SPC 1300NC Philips
0471:0332 Philips SPC 1000NC Philips
0471:0333 Philips SPC 620NC Philips
0471:0334 Philips SPC 520/525NC Philips
0471:2034 Philips SPC 530NC Philips
0471:2037 Philips SPC 1330NC Philips
0471:2038 Philips SPC 2050NC Philips
0471:20d0 Philips SPZ2000 Philips
0474:02da Sanyo Xacti HD2000 Sanyo Electric
0474:0722 Sanyo W33SA Sanyo Electric
0474:0b0e Sanyo VPC-CA102 Sanyo Electric
0489:d00a Traveler DC 8900 Schenker Inc.
04cb:014c Fujifilm FinePix A340 Fujifilm
04cb:016f Fujifilm FinePix S5500 Zoom Fujifilm
04cb:0172 Fujifilm FinePix E550 Fujifilm
04da:2318 Panasonic Camcorder NV-GS11/230/250 (webcam mode) Panasonic
04da:231a Panasonic Camcorder NV-GS11/230/250 (DV mode) Panasonic
04da:231d Panasonic Camcorder NV-GS27/37/320/500 (webcam mode) Panasonic
04da:231e Panasonic Camcorder NV-GS27/37/320/500 (DV mode) Panasonic
04f2:a133 Chicony USB 2.0 1.3MP UVC Camera (Maxell MaxCam MWC-1300D) Chicony Electronics
04f2:a13c HP KQ246AA 8.0MP Deluxe Webcam Chicony Electronics
04f2:a13e Panda 10C Chicony Electronics
04f2:a147 Medion P86004 2MP Webcam with Headset Chicony Electronics
04f2:b008 Chicony USB 2.0 Camera Chicony Electronics
04f2:b012 Chicony 1.3M UVC Webcam (Asus G1S notebooks) Chicony Electronics [3]
04f2:b013 Chicony USB 2.0 Camera (Lenovo 3000 N200 notebooks) Chicony Electronics
04f2:b015 Chicony VGA 24fps UVC Webcam (HP notebooks) Chicony Electronics
04f2:b016 Chicony VGA 30fps UVC Webcam (HP notebooks) Chicony Electronics
04f2:b018 Chicony 2M UVC Webcam (Compal notebooks) Chicony Electronics
04f2:b021 ViewSonic 1.3M, USB2.0 Webcam (ViewSonic VX2255WMB screens) Chicony Electronics [5]
04f2:b022 Gateway USB 2.0 Webcam (One C34xx notebooks) Chicony Electronics
04f2:b023 Gateway USB 2.0 Webcam (HP Pavilion DV9560EG notebooks) Chicony Electronics
04f2:b024 USB 2.0 Webcam (Packard Bell notebooks) Chicony Electronics
04f2:b027 Gateway USB 2.0 Webcam (Gateway T-1616 notebooks) Chicony Electronics
04f2:b029 USB 2.0 1.3M UVC WebCam (Asus F6S notebooks) Chicony Electronics
04f2:b033 USB 2.0 1.3M UVC WebCam (Asus M70VM notebooks) Chicony Electronics
04f2:b044 Acer CrystalEye webcam (Acer Aspire 5535 notebooks) Chicony Electronics
04f2:b062 CNF7045 (Packard-Bell notebooks) Chicony Electronics
04f2:b070 Toshiba Satellite L350D notebooks Chicony Electronics
04f2:b071 CNF7129 (Asus N10JA2 and EeePC 1000HE netbooks, K50IN notebooks) Chicony Electronics [3,14]
04f2:b073 CNF7231 (MSI MS-1722 ID1 notebooks) Chicony Electronics
04f2:b082 CKA7227 (HP EliteBook 2530p notebooks) Chicony Electronics
04f2:b083 CKF7063 (HP Compaq 6830s notebooks) Chicony Electronics
04f2:b084 Unnamed (Acer Aspire One D150) Chicony Electronics
04f2:b105 Lenovo EasyCamera (Lenovo IdeaPad Y530 notebooks) Chicony Electronics
04f2:b106 CNF7246 (Asus G71V notebooks) Chicony Electronics
04f2:b107 CNF7070 (HP 2133 notebooks) Chicony Electronics
04f2:b169 CNF8248 (Fujitsu Lifebook T731 notebooks) Chicony Electronics [3]
04f2:b1b9 (Asus U52F notebooks) Chicony Electronics [3]
04f2:b1bb (Asus N82JV notebooks) Chicony Electronics [3]
04f2:b1be USB2.0 0.3M UVC WebCam (Asus UL30JT notebooks) Chicony Electronics [3]
04f2:b1e5 USB2.0 0.3M UVC WebCam (Asus K25JC and K52De notebooks) Chicony Electronics [3]
04f2:b221 Integrated Camera (Lenovo Thinkpad T420s notebooks) Chicony Electronics
04f2:b230 HP HD Webcam [Fixed] (HP ??? notebooks) Chicony Electronics [3]
058f:3820 Future Boy PC USB Webcam (Alcor Micro AU3820 chipset) Alcor Micro
05a9:2640 OmniVision OV2640 (Dell Inspiron 1420/1720 notebooks) OmniVision
05a9:2643 OmniVision Monitor Webcam (Dell SP2208WFP) OmniVision
05a9:2649 OmniVision Monitor Webcam (Dell SP2309W) OmniVision
05a9:7670 OmniVision OV7670 (Dell XPS m1330 notebooks) OmniVision
05ac:8502 Apple built-in iSight Apple [4]
05c8:0103 FO13FF-65 PC-CAM Foxlink
05c8:0403 HP Webcam [2 MP Fixed] (HP Mini 5103 netbook) Foxlink
05ca:18a1 Integrated Webcam (Dell Studio 1535 notebooks) Ricoh
05ca:18b7 Sony Visual Communication Camera (Sony VPCS12J1E notebooks) Ricoh
05e3:0505 BW Microscope GenesysLogic
064e:8100 Integrated Webcam 2M (Dell Vostro 1088 notebooks) SuYin
064e:a100 Acer OrbiCam (Acer notebooks) SuYin
064e:a101 Acer CrystalEye webcam (Acer notebooks) SuYin
064e:a102 Webcam (Acer Timeline 1810T notebooks) SuYin
064e:a103 Acer OrbiCam (Acer Aspire 7730ZG-343G32Mn notebooks) SuYin
064e:a110 HP Webcam (HP TX2000 notebooks) SuYin
064e:a111 USB 2.0 Camera (Datron TW7A notebooks) SuYin
064e:a116 USB 2.0 UVC 1.3M WebCam (Asus N20A notebooks) SuYin [3]
064e:a117 Acer HD Crystal Eye webcam (Acer 4930 notebooks) SuYin
064e:a118 Integrated Webcam (Dell Mini 9 netbooks) SuYin
064e:a136 USB 2.0 UVC 0.3M Webcam (Asus UL50VT netbooks) SuYin
064e:a219 UVC 1.3M Webcam (Acer Aspire 5745G notebooks) SuYin
064e:d101 Acer Crystal Eye webcam (Acer Aspire One AOA150-Ab netbooks) SuYin
064e:e201 Integrated Webcam (Lenovo Thinkpad Edge 13″ notebooks) SuYin
064e:f209 HP Webcam (HP Pavillon DV7 4152EG notebooks) SuYin
06f8:3005 Hercules Dualpix Exchange Guillemot Corp.
06f8:3007 Hercules Dualpix Chat and Show Guillemot Corp.
06f8:300a Hercules Dualpix Infinite Guillemot Corp.
06f8:300c Hercules Classic Silver Guillemot Corp.
06f8:3020 Hercules Webcam EC300 (Malata PC-81005 netbooks and clones) Guillemot Corp.
090c:37b3 Lenovo EasyCamera (Lenovo G560 notebooks) Silicon Motion
090c:b370 Silicon Motion SM370 Silicon Motion
090c:b371 Silicon Motion SM371 Silicon Motion
093a:2700 iSonic W002
A4Tech PK-635K
Digital Innovations 1.3MP Webcam Pixart Imaging
093a:2800 DealExtreme USB 2.0 Camera Pixart Imaging
093a:2900 Agama V-315 Pixart Imaging
0ac8:0336 Elecom UCAM-DLQ30 (Vimicro VC0336 chipset) Solid Years
0ac8:3313 TopSpeed USB 2.0 Camera B. Vimicro
0ac8:332d Vega USB 2.0 Camera (AOC screens and Techsolo TCA-4900) Vimicro
0ac8:3330 Sirius USB 2.0 Camera (Xinyi Y867 LCD Prince) Vimicro
0ac8:3343 Sirius USB 2.0 Camera (Fujitsu A6110 notebook) Vimicro
0ac8:3410 Venus USB 2.0 Camera (Minoru3D) Vimicro [8]
0ac8:3420 Venus USB 2.0 Camera (Tevion MD 85872 and Minoru3D) Vimicro [8]
0ac8:3450 A4Tech PK-333E A4Tech
0ac8:3460 Kodak Dual Webcamera Sakar Corp.
0ac8:3610 VMS-004D — 400x USB Microscope Veho [11]
0ac8:c302 Vega USB 2.0 Camera (Samsung Q45 notebook) Vimicro
0ac8:c303 Saturn USB 2.0 Camera (Samsung screens) Vimicro
0ac8:c315 HP Elite Autofocus Webcam Vimicro
0ac8:c338 Namuge 2MP Webcam Namuga
0bd3:0555 SPCAM SP620U 1/1.8″ CCD 1600×1200 Ophir Optronics
0bda:5801 Realtek 2SF022 (HP Pavillon DV7 4151SG notebooks) Realtek
0c45:62c0 Sonix USB 2.0 Camera (Acer Aspire 5050 and HP Pavilion DV6000 notebooks)
Trust SpotLight Webcam Pro
Centrios 1.3MP auto focus Sonix Technology
0c45:62e0 MSI Starcam Racer
Rosewill RCM-8163 Sonix Technology
0c45:62f1 Avatec CMA-L688
HueHD Sonix Technology
HueHD [11]
0c45:6310 USB 2.0 Camera (Trust Chat Webcam) Sonix Technology
0c45:63e0 Sonix Integrated Webcam (Dell notebooks) Sonix Technology
0c45:63ea Laptop Integrated Webcam 2M (Dell Studio 1555 notebooks) Sonix Technology
0c45:6409 USB 2.0 Camera (Nokia Booklet 3G netbooks) Sonix Technology
0c45:6415 Laptop Integrated Webcam 1.3M (Dell Inspiron 13z notebooks) Sonix Technology
0e8d:0004 MediaTek MT6227 phone MediaTek Inc
13d3:509b USB 2.0 Camera (Asus EeePC T91 netbooks) Genesys Logic Technology
13d3:5103 USB 2.0 Camera (Medion Akoya All-in-one PC) Sonix Technology
13d3:5122 USB 2.0 Camera (Asus NX90Jq and U33JC notebooks) Sonix Technology [3]
13d3:5130 USB 2.0 Camera (Asus K40AE, K50IE and K52JT notebooks) Sonix Technology [3]
13d3:5702 USB 2.0 UVC VGA WebCam (Asus Eee PC 1001PXD-EU17 netbooks) Azurewave
13d3:5710 USB 2.0 UVC VGA WebCam (Asus U31SD notebooks) Azurewave
145f:013e Trust Megapixel USB2 WB-5600R Trust
145f:013f Trust Megapixel USB2 Auto Focus Webcam Trust
145f:0142 Trust WB-6250X Webcam Trust
145f:015b Trust WB-8500X Webcam Trust
152d:0310 JMicron USB2.0 XGA WebCam JMicron
174f:1118 Syntek D-Max HP Webcam (HP Pavillon DV3 notebooks) Syntek
174f:5212 Syntek USB 2.0 UVC PC Camera (HP Spartan notebooks) Syntek
174f:5215 Syntek USB 2.0 UVC PC Camera (upcoming UMPC device) Syntek
174f:5271 Syntek USB 2.0 UVC PC Camera (upcoming UMPC device) Syntek
174f:5931 Syntek USB 2.0 UVC PC Camera (Samsung Q310 notebooks) Syntek
174f:5a11 Unknown (Asus A8Sc notebook) Unknown
174f:5a31 Sonix USB 2.0 Camera (Asus M50SV notebook) Sonix
174f:5a35 Sonix USB 2.0 Camera (Asus F3KE and G2S notebook) Sonix [3]
174f:8a12 Syntek USB 2.0 UVC PC Camera (Packard Bell Easynote MX52 notebooks) Syntek
174f:8a33 Syntek USB 2.0 UVC PC Camera (Asus U3S notebooks) Syntek
174f:8a34 Syntek USB 2.0 UVC PC Camera (JAOtech Smart Terminal) Syntek
177f:0060 Sweex WC060 Series HD Webcam
1778:0204 PEVO corp IPEVO Point 2 View
17dc:0202 Miricle 307K Thermoteknix
17ef:1004 Integrated Camera (Lenovo Thinkpad T61 notebooks) Lenovo
17ef:480b Integrated Camera (Lenovo SL400 and SL500 notebooks) Lenovo
17ef:481c Integrated Camera (Lenovo SL510 notebooks) Lenovo
1871:0101 Bresser Junior DigiMicro DM 400 Digital Microscope Bresser
1871:01f0 Aveo Technology USB 2.0 Camera Aveo Technology
1871:0306 Aveo Technology USB 2.0 Camera Aveo Technology
1871:7670 Aveo Technology USB 2.0 Camera Aveo Technology
18cd:cafe Pico iMage Ecamm
18ec:3188 Manta MM-353 Plako ArkMicro
18ec:3288 FSC WebCam V30S ArkMicro [9]
18ec:3290 USB 2.0 PC Camera (Sabrent WCM-6LNV) ArkMicro
18ec:3299 USB 2.0 PC Camera (model number QC3231) ArkMicro
199e:8101 DFx 21BU04 ImagingSource
19ab:1000 Bodelin ProScope HR Bodelin
19ab:1020 Bodelin ProScope HR2 Bodelin
19b4:0104 Celestron Digital Microscope Imager Celestron
19ff:0102 Dynex 1.3MP Webcam Dynex
1b3b:2951 MSI StarCam 370i Unknown
1bcf:2809 Laptop Integrated Webcam FHD (Dell Vostro 3550 notebooks) Sunplus
1c4f:3000 SiGma Micro USB Web Camera SiGma Micro
1cac:a332 Kinstone C8 webcam (Vimicro chipset) Kinstone
1cac:b288 Kinstone C18 webcam (Sonix chipset) Kinstone
1e4e:0100 USB 2.0 Camera Etron Technologies [10]
1e4e:0102 USB 2.0 Camera Etron Technologies
22b8:6006 Motorola MOTOROKR E6 Motorola
5986:0100 Acer OrbiCam (Acer notebooks) Bison Electronics
5986:0101 USB2.0 Camera (Packard Bell Easynote SJ notebooks) Bison Electronics
5986:0102 Acer Crystal Eye webcam (Acer TravelMate 7720 notebooks) Bison Electronics
5986:0200 Acer OrbiCam (Acer notebooks) Bison Electronics
5986:0202 Bison (Fujitsu-Siemens Amilo SI2636 notebooks) Bison Electronics
5986:0203 Bison (Advent 4211 and MSI Wind notebooks) Bison Electronics
5986:0205 Lenovo EasyCamera (Lenovo N500 and U330 notebooks) Bison Electronics [9]
5986:0241 Bison (MSI Wind Top AE1900 nettop) Bison Electronics [15]
5986:0314 BisonCam, NB Pro (MSI Wind U135DX netbook) Bison Electronics
5986:0343 BisonCam, NB Pro (Clevo P150HM notebook) Bison Electronics
eb1a:2571 eMPIA 27xx based camera (unbranded) eMPIA Technology
eb1a:2761 eMPIA 2761 based camera (unbranded) eMPIA Technology
eb1a:2771 eMPIA 2771 based camera (Intelbras iPlug notebook) eMPIA Technology

Introduction: Router Becomes Video Recorder for IP Cameras

Some routers have powerful CPU and USB-port on a board and can be used as a video recorder in addition to routing functions, in order for collect and distribute video and sound from IP-cameras that streams only H264/265 RTSP (as most modern cheap high resolution IP cameras). Moreover, some routers CPU have DSP (digital signal processor), and so can be highly effective for video stream decoding (change the resolution, the frame rate, etc). As a storage can be used USB flash, USB-HDD, USB-SSD. A NAS in home network can be used too.

Not any router can be upgraded as described here, depending on used CPU and manufacturer’s limitations of firmware reflashing. For example, it failed to upgrade the Mediatek MTK7621 based router. But had perfectly upgraded the router based on Qualcomm IPQ4018 (Cortex-A7).

This project utilizes OpenWrt, Debian Buster under debootstrap, FFmpeg and Samba.

Step 1: On the Router Was Installed OpenWrt OS

On the router was installed OpenWrt OS in order to have Linux on a board. OpenWRT OS and the home network was deployed as described on the appropriate page of OpenWrt project for this router model.

Step 2: Dedian Buster, FFmpeg and Samba Were Deployed Within OpenWrt

The FFmpeg package was used for collect the stream from the IP camera and store that in files by piecemeal (2 minutes length of each part). OpenWrt OS has FFmpeg built in, but this version does not work with H264/265 stream at this moment, despite this stream type is most used in cheap high resolution IP-cameras.

But up on OpenWrt OS (lightweight Linux) can be installed Debian OS (fullweight Linux). The fullweight FFmpeg package can be installed at Debian next and this version can work with H264/265 streams from IP cameras.

First step dramatically increased the memory of the router with a USB flash (but USB-HDD or USB-SSD is best). Same time, this storage can be used for video archives if there is no NAS in the home network. The Samba was installed.

Second step was to install a fullweight Debian OS under debootstrap.

Third step: FFmpeg was installed. The IP camera can be connected to the router wired or Wi-Fi.

Step 3: Connect IP Camera, Configure Crontab And… Thats All

The IP camera can be connected to the router wired or Wi-Fi.

Using ONVIF Device Manager was found the link to the camera’s RTSP stream.

With the noted RTSP link of the camera, the Crontab of OpenWrt was configured to save video from IP cameras in files and for control of the video archive size.

That’s all. Ever since this router is not only a router, but a video recorder too. Was no experiment with two or more IP cameras, but tests with one only IP camera do not show overload of the router’s CPU.

The video archive can be shared not only in the home network, but with global access on the Internet too. To make this, it is necessary to install FTP server in OpenWrt, and use router’s port mapping with static IP, external IP, or temporary IP with alerts about them changes.

If the computer of this router is used only as a video recorder then it is a good idea to switch off Wi-Fi radios on a board — will be less EM radiation and more power for USB.

Details here.

opkg install kmod-video-uvc mjpg-streamer

mjpeg-streamer fps, CPU load, memory usage, bandwidth at different resolutions:

[ $enabled -gt 0 -a -c $device ] && sleep 3 && $SSD -S -m -p $PIDF -q -x $PROG -- --input "input_uvc.so --device $device --fps $fps --resolution $resolution" --output "output_http.so --port $port" &

and add -w /www/webcam_www behind —output “output_http.so. Now it should look like this:

[ $enabled -gt 0 -a -c $device ] && sleep 3 && $SSD -S -m -p $PIDF -q -x $PROG -- --input "input_uvc.so --device $device --fps $fps --resolution $resolution" --output "output_http.so -w /www/webcam_www --port $port" &

The opkg version of mjpg-streamer has no control options for the camera. If you want to control exposure, brightness and other options you’ll need to install uvcdynctrl.

Install uvcdynctrl

opkg install uvcdynctrl

List available devices.

/usr/bin/uvcdynctrl -l

List available control options.

/usr/bin/uvcdynctrl -c

Listing available controls for device video0:
  Brightness
  Contrast
  Saturation
  Hue
  White Balance Temperature, Auto
  Gamma
  Power Line Frequency
  White Balance Temperature
  Sharpness
  Backlight Compensation

Create a configuration file based on the current running values.

/usr/bin/uvcdynctrl -W /etc/config/uvcdynctrl

Load a configuration file, which can be edited.

/usr/bin/uvcdynctrl -L /etc/config/uvcdynctrl

The above can be added to /etc/rc.local, via the GUI or command line to load settings required for your camera. I use the above to enable auto exposure and auto white balance which would otherwise be disabled from cold a start.

Webcam Pan and Tilt Example with Microprocessor

If the control page doesn’t contain any of the controls, edit the file /etc/init.d/mjpg-streamer and replace these lines

service_start /usr/bin/mjpg_streamer --input "input_uvc.so \
                --device $device --fps $fps --resolution $resolution" \           
                --output "output_http.so --www $www --port $port"

by (on a single line )

service_start /usr/bin/mjpg_streamer --input "input_uvc.so --device $device --fps $fps --resolution $resolution" --output "output_http.so --www $www --port $port"

The command mjpg_streamer -h give you usage information and examples.

If your webcam is an uvc supported by V4L but you cannot get an image (white page),
you may check that webcam output is not YUV only like output below:

root@OpenWrt:~# v4l2-ctl -V
Format Video Capture:
        Width/Height  : 320/240
        Pixel Format  : 'YUYV'
        Field         : None
        Bytes per Line: 640
        Size Image    : 153600
        Colorspace    : SRGB

The package uvc-streamer is no longer in the OpenWrt repositories.

  • Ip камера из web камеры и роутера
  • Iphone что это такое в роутере
  • Ip камера xiaomi не подключается к роутеру
  • Iphone не подключается роутеру tp link
  • Ip камера и роутер tenda