PDA

Просмотр полной версии : UVC Webcamera на Android Nexus 7


avgaz
20.07.2013, 04:41
Собственно после долгих мучений мне все таки удалось запустить UVC камеру Logitech HD Webcam C270, решил написать инструкцию может кому пригодится.
1. Смотрим есть ли в списке поддерживаемых камер ваша http://www.ideasonboard.org/uvc/#devices если нет подключаем камеру и смотрим в папке /dev создался файл video0 или нет. Если да переходим дальше, если нет выкидываем камеру и покупаем ту что есть в списке по ссылке выше.
2. Загружаем файл из архива camera.tegra3.so в директорию /system/lib/hw заменяя стандартный предварительно скопировав оригинал на случай если захотим откатится.
3. Перезагружаемся
4. В терминале выполняемым команды
su
chown system.camera /dev/video0
chmod 660 /dev/video0
5. Запускаем программу камеры, стандартная не работает, я использовал LGCamera смотрим если работает, радуемся вам повезло с камерой, моя Logitech HD Webcam C270 не работала.
6. Если не работает сразу переходим к пункту 7-11 ниже. Если камера работает, для автоматизации запуска создаем файлик к примеру install-recovery.sh в system/etc с таким содержимым

#!/system/bin/sh
chown system.camera /dev/video0
chmod 660 /dev/video0

сохраняем, выставляем права файлу 551
Перезагружаемся и проверяем работает или нет. Если да то дальше не чего делать не нужно.
Если не работает и выполнены пункты 1-2 делаем дальше.
Отдельное спасибо YAM1966 за улиту сброса USB для GPS она отлично работает и для камеры.
7. Из архива загружаем файл reset в system/etc выставляем ему права 551
8. Выполняем в терминале команду lsusb смотрим по id камеры Bus и Device камеры id камеры, запоминаем их, id можно узнать тут http://www.ideasonboard.org/uvc/#devices для моей камеры выглядело это так Bus 002 Device 002: ID 046d:0825
9. В терминале выполняем команды где первые три цифры это ваш номер Bus вторые три Device

/system/etc/reset /dev/bus/usb/002/002
chown system.camera /dev/video0
chmod 660 /dev/video0

10. Запускаем программу камеры, стандартная не работает, я использовал LGCamera смотрим работает.
11. Если камера работает, для автоматизации запуска создаем файлик к примеру install-recovery.sh в system/etc с таким содержимым где соответственно правим на свой Bus и Device

#!/system/bin/sh
./system/etc/reset /dev/bus/usb/002/002
#sleep 5
chown system.camera /dev/video0
chmod 660 /dev/video0

сохраняем, выставляем права файлу 551
Пере загружаемся и проверяем работает, у меня после этого все отлично заработало.
для регистрации можно использовать к примеру программу DailyRoads Voyager
В архив так же вложил свой install-recovery.sh где достаточно подправить только Bus и Device на свои
Видео снятое в среднем качестве на Logitech HD Webcam C270 http://youtu.be/0IgZpUry9VI через программу DailyRoads

wave_is
21.07.2013, 05:18
отличная инфа спасибо.
А как проходит видеорегистрирование?
Ничего не тормозит?

avgaz
21.07.2013, 13:18
отличная инфа спасибо.
А как проходит видеорегистрирование?
Ничего не тормозит?
Пока жду когда придет остальное барахло с китая, Нексус на столе тестирую, запустил видеорегистрацию DailyRoads на запись, запустил навитель, и Poweramp играет, ну и Wifi подключен, не каких тормозов при этом нет вовсе, единственное что у меня при этом аккум разряжаться начал 10мин -1% ну это уже другая песня.
Ещё один косяк когда при отключении питания Нексус уходит в сон на тимуровской прошивку, после пробуждения иногда создается файл video1 а не video0, не знаю как побороть этот косяк может у кого есть мысли поэтому поводу?

wave_is
21.07.2013, 13:25
Rage2 в камерах и тонкостях опытный. Может, он что-то придумает. Напишите ему.

