Wczoraj męcząc moją nową kamerę Labtec 2200 doszedłem do rozwiązania które działa nie tylko na tej kamerze, ale też np na Apollo AC-518 którą miałem pod ręką. Doszedłem do tego dość późno wczoraj, także ustawienia pewnie można jeszcze polepszyć. Moja kamerka labtec miała problem z za dużą ilością czerwieni i żółci (przesyceniem). Jak to wyglądało?
Efekt przed:

Efekt po:
(zdjęcia troszkę przyciąłem - nie bawiłem się też w ustawienie ostrości pokrętłem - po prostu przekręciłem kamerkę na kota)
Zaczynam więc zabawę w zmianę ustawień globalnych dla niektórych kamer!
1. instalujemy pakiet qc-usb wraz z wszelkimi zależnościami. Jest to pakiet który ma za zadanie ułatwić współpracę linuksa z kamerkami Logitecha/Labteca.
2. Uruchamiamy np. cheese
3. Wchodzimy do terminala gdzie wpisujemy:
Gdzie: /dev/video0 to nasza kamerka, natomiast pozostałe parametry to już konkretne ustawienia obrazu dla danej kamerki zgodnie z poniższymi wskazówkami (krótki wyciąg z man):
Kod: Zaznacz cały
-i wyświetla informacje o kamerze (dzięki temu doszedłem że druga kamerka też da się tym poprawić)
-b wartość ustawia jasność
-u wartość ustawia kolory (nie działa wszędzie)
-o wartość ustawia nasycenie
-c wartość ustawia kontrast
Wartości powinny się mieścić pomiędzy 0 a 65535 - wartość 32768 jest wartością domyślną (bieżący poziom tych parametrów wyświetli się po qcset -i)
4. Zmiana jest od razu widoczna w Cheese!
5. To tyle
Z problemów które zauważyłem:
1. Próbowałem dodać "qcset /dev/video0 -o 15000 -b 3000" do sesji - jednak nie skutkuje to poprawieniem obrazu. Najlepiej odpalić to bezpośrednio przed użyciem kamery (o tym za chwilę)
2. czasem parametry się gubią - oczywiście nie jeśli kamera już działa - tylko w przypadku gdy odpalimy "poprawiacza" a za dwie godziny kamerkę...
3. nie chce mi to działać z mplayer - ale sam mplayer pozwala na poprawę parametrów bezpośrednio z linii poleceń...
4. nie udało mi się wykorzystać kilku innych poleceń tego programu... ale to pewnie wymaga tylko czasu.
Jak ominąłem niektóre z tych problemów?
Otóż z kamery korzystam praktycznie tylko w skypie - pierwszym pomysłem było utworzenie nowego aktywatora skype z poleceniem:
Kod: Zaznacz cały
qcset /dev/video0 -o 15000 -b 30000 && env LD_PRELOAD=/usr/lib/libv4l/v4l2convert.so skype
(env LD_PRELOAD=/usr/lib/libv4l/v4l2convert.so - moja kamerka labteca tylko w ten sposób chce ze Skype'm działać)
Jednak Skype nie ruszał. Zrobiłem więc prościutki skrypt startskype.sh z zawartością:
Kod: Zaznacz cały
qcset /dev/video0 -o 15000 -b 30000 && env LD_PRELOAD=/usr/lib/libv4l/v4l2convert.so skype
ustawiłem mu prawo wykonywania i przypisałem go do aktywatora Skype'e.
Na wszelki wypadek utworzyłem sobie też aktywator z samym poleceniem "qcset /dev/video0 -o 15000 -b 30000" - jakbym chciał skorzystać z innego programu

Od tej pory już nie jesteśmy indianami tylko bladymi twarzami.
Oczywiście parametry można sobie dobrać - te które dobrałem u siebie może nie najlepiej wyglądają na przedstawionych obrazkach, jednak wieczorem przy świetle w którym najczęściej korzystamy z kamery jest idealnie.