Żonka ostatnio wspominała, że chciałaby mieć kamerkę internetową. Ja lubię
takie zabawki, więc od razu podchwyciłem pomysł i postanowiłem jej kamerkę
kupić. No to zajrzałem na Allegro co tam mają… cała masa do wyboru… no to
biorę parę z brzegu i Googlam za ich wsparciem w Linuksie. Ciężko to idzie. Nic
na temat wsparcia w Linuksie dokładnie tych urządzeń co znalazłem na Allegro w
Google nie było. Jak
coś znalazłem, co miało wsparcie, to albo tego na Allegro nie było, albo
kosztowało więcej niż byłem w stanie zapłacić. Na Allegro był tak wielki wybór,
że nie sposób było sprawdzić wszystkiego. Podobnie na wygooglanych listach
sprzętu obsługiwanego przez Linuksa. Oczywiście każdy producent chipsetu
zrobił interfejs po swojemu (urządzenia oparte o standard UVC się dopiero
pojawiają i do tych najtańszych nie należą), a który chipset jest w której
kamerce to dopiero po podłączeniu można stwierdzić…
Na Allegro i tak nie chciałem tego kupować (w końcu to kot w worku),
uznałem, że wybiorę się do sklepu. Normalnie wziąłbym ze sobą listę
obsługiwanego sprzętu, żeby porównać z tym co jest na półkach. Ale dostępne
listy są olbrzymie… a i tak niekompletne… Poszedłem więc bez listy, parę
popularniejszych nazw zapamiętałem, a w ogóle, to uznałem, że może trafię. I
umówię się ze sprzedawcą, że jak nie uruchomię tego, to zwrócę…
No więc przyszedłem do sklepu. Przerażanie w oczach – chyba z
dziesięć różnych kamerek na półce, żadna nie przypomina niczego o czym
czytałem… No nic, mówię, że chcę kamerkę i nieśmiało dodaję ale taką,
. A sprzedawczyni, ku mojemu zaskoczeniu, bierze
żeby działała pod Linuksem
jedną kamerkę z półki (i to chyba taką, jakiej żonka oczekuje – na
laptopa, z klipsem) i mówi, że ta będzie na pewno działać. Okazało się, że był
tam już jeden klient z takimi wymaganiami, przyszedł z laptopem i na miejscu
sprawdził. Zapytałem jeszcze o parametry, bo kosztowała mniej niż byłem
przygotowany na to wydać. Pani zaproponowała, że może podłączyć do jakiegoś
laptopa i pokazać. Już brała jednego laptopa, ale stwierdziła: Ale ten ma
.
zainstalowaną tę kurewską… oj, przepraszam… na nim jest ta Vista
Kobieta była rzeczywiście przerażona, że jej się takie słowo wymsknęło. Widać
szczerze. :-D
W końcu dała mi jakiegoś laptopa z Windows XP, żebym sobie podłączył i sprawdził.
Taaa… równie dobrze mogłaby mnie posadzić przed sterami helikoptera, żebym
się przeleciał ;-)
. Ale jakoś sobie w tym egzotycznym systemie, i
to jeszcze z jakimiś dodatkowymi przeszkadzajkami, poradziłem. Kamerka
zadziałała, obraz był zadowalający (przynajmniej jak na tą cenę). Biorę.
Za sterownikami rozglądałem się wcześniej, więc jakiś miałem już w pracy
skompilowany, dla najnowszego kernela PLD AC. Okazało się, że pasuje do tej
kamerki. Załadował się bez problemu i xawtv pokazało obraz. Ale Ekiga
marudziła, że nie może otworzyć urządzenia. Bałem się, że kamerka z Ekigą
niezgodna (może dlatego, że JPEG)… ale okazało sie, że po prostu ten
sterownik to V4L1, a w Ekidze miałem załadowane tylko V4L2. Doinstalowałem
libpw-vide-v4l i ruszyło!
Teraz trochę danych praktycznych:
- Kamerka to:
A4Tech Evo Cam Note - Sterownik do niej to: gscpav1
(wersja: 20070110) - Aby
ręcznie
zbudować ten sterownik na PLD Ac trzeba:- Zainstalować pakiet kernel-module-build w wersji zgodnej z
używanym kernelem (zrobić upgrade kernela i zainstalować najnowszy
kernel-module-build) - Rozpakować źródła sterownika gdzieś w katalogu domowym.
- Poprawić Makefile:
Zamienić:
default: $(MAKE) -C $(KERNELDIR) SUBDIRS=$(PWD) CC=$(CC) modules
na (w przypadku używania kernela
up
, zamienić wszystkiesmp
naup
):default: mkdir -p o/include/linux ln -sf $(KERNELDIR)/config-smp o/.config ln -sf $(KERNELDIR)/Module.symvers-smp o/Module.symvers ln -sf $(KERNELDIR)/include/linux/autoconf-smp.h o/include/linux/autoconf.h $(MAKE) SYSSRC=$(KERNELDIR) SYSOUT=$(PWD)/o O=$(PWD)/o -C $(KERNELDIR) CC=$(CC) prepare scripts $(MAKE) SYSSRC=$(KERNELDIR) SYSOUT=$(PWD)/o O=$(PWD)/o -C $(KERNELDIR) SUBDIRS=$(PWD) CC=$(CC) modules
- Przelogować się na roota, skopiować zbudowany gspca.ko do
/lib/modules/`uname -r`/misc, zmienić mu właściciela na
root:root, odpalić depmod -a.
- Zainstalować pakiet kernel-module-build w wersji zgodnej z
Dopiero teraz zobaczyłem, że w repozytorium PLD jest gspca.spec i
się nawet buduje, więc można zapomnieć o tym, co napisałem wyżej i po prostu
zbudować sobie pakiet. Wersja w specu jakby trochę inna, jeszcze nie sprawdzałem czy
działa, najwyżej trzeba by speca nieco poprawić.
Update: Nagrałem mały testowy filmik, żeby pokazać co kamerka może. No, nie do końca pokazuje on co chciałem – podczas nagrywania obraz stracił nieco na jakości, bo nie znalazłem jeszcze sposobu na nagrywanie z tego w optymalnej jakości. Na bezpośrednim podglądzie w spcaview/xawtv/mplayer obraz jest odrobinę lepszy.
A ja mam takie szczęście, że jaką bym kamerę nie podłączył to działa. Zazwyczaj jest tak, że to wszystko jeden pies, bo pomimo różnych producentów, niby funkcji itd, to i tak korzystają z kilku ogólnie znanych chipsetów.
Pytanie teraz gdzie – efekty: http://pr0n.ika.jajcus.net:8080/ ? 😀
PolubieniePolubienie
Ech, nasuwa mi się taka konstatacja: że jeśli na user-friendly dystrybucjach Linuksa trzeba by było robić takie hocki-klocki jakie opisałeś, żeby kamerka działała, to nadal wiele osób będzie to odstraszało od Linuksa.
PolubieniePolubienie
Szefie, a zapuśc parę jakichś obrazków ;-P
PolubieniePolubienie
Krystek: chyba coś przespałem, ale czy PLD kiedykolwiek miało być userfriendly?
W takim ubuntu pewnie by poszło od kliknięcia, ostatnio podłączyłem aparat i ku mojemu zaskoczeniu było jak w windowsie 🙂
PolubieniePolubienie
To było ogólne spostrzeżenie: chodziło mi o dystrybucje dla przeciętnego użytkownika. Wcale bym się nie zdziwił, gdyby dla takiej kamerki dla Linuksa sterowniki trzeba by było napisać sobie samemu 😉
PolubieniePolubienie
Krystek: Sterownik, którego użyłem, nie jest jakiś wyszukany. Nie jest włączony do źródeł kernela którego używam, ale bez problemowo z nim działa. Nie widziałem też żadnych dziwnych ograniczeń licencyjnych. Więc sądzę, że w dystrybucjach nastawionych na użytkownika ten sterownik już jest. A jak jest to po prostu działa.
Do tego widziałem, że sporo sterowników jest już dołączona do źródeł nowszych kerneli. Więc zapewne duża ilość kamerek „po prostu zadziała” w user-friendly dystrybucjach. Oczywiście pozostaje dużo innych, które nie zadziałają — taka polityka producenta. Mam nadzieję, że USB Video Class (coś do kamerek, jak USB Storage do dysków) to w końcu zmieni.
A druga część mojego wpisu jest skierowani do tych, którzy z różnych powodów będą chcieli lub musieli sami nad tym zapanować. Przy okazji pokazałem jak w środowisku PLD Ac budować ręcznie dodatkowe moduły kernela.
PolubieniePolubienie
w Ubuntu jest cos do obslugi kamerek – widzialam jak przegladalam jakis czas temu szukajac czegos innego.
Jajcus: ale z ta kure..ska vista bylo dobre 😀
PolubieniePolubienie
Spadłeś mi z nieba z tym postem, akurat czegoś takiego poszukuję 😀
PolubieniePolubienie
Nawet w pobliskim sklepie była 🙂 Teraz tylko próba odpalenia tegoż…
PolubieniePolubienie
Kurka, obraz jakiś taki paskudnie jasny jest
Hints?
jakby co to sip:deejay1.to.małpa.ekiga.net
PolubieniePolubienie
DeeJay1: no jest… spcaview potrafi ściemniać, więc kamerka ma taką opcję… ale już ekiga sobie nie radzi, a ffmpeg/ffserver nie ma takiej opcji… Coś się wymyśli…
PolubieniePolubienie
Po godzinie walki ze sterownikiem i spcaview problem jasności rozwiązany: założyliśmy na kamerkę okulary przeciwsłoneczne 🙂 Mam genialną żonę!
PolubieniePolubienie
Ekiga sobie radzi jeśli jej się zachce – ustawiłem wszystkie suwaki na zero po czym zacząłem się bawić jasnością – tylko trzeba przytrzymać kliknięty suwak nad miejscem i czasem delikatnie masować ;>
PolubieniePolubienie
A możecie podrzucić jakiś krótki film nagrany tą kamerką? Ciekawi mnie czy rzeczywiście wyciąga te 640×480 i robi to płynnie.
Chciałbym sobie zrobić przenośny rejestrator do motocykla i najtańsze na co wpadłem to jakiś zajechany laptop bez matrycy i baterii i do tego kamera na USB 🙂
PolubieniePolubienie
AlchemyX: spróbuję coś przygotować.
Ale do motocykla to Ci się raczej nie nada, ze względu na ten ograniczony zakres czułości: w słoneczny dzień zarejestrujesz jedynie wielkie białe plamy.
PolubieniePolubienie
Szkoda. Ciekawe czy to kwestia sprzętowa czy sterowników.
PolubieniePolubienie
Mnie to wygląda na kwestie sprzętową. Sterowniki mają regulację jasności kontrastu (które jednak działają tylko w niektórych aplikacjach, jak spcaview), ale przyciemnienie obrazu w ten sposób nie ukazuje detali w prześwietlonych fragmentach obrazu. Wydaje mi się, że parametry ekspozycji są ustawione na sztywno, przy założeniu, że oświetlenie jest dość kiepskie (myślę że to rozsądne założenie dla webcama). No cóż… kupiłem tanie badziewie, ale wiedziałem o tym. 🙂
PolubieniePolubienie
No to dodałem pokazowy filmik do wpisu 🙂
PolubieniePolubienie
Eee… strzałek na monitorze nie widać… 😉
PolubieniePolubienie
Mam wrażenie, że obraz zwalnia i przyspiesza co chwila, albo może po prostu pora spać ;-). Jakość ogólnie jest zadowalająca.
PS. Widzę, że jak na Paskudę przystało to i ogon jej wyrósł 😛
PolubieniePolubienie
AlchemyX: możliwe, ale w takim wypadku to nie wina kamerki (ona pracuje real-time), ale mencodera, a raczej mojej umiejętności obsługi tegoż.
PolubieniePolubienie
dzięki za informacje, 2 sztuki na allegro zakupione 😉
Jak to miło że akurat jak czegoś szukam, to ktoś inny to znajduje ;p
PolubieniePolubienie
undefined: o, to to 🙂
PolubieniePolubienie
http://allegro.pl/item189317670_rewelacyjna_kamera_a4tech_evolution_cam_note_od_ss.html
ej dzieki wlasnie zamawia ja…
spoko, obraz, spoko, cena, no i dziala bez problemu pod linuchem
PolubieniePolubienie
a propos Visty – ja mysle ze ta kobieta chciala po prostu zaszpanowac 🙂 😛
PolubieniePolubienie