Rage2
21.07.2013, 14:08
Ещё один косяк когда при отключении питания Нексус уходит в сон....., после пробуждения иногда создается файл video1 а не video0, не знаю как побороть этот косяк может у кого есть мысли поэтому поводу?
Данная проблема очень распространенная, и дело тут не в нексусе и камере...и тем более в прошивке...
Тоже самое происходит и с другими устройствами..например usb gps, 3G модем, easycap....
Это возникает из-за того, что устройства в хабе некорректно выключаются(тупо пропадает питание) и система их теряет, не завершив корректно свою работу с ними...далее когда питание подается, система регистрирует устройства под новыми именами (как в вашем случае video1, а не 0), т.к считает, что старые "типа еще подключены".

Сразу скажу, что 100%-го рецепта от этой проблемы в андройде нет(p.s. а в линуксе есть), но в некоторых случаях помогает вот что.
Рубить питание на хабе нужно спустя некоторое время, когда планшет полностью уйдет в глубокий сон(дипслип).
А не единовременно, как в вашем случае: рубите питание, потом планшет видя это, дает команду на сон...это не правильно.

avgaz
22.07.2013, 13:16
Данная проблема очень распространенная, и дело тут не в нексусе и камере...и тем более в прошивке...
Тоже самое происходит и с другими устройствами..например usb gps, 3G модем, easycap....
Это возникает из-за того, что устройства в хабе некорректно выключаются(тупо пропадает питание) и система их теряет, не завершив корректно свою работу с ними...далее когда питание подается, система регистрирует устройства под новыми именами (как в вашем случае video1, а не 0), т.к считает, что старые "типа еще подключены".

Сразу скажу, что 100%-го рецепта от этой проблемы в андройде нет(p.s. а в линуксе есть), но в некоторых случаях помогает вот что.
Рубить питание на хабе нужно спустя некоторое время, когда планшет полностью уйдет в глубокий сон(дипслип).
А не единовременно, как в вашем случае: рубите питание, потом планшет видя это, дает команду на сон...это не правильно.

Немножко не понимаю, как то не логично, устройства в системе так и так отключаются просто вынув из USB по другому их не выключить!
Так же, как то не логично выключать устройства когда планшет уже ушёл в сон, мне кажется это и будет не корректное отключение. Попробовал увеличить в Тимуровской прошивку время выключения до 5сек и вроде пока нормально по 6 выключений всегда video0 единственное каждый раз нужно передергивать usb командой /system/etc/reset /dev/bus/usb/002/002 но эту проблему можно решить с помощью таскера при подаче питания он выполняет эту команду с таймаутом
Или у кого есть опыт может создать что то типа виджета который будет выполнять эту команду и после запускать прогу видео регистрации.

Rage2
22.07.2013, 14:22
Не нужно думать так, как это работает на винде (ПК), хотя даже там в трее предусмотрен менеджер "безопасное извлечение устройств (http://ru.wikipedia.org/wiki/%C1%E5%E7%EE%EF%E0%F1%ED%EE%E5_%E8%E7%E2%EB%E5%F7% E5%ED%E8%E5_%F3%F1%F2%F0%EE%E9%F1%F2%E2%E0)" для корректного отключения юсб флешек и др.
И тут, когда планшет уходит в сон, он в некоторых случаях:
1. дает команду на сон(suspend) для устройств в хабе и самого хаба (если поддерживается)
2. "отмонтирует" их корректно, закрывая сессии работы с ними, и вырубает сам юсб хост в планшете.

Надеюсь теперь Вам понятна "логика"?


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

avgaz
22.07.2013, 18:28
Не нужно думать так, как это работает на винде (ПК), хотя даже там в трее предусмотрен менеджер "безопасное извлечение устройств (http://ru.wikipedia.org/wiki/%C1%E5%E7%EE%EF%E0%F1%ED%EE%E5_%E8%E7%E2%EB%E5%F7% E5%ED%E8%E5_%F3%F1%F2%F0%EE%E9%F1%F2%E2%E0)" для корректного отключения юсб флешек и др.
И тут, когда планшет уходит в сон, он в некоторых случаях:
1. дает команду на сон(suspend) для устройств в хабе и самого хаба (если поддерживается)
2. "отмонтирует" их корректно, закрывая сессии работы с ними, и вырубает сам юсб хост в планшете.

Надеюсь теперь Вам понятна "логика"?


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

Rage2
22.07.2013, 20:55
Я думаю косяк либо:
1. в хабе
2. в Y-кабеле
3. не правильных настройках тимуровской прошивки
4. что то с кармой, ибо у вас постоянно грабли на всем пути

