От известно време ми се налага да участвам в разни телеконференции, в които напоследък е станало модерно, освен да си говорите нещата, за които сте се събрали, да се гледате как си чоплите носа пред компютъра, докато другите ви говорят. Това е и форма на контрол, някак си… виждаш точно дали те слушат или пък спят, както и теб те виждат дали ги слушаш внимателно. Абе, гадна работа… Ама е и полезно в някакви случаи. Иначе казано назря нуждата да си купя някаква камерка за отбиване на номера. И понеже не намирам това за важен device, съответно през последните две седмици спретнах проучване из мрежата коя е най-евтината камерка, която се продава в България и която работи под Linux. Да е възможно най-малка и да има някаква закачалка за да се закрепя на дисплея на лаптопа ми – това последното ме хвърля в лаптопския клас камерки, които са по-скъпи обаче…

Оказа се, че не е лесно начинание – native поддръжка в ядрото имат много малко неща и то предимно по-класически (и леко остарели) модели. Примерно Logitech QuickCam 4000 Pro е перфектното решение, но е над 200 лева пък толкова пари за глупости дават ли се? Аз искам само да могат да ме разпознават – нищо повече…

В София се продават какви ли не noname неща с неясен чипсет и произход – повечето Logitech-ци работят след компилиране на драйвер, но най-евтините (около 50-60 лева) Express и Messenger са с големи и обемни, топчести тела, без възможност за закачане към дисплей на лаптоп. Има и доста Genius-и, но повечето са нови модели, които са без поддръжка под Linux или с нестабилна такава. А пък друго си е поддръжката да си ти е в ядрото – мушкаш и тръгва…

Така пред очите ми попадна Trust 150 Spacecam, дребосък с размерите на палеца ми, сгъваща се почти на две, със закачалка за лаптоп, базирана на чипсета SPCA5xx, за който има V4L2 драйвер в ядрото и струва само 35 лева в Multielectronics (в ComelSoft и Reset е с около 20% по-скъпа!!). Максималната резолюция на картинката, която дава е 352×288 пиксела, но на кой му трябват повече…

Разбира се, че моментално я напазарувах – това е всичко, което търсех. И без това бях излязъл по-рано за фотографската си сесия с Тони и Весела, започваше да вали, и се чудех в какво да убия половин час време…

Преди малко я пъхвам в последната свободна дупка на новия USB-хъб и…

Jul 16 22:59:20 selene kernel: usb 1-1.2: new full speed USB device using uhci_hcd and address 9
Jul 16 22:59:20 selene kernel: usb 1-1.2: SN9C10[12] PC Camera Controller detected (vid/pid 0x0C45/0x6029)
Jul 16 22:59:20 selene kernel: usb 1-1.2: PAS106B image sensor detected
Jul 16 22:59:21 selene kernel: usb 1-1.2: Initialization succeeded
Jul 16 22:59:21 selene kernel: usb 1-1.2: V4L2 device registered as /dev/video0
Jul 16 22:59:21 selene kernel: usb 1-1.2: Optional device control through 'sysfs' interface ready

Чудесно! Всичко е според очакванията…

Пускам веднага GnomeMeeting и… тук е възможно с вашата дистрибуция всичко да е наред и веднага да си видите грозната физиомутра насреща, но при мен се появи грешка, според която gnomemeeting не може да чете /dev/video0. Хм, поглеждам файловите разрешения – всичко е наред, cat-вам /dev/video0 не само, че мога да го чета ами текнаха едни мити данни от там – не е истина. И изведнъж забелязвам, че gnomemeeting-а ми разбира от V4L (Video for Linux), но и идея си няма за V4L2. Кратко търсене в Google и разбирам, че поддръжката за V4L2 в gnomemeeting още е experimental и веднага се юрвам да проверя как Fedora са компилирали pwlib пакета – както и очаквах – без V4L2 support.

Видях, че SuSE имат пакет pwlib-plugins-v4l2 – той съдържа един-единствен файл, който се позиционира точно където трябва и според концепцията на Fedora, но някак мисълта да направя такова нещо си е срамотна направо. По-чисто е да си rebuild-на пакета от source.

Дръпнах SRPMS-то на pwlib за FC4 и го разпуках с rpm -ivh filename, при което то се разхвърля из /usr/src/redhat структурата. Всичко, което е нужно е да се редактира .spec файла, който би трябвало да се появи в SPECS поддиректорията.

Всъщност трябва да се промени редът, който съдържа

%configure --enable-plugins

на

%configure --enable-plugins --enable-v4l2

и в секция %files да се добави един ред за новия файл, който ще се появи

%{_libdir}/pwlib/devices/videoinput/v4l2_pwplugin.so

