SisällysluetteloBRTableOfContents(3) |
Logitech QuickCam Pro 9000
Logitech Quickcam Pro 9000 on hyvällä optiikalla sekä mikrofonilla varustettu web-kamera.
Moduli (uvcvideo) on valmiina Ubuntu 7.10:ssä
Pro 9000 web-kamera käyttää modulia, jonka nimi on "uvcvideo". Modulin kotisivu:
Moduli on valmiina Ubuntu 7.10:ssä.
{{{asmok@ubuntu:~$ locate uvcvideo /lib/modules/2.6.22-14-generic/ubuntu/media/usbvideo/uvcvideo.ko /lib/modules/2.6.22-14-rt/ubuntu/media/usbvideo/uvcvideo.ko asmok@ubuntu:~$ }}}
Modulin voi myös rakentaa itse viimeisimmästä lähdekoodista. Lähdekoodi haetaan svn-ohjelmalla. Modulin rakentamiseen tarvitaan kunkin Linux-ytimen header-tiedostot sekä joukko ohjelmoimiseen tarvittavia ohjelmia. Itse Linux-ydintä ei tarvitse kuitenkaan rakentaa kokonaan uusiksi, vain moduli - jos siihen on tarvetta - se on valmiina Ubuntu 7.10:ssä.
{{{svn checkout svn://svn.berlios.de/linux-uvc/linux-uvc/trunk }}}
Ubuntu 7.10 tunnistaa kameran automaattisesti ja lataa modulin valmiiksi.
{{{asmok@ubuntu:~$ lsusb | grep Logitech Bus 003 Device 004: ID 046d:0990 Logitech, Inc. asmok@ubuntu:~$ }}}
{{{asmok@ubuntu:~$ lsmod | grep video video 18060 0 uvcvideo 53636 0 video_buf 26244 1 saa7146_vv compat_ioctl32 2304 1 uvcvideo videodev 29568 2 uvcvideo,saa7146_vv v4l1_compat 15364 3 uvcvideo,saa7146_vv,videodev v4l2_common 18560 3 uvcvideo,saa7146_vv,videodev usbcore 139912 9 snd_usb_audio,snd_usb_lib,uvcvideo,xpad,hci_usb,usbhid,ehci_hcd,uhci_hcd asmok@ubuntu:~$ }}}
Ohjelmia uvcvideo-modulin käyttämiseksi
Uvcvideo-modulin avuksi on ohjelmoitu pieni joukko tehokkaita ohjelmia.
uvcview-20071108
Uvcview on Gnome-ohjelma, sen kotisivu on täällä:
http://www.nurs.or.jp/~ogochan/hack/uvcview.html
Ruutukaappaus ohjelmasta.
[http://www.arkki.info/howto/LogitechPro9000/wiki/uvcview.png uvcview.png]
luvcview-20070512
Toinen samantapainen ohjelma on luvcview. Tällä ohjelmalla on mahdollista tallentaa videota avi-muodossa.
Ohjelman linkki, uusin versio:
http://mxhaard.free.fr/spca50x/Investigation/uvc/luvcview-20070512.tar.gz
Ruutukaappaus ohjelmasta.
http://www.arkki.info/howto/LogitechPro9000/wiki/luvcview.png
Videotallennus (11 sekuntia pitkä, ilman ääntä) ohjelmasta.
[http://www.arkki.info/howto/LogitechPro9000/wiki/luvcview.avi luvcview.avi]
Uvc-streamer
Kolmas on komentoriviltä toimiva striimausohjelma, lähetettävää videota voi seurata samassa lähiverkossa VLC-ohjelmalla.
Ohjelman kotisivu:
http://naaa.de/uvc_streamer.htm
Ohjelman käynnistys.
{{{asmok@ubuntu:~/bin/mjpg-streamer/uvc-streamer$ ./uvc_stream Using V4L2 device.....: /dev/video0 Resolution............: 640 x 480 frames per second.....: 5 TCP port..............: 8080 motor control TCP port: 8081 }}}
Striimatun videon katselu vlc-ohjelmalla.
{{{asmok@ubuntu:~/bin/mjpg-streamer/uvc-streamer$ vlc http://localhost:8080/ VLC media player 0.8.6c Janus }}}
Ruutukaappaus vlc-ohjelmasta.
[http://www.arkki.info/howto/LogitechPro9000/wiki/uvc_stream_vlc.png uvc_stream_vlc.png]
Mjpg-streamer
Kun uvc-streamer lähettää kuvavirran sellaisenaan lähiverkkoon, niin mjpg-streamer-ohjelmalla kuvavirran saa upotettua www-sivulle. Ohjelmaan sisältyy pieni http-palvelin tai palvelu (output_http.so), joten kokonaisen LAMP-palvelimen asennus on turhaa, kun haluaa lähettää kuvavirtaa omalta työasemalta lähiverkkoon.
Ohjelman kotisivu:
http://naaa.de/uvc_streamer.htm
{{{asmok@ubuntu:~/bin/mjpg-streamer/mjpg-streamer$ ./mjpg_streamer -o "output_http.so -w ./www" MJPG Streamer Version.: 2.0
i: Using V4L2 device.: /dev/video0 i: Desired Resolution: 640 x 480 i: Frames Per Second.: 5 i: Format............: MJPEG o: www-folder-path...: ./www/ o: HTTP TCP port.....: 8080 o: username:password.: disabled
}}}
[http://www.arkki.info/howto/LogitechPro9000/wiki/mjpg_streamer_firefox.png mjpg_streamer_firefox.png]
Mjpg-streamer ja Cambozola-java-applet
Mjpg-streamer sisältää Cambozola-java-appletin, jolla kameraa voi joniin verran ohjata. Kamerassahan ei ole kääntyvää mekanismia, mutta suurennos ja pienennys onnistuu.
[http://www.arkki.info/howto/LogitechPro9000/wiki/mjpg_streamer_cambozola.png mjpg_streamer_cambozola.png]
MPlayer
MPlayer toimii komentoriviltä käynnistettynä seuraavalla tavalla.
mplayer -tv driver=v4l2:width=640:height=480:device=/dev/video0:fps=30:outfmt=yuy2 tv://
{{{asmok@ubuntu:~$ mplayer -tv driver=v4l2:width=640:height=480:device=/dev/video0:fps=30:outfmt=yuy2 tv:// MPlayer 1.0rc2-4.1.3 (C) 2000-2007 MPlayer Team CPU: Intel(R) Core(TM)2 CPU 6400 @ 2.13GHz (Family: 6, Model: 15, Stepping: 2) CPUflags: MMX: 1 MMX2: 1 3DNow: 0 3DNow2: 0 SSE: 1 SSE2: 1 Compiled with runtime CPU detection. mplayer: could not connect to socket mplayer: No such file or directory Failed to open LIRC support. You will not be able to use your remote control.
Playing tv://. TV file format detected. Selected driver: v4l2
- name: Video 4 Linux 2 input
author: Martin Olschewski <olschewski@zpr.uni-koeln.de> comment: first try, more to come
v4l2: ioctl get standard failed: Invalid argument Selected device: UVC Camera (046d:0990)
- Capabilites: video capture streaming supported norms: inputs: 0 = Camera 1; Current input: 0 Current format: YUYV
tv.c: norm_from_string(pal): Bogus norm parameter, setting default. v4l2: ioctl enum norm failed: Invalid argument Error: Cannot set norm! Selected input hasn't got a tuner! v4l2: ioctl set mute failed: Invalid argument v4l2: ioctl query control failed: Invalid argument xscreensaver_disable: Could not find XScreenSaver window. GNOME screensaver disabled ========================================================================== Opening video decoder: [raw] RAW Uncompressed Video VDec: vo config request - 640 x 480 (preferred colorspace: Packed YUY2) VDec: using Packed YUY2 as output csp (no 0) Movie-Aspect is undefined - no prescaling applied. VO: [xv] 640x480 => 640x480 Packed YUY2 Selected video codec: [rawyuy2] vfm: raw (RAW YUY2) ========================================================================== Audio: no sound Starting playback... }}}
MPlayer.
[http://www.arkki.info/howto/LogitechPro9000/wiki/MPlayer.png MPlayer.png]
Ffmpeg-kaappaus
Ffmpeg osaa kaapata kuvavirtaa tällaisella komennolla.
ffmpeg -f video4linux2 -s 640x480 -r 15 -i /dev/video0 -f m4v out.m4v
{{{asmok@ubuntu:~$ ffmpeg -f video4linux2 -s 640x480 -r 15 -i /dev/video0 -f m4v out.m4v FFmpeg version SVN-rUNKNOWN, Copyright (c) 2000-2007 Fabrice Bellard, et al.
- configuration: --enable-gpl --enable-pp --enable-swscaler --enable-pthreads --enable-libvorbis --enable-libtheora --enable-libogg --enable-libgsm --enable-dc1394 --disable-debug --enable-libmp3lame --enable-libfaadbin --enable-libfaad --enable-libfaac --enable-xvid --enable-x264 --enable-amr_nb --enable-amr_wb --enable-shared --prefix=/usr libavutil version: 1d.49.3.0 libavcodec version: 1d.51.38.0 libavformat version: 1d.51.10.0 built on Nov 17 2007 21:23:57, gcc: 4.1.3 20070929 (prerelease) (Ubuntu 4.1.2-16ubuntu2)
[video4linux2 @ 0xb7fa3610][3]Capabilities: 4000001 Input #0, video4linux2, from '/dev/video0':
- Duration: N/A, bitrate: 73728 kb/s Stream #0.0: Video: rawvideo, yuyv422, 640x480, 73728 kb/s, 15.00 fps(r)
Output #0, m4v, to 'out.m4v':
- Stream #0.0: Video: mpeg4, yuv420p, 640x480, q=2-31, 200 kb/s, 15.00 fps(c)
Stream mapping:
Stream #0.0 -> #0.0
Press [q] to stop encoding frame= 96 q=22.2 Lsize= 423kB time=6.4 bitrate= 541.6kbits/s video:31kB audio:0kB global headers:0kB muxing overhead 1246.043680% asmok@ubuntu:~$ }}}
Kaapattu kuvavirta m4v-muodossa. Tiedoston katselu onnistuu parhaiten MPlayer-ohjelmalla.
{{{asmok@ubuntu:~$ file out.m4v out.m4v: MPEG sequence, v4, video, simple @ L1 asmok@ubuntu:~$ }}}
[http://www.arkki.info/howto/LogitechPro9000/wiki/out.m4v MPlayer.m4v]
Usb-mikrofoni
Web-kameran mikrofonia voi käyttää sellaisenaan yksinkertaisena äänittävän äänikorttina vaikkapa podcastien tekemiseen.
Ensin tarkistetaan äänikorttien osoitteet. Tässä koneessa on emolevyn oma äänipiiri kytketty pois käytöstä, siksi se ei ole käytössä. Sen korvaa SB Live! -äänikortti.
{{{asmok@ubuntu:~$ cat /proc/asound/cards
- 0 [Live ]: EMU10K1 - SBLive! Value [CT4832]
- SBLive! Value [CT4832] (rev.6, serial:0x80271102) at 0x1000, irq 23
- USB Device 0x46d:0x990 at usb-0000:00:1a.7-3.2, high speed
asmok@ubuntu:~$ }}}
Alsa - Arecord
Äänitys tapahtuu komentoriviltä seuraavalla komennolla. Äänitys katkaistaan brutaalisti Ctrl+C -komennolla.
arecord -D plughw:1,0 -c 1 -f cd -v testi.wav
Wav-tiedosto on muunnettu ogg-tiedostoksi, ääntä ei ole kuitenkaan muokattu millään tavalla. Äänenlaatu on kohtuullinen.
http://www.arkki.info/howto/LogitechPro9000/wiki/testi.ogg
{{{asmok@ubuntu:~$ arecord -D plughw:1,0 -c 1 -f cd -v testi.wav Nauhoittaa WAVE 'testi.wav' : Signed 16 bit Little Endian, Taajuus 44100 Hz, Stereo Plug PCM: Route conversion PCM (sformat=S16_LE)
- Transformation table:
0 <- 0 1 <- 0
Its setup is:
- stream : CAPTURE access : RW_INTERLEAVED format : S16_LE subformat : STD channels : 2 rate : 44100 exact rate : 44100 (44100/1) msbits : 16 buffer_size : 22050 period_size : 5512 period_time : 125000 tick_time : 1000 tstamp_mode : NONE period_step : 1 sleep_min : 0 avail_min : 5512 xfer_align : 5512 start_threshold : 1 stop_threshold : 22050 silence_threshold: 0 silence_size : 0 boundary : 1445068800
Slave: Rate conversion PCM (16000, sformat=S16_LE) Its setup is:
- stream : CAPTURE access : MMAP_INTERLEAVED format : S16_LE subformat : STD channels : 1 rate : 44100 exact rate : 44100 (44100/1) msbits : 16 buffer_size : 22050 period_size : 5512 period_time : 125000 tick_time : 1000 tstamp_mode : NONE period_step : 1 sleep_min : 0 avail_min : 5512 xfer_align : 5512 start_threshold : 1 stop_threshold : 22050 silence_threshold: 0 silence_size : 0 boundary : 1445068800
Slave: Hardware PCM card 1 'USB Device 0x46d:0x990' device 0 subdevice 0 Its setup is:
- stream : CAPTURE access : MMAP_INTERLEAVED format : S16_LE subformat : STD channels : 1 rate : 16000 exact rate : 16000 (16000/1) msbits : 16 buffer_size : 8000 period_size : 2000 period_time : 125000 tick_time : 1000 tstamp_mode : NONE period_step : 1 sleep_min : 0 avail_min : 2000 xfer_align : 2000 start_threshold : 0 stop_threshold : 8000 silence_threshold: 0 silence_size : 0 boundary : 2097152000
Signaali Interrupt keskeytti... asmok@ubuntu:~$ }}}
Audacity
Audacity osaa myös käyttää usb-mikrofonia. Asetuksia joutuu hieman kokeilemaan. Tässä tapauksessa usb-mikrofoni löytyi /dev/dsp1-laitteena.
Audacity.
[http://www.arkki.info/howto/LogitechPro9000/wiki/Audacity.png Audacity.png]
Varsinaiset web-kameraohjelmat - Ekiga ja Skype
Sekä Ekiga että Skype toimivat tämän web-kameran kanssa.
Ekiga.
http://www.arkki.info/howto/LogitechPro9000/wiki/Ekiga.png
Skype.
http://www.arkki.info/howto/LogitechPro9000/wiki/Skype.png
Skype, mikrofoni.
http://www.arkki.info/howto/LogitechPro9000/wiki/Skype_mikrofoni.png
Skype, kaiutustesti.
http://www.arkki.info/howto/LogitechPro9000/wiki/Skype_kaiutustesti.png
Flumotion
Eräs mielenkiintoinen sovellus, joka osaa käyttää tätä hyvälaatuista web-kameraa, on Flumotion. Sen uusin versio pitää itse rakentaa lähdekoodista.
Flumotionin kotisivu:
Flumotionin käynnistäminen
Skripti, jolla voi käynnistää Flumotionin.
[http://www.arkki.info/howto/LogitechPro9000/wiki/flumotion.sh.txt flumotion.sh.txt]
Flumotionin asetukset
Ruutukaappauksia Flumotionin asetuksista.
[http://www.arkki.info/howto/LogitechPro9000/wiki/Flumotion_Video.png Flumotion_Video.png]
[http://www.arkki.info/howto/LogitechPro9000/wiki/Flumotion_Sound.png Flumotion_Sound.png]
[http://www.arkki.info/howto/LogitechPro9000/wiki/Flumotion_Capture.png Flumotion_Capture.png]
[http://www.arkki.info/howto/LogitechPro9000/wiki/Flumotion_OK.png Flumotion_OK.png]
Flumotion ja Kino
Flumotionin kaappaama tiedosto, jossa on mukana myös ääni, avataan Kino-ohjelmaan.
[http://www.arkki.info/howto/LogitechPro9000/wiki/Flumotion_Kino.png Flumotion_Kino.png]
Kino osaa muuntaa Ogg Theora-tiedoston Flash (flv) -tiedostoksi.
[http://www.arkki.info/howto/LogitechPro9000/wiki/Flumotion_Kino_flv.png Flumotion_Kino_flv.png]
Tiedoston jakaminen - Wordpress ja Mediacaster, Blip TV ja Miro
Tämän Flash-tiedosto voidaan laittaa esille useallakin eri tavalla. Tietenkin voidaan jakaa myös muokattua Ogg-tiedtostoa sellaisenaan, mutta silloin menetetään striimauksen tuomat edut.
1. Wordpress ja Mediacaster-lisäosa
http://www.arkki.info/wordpress/?p=14
2. Blip TV
3. Miro
[http://www.arkki.info/howto/LogitechPro9000/wiki/Miro.png Miro.png]
Miro | Channels | Add Channel | http://asmokoskinen.blip.tv/rss