avgaz
22.07.2013, 21:33
Я думаю косяк либо:
1. в хабе
2. в Y-кабеле
3. не правильных настройках тимуровской прошивки
4. что то с кармой, ибо у вас постоянно грабли на всем пути
1. Хаб тот же, что и на nextway с самопальным питанием, но там с пробуждением вроде проблем не было
2. Ну не Y у меня а просто прикручено питание которое идет и на планшет и на хаб.
3. Да там настроек то и нет по этому поводу, FI настройка при таком питании галка активна и не снять её.
4. Ну да, может быть )) хотя nexus не с ранить с nextway

avgaz
28.07.2013, 17:00
поставил все в авто, вот видео снятое в среднем качестве на Logitech HD Webcam C270 http://youtu.be/0IgZpUry9VI
Камера закреплена на соплях по этому дергается )))

wave_is
28.07.2013, 17:27
неплохо. мне нравится

Eric02
29.07.2013, 15:06
Ничерта ж не видать.. Регистратор за 1000р будет снимать не хуже, а может и лучше...

msforever
29.07.2013, 15:11
Собственно после долгих мучений мне все таки удалось запустить UVC камеру Logitech HD Webcam C270, решил написать инструкцию может кому пригодится.
1. Смотрим есть ли в списке поддерживаемых камер ваша http://www.ideasonboard.org/uvc/#devices если нет подключаем камеру и смотрим в папке /dev создался файл video0 или нет. Если да переходим дальше, если нет выкидываем камеру и покупаем ту что есть в списке по ссылке выше.


Интересно на RK3066 заработает?

Rage2
29.07.2013, 15:53
Интересно на RK3066 заработает?
Да, заработает, но только если модуля uvc в ядре нет, могу предоставить.

Качество Г.., разрешение и фпс никакое.... ЗАЧЕМ???
По цене хорошей вебки лучше взять нормальный регистратор!!!

msforever
29.07.2013, 16:01
Да, заработает, но только если модуля uvc в ядре нет, тогда могу предоставить.

Качество Г.., разрешение и фпс никакое.... ЗАЧЕМ???
По цене хорошей вебки лучше взять нормальный регистратор!!!

Спортивный интерес, за инфу по какчеству спасибо. буду думать в сторону blackvue wifi 500

kristal0211
29.07.2013, 16:12
Спортивный интерес, за инфу по какчеству спасибо. буду думать в сторону blackvue wifi 500

Уже новая модель вышла(BlackVue DR550GW-2CH), более вкусная, с двумя камерами и главное новой матрицей от Sony.

avgaz
29.07.2013, 18:02
Ничерта ж не видать.. Регистратор за 1000р будет снимать не хуже, а может и лучше...
Если при просмотре ролика поставить 480p в котором снято видео то нормально видно, если снимать на максимальном качестве, то ещё лучше. Естественно можно регистратор купить за 1тр наврали лучше будет, можно просто обвешаться устройствами.
Интересно на RK3066 заработает?
У меня не заработало.

Качество Г.., разрешение и фпс никакое.... ЗАЧЕМ???
Ну с таким успехом можно сказать, зачем лепить SDR радио когда оно все равно работать нормально не будет, зачем лепить eаsycap когда так же работать не будет нормально. Ведь все можно отдельно поставить ))

Rage2
29.07.2013, 19:20
avgaz, не обижайся, но ты херню привел в пример..
какой нахрен регистратор в 15 кадров\сек ?? и разрешении 1/2 HD, что им можно зарегистрировать? поездку если только...а ночью как эта вебка кажет???? угол обзора??
Что можно поставить вместо SDR ?? какая альтернатива? (инет не всчет)
Что вместо камеры ЗХ? зеркало? отчасти согласен..., можно...но зачем, если на моей IPS матрице это выглядит еще лучше?

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

У меня не заработало.
и понятно, следовательно нет модуля uvcvideo.ko
Устройства разныееее....прошивки соответственно тоже.


Изикап работает отменно, не надо гнать..
Радива паёт, ждем обновление софта и будет еще лучше..

anton2204
17.02.2014, 18:11
Извините за идиотский вопрос...
выставляем ему права 551
Это как? Из опыта приходилось только выставлять права RW-R-R(в виде Г)

P.S. Если я правильно понял из этого (http://askel.ru/archives/51): 551 это RX--RX--X
Если я не прав - поправьте!