Толкова. Следва просто да rebuild-нете пакета. Така както сте си в директория /usr/src/redhat/SPECS просто изпълнявате командата:

rpmbuild -bb pwlib.spec

Всъщност по-добре е да изпълните:

rpmbuild -bb -D 'CUSTOM_RELEASE yl' pwlib.spec

където yl в случая са моите инициали, но можете да напишете каквото ви дойде наум, за да различите пакета от default-ните за Fedora. Ако не сте си инсталирали devel-пакетите, които са нужни за да се извърши компилирането ще получите измрънкване да ги инсталирате. Това се прави с командата:

yum install libdv-devel libraw1394-devel libavc1394-devel alsa-lib-devel SDL-devel

След като си компилирате пакета можете да ги махнете пак:

yum remove libdv-devel libraw1394-devel libavc1394-devel alsa-lib-devel SDL-devel

Ако е имало dependency install можете да махнете и нещата, които са се инсталирали покрай горните задължителни неща. При мен това бяха:

yum remove fontconfig-devel freetype-devel xorg-x11-devel

След приключване на компилацията готовия пакет търсите в RPMS поддиректорията на /usr/src/redhat. Инсталирате го с

rpm -Uvh pwlib-1.8.4-1.i386.rpm --force

Опцията –force е нужна, защото това е пакет със същата версия, като този, който вече съществува инсталиран в системата ви. Това е… GnomeMeeting вече вижда и V4L2-играчки… Имайте наум, че ако Fedora-отбора пусне нова версия на pwlib и все още не се престрашат да пуснат по подразбиране V4L2-поддръжката и си update-нете системата ще трябва пак да прекомпилирате своя версия на този пакет по същия начин. Иначе gnomemeeting-а ви ще увисне в недоумение…

Това може да не е нужно за вашата дистрибуция ако gnomemeeting в нея е V4L2 enabled или пък не използвате gnomemeeting, а нещо друго. Горното е в сила за потребители на Fedora, Red Hat, а може би и други дистрибуции като Mandriva, като няма общо с това каква камерка или друг device се ползва. Това беше просто описание как да се rebuild-не един пакет за да може gnomemeeting да ползва V4L2.

Иначе камерката бачка читаво – аз даже успявам да се разпозная, цветовете са доста гадни (поне на изкуствена светлина), но това е перфектното и най-евтиното решение за видеоконферентни приказки под Linux на българския пазар. Потвърдено!

След някой друг месец, когато недоверието към V4L2 спадне, тази камерка ще е абсолютен plug & play за Linux. Тя вече е – примерно за SuSE, които са се престрашили. Нямам идея за други дистрибуции. И наистина е трудно за вярване, но тя без каквото и да преувеличение е с размер на по-дебеличък палец…

Написано от Йовко Ламбрев

ИТ и Интернет експерт, предприемач, блогър и фотограф от Пловдив. Фен на WordPress, книгите и музиката. Вярва, че можем да направим света по-добър.

5 коментара

  1. На дневна светлина качеството на изображението е направо изненадващо добро!

    Отговор

  2. Общо взето повечето камерки се поддържат под Linux. Аз лично успях да подкарам дори CN-WCAM1 с цена 25лв с ДДС без проблем. Единственото което беше необходимо е да намери и компилира драйвер за нея, защото официално още го няма. Качеството е добро горе долу. Освен това мога да подтвърдя че всички модели на Trust които съм изпробвал(а те са почти всички) работят безотказно. За Logitech не мога да говоря – нямам толкова пари за хвърляне на вятъра.

    Отговор

  3. Да, прав си – пълно е с много драйвери из мрежата – в различен стадий на работоспособност, но аз държах на native поддръжка от ядрото за да не прекомпилирам (евентуално) драйвер всеки път като си сменям ядрото. Върху Fedora това се случва редовно – през две-три седмици. Canyon-чето наистина е по-евтино, но е настолно, а Trust SpaceCam 150 се закача много ценно към ръба на дисплея на лаптопа и не ми се мотае по бюрото :-)

    Отговор

  4. Пробвал ли си да вържеш FZ10 като камера? Питам те, понеже дори треторазряден апарат като представителите на най-загубената фирма за производство на фотоапарати Samsung са предвидили тази възможност. В името на експеримента… иначе не вярвам, че за нормални цели си струва да си хабиш апарата :-)

    Отговор

  5. Не съм – принципно сигурно става, защото FZ10 може да работи и като видео камера, но не е удобно някак си такъв голям апарат да ползваш за такива цели, а и трябва да го захранваш и към контакт за по-продължително ползване като камера и изобщо… не е секси, някак си…

    Отговор

Ако искате да споделите нещо