Sisällysluettelo

Ffserver - Webkameran kuvaa lähiverkossa

Kun kannettavassa tietokoneessa on sisäänrakennettu webkamera, niin sen välittämää kuvaa voidaan helposti katsella lähiverkossa selaimella. Tähän tarvitaan kahta ohjelmaa: ffserver ja ffmpeg. Tässä ohjeessa on käytetty Ubuntun versiota 9.04 (x86_64). Tässä ohjeessa on käytetty Acer TM 6592 -tietokonetta, jossa on sisäänrakennettu "Crystal Eye" webkamera.

Käytössä on ollut tämä ohje: http://ubuntuforums.org/showthread.php?t=665607

Ffmpeg-sivuston oma ohje: http://www.ffmpeg.org/ffserver-doc.html

Asenna ffserver ja ffmpeg

Asenna tarvittavat ohjelmat, ffserver sisältyy ffmpeg-pakettiin.

sudo apt-get install ffmpeg

Muokkaa tiedostoa /etc/ffserver.conf

Tässä ohjeessa on käytetty seuraavanlaista asetustiedostoa. Alkuperäinen on kopioitu talteen.

sudo cp /etc/ffserver.conf /etc/ffserver.conf.original

sudo nano /etc/ffserver.conf

Port 8090
BindAddress 0.0.0.0
MaxClients 1000
MaxBandwidth 10000
NoDaemon

<Feed Juhlasali.ffm>
File /tmp/Juhlasali.ffm
FileMaxSize 5M
</Feed>

<Stream Juhlasali.swf>
Feed Juhlasali.ffm
Format swf
VideoCodec flv
VideoFrameRate 2
VideoBufferSize 80000
VideoBitRate 100
VideoQMin 1
VideoQMax 5
VideoSize 640x480
PreRoll 0
Noaudio
</Stream>

Ohjelmien käyttö

Päätteeseen avataan kaksi välilehteä. Ensimmäiseen käynnistetään ffserver-ohjelma ja toiseen ffmpeg-ohjelma. Kumpaankaan ei tarvita pääkäyttäjän oikeuksia.

ffserver

ffmpeg -r 15 -s 640x480 -f video4linux2 -i /dev/video0 http://localhost:8090/Juhlasali.ffm

studio@ubuntu-studio:~$ ffserver
FFserver version 0.5-svn17737+3:0.svn20090303-1ubuntu6, Copyright (c) 2000-2009 Fabrice Bellard, et al.
  configuration: --enable-gpl --enable-postproc --enable-swscale --enable-x11grab --extra-version=svn17737+3:0.svn20090303-1ubuntu6 --prefix=/usr --enable-avfilter --enable-avfilter-lavf --enable-libgsm --enable-libschroedinger --enable-libspeex --enable-libtheora --enable-libvorbis --enable-pthreads --disable-stripping --disable-vhook --enable-libdc1394 --enable-shared --disable-static
  libavutil     49.15. 0 / 49.15. 0
  libavcodec    52.20. 0 / 52.20. 0
  libavformat   52.31. 0 / 52.31. 0
  libavdevice   52. 1. 0 / 52. 1. 0
  libavfilter    0. 4. 0 /  0. 4. 0
  libswscale     0. 7. 1 /  0. 7. 1
  libpostproc   51. 2. 0 / 51. 2. 0
  built on Apr 10 2009 23:20:33, gcc: 4.3.3

studio@ubuntu-studio:~$ ffmpeg -r 15 -s 640x480 -f video4linux2 -i /dev/video0 http://localhost:8090/Juhlasali.ffm
FFmpeg version 0.5-svn17737+3:0.svn20090303-1ubuntu6, Copyright (c) 2000-2009 Fabrice Bellard, et al.
  configuration: --enable-gpl --enable-postproc --enable-swscale --enable-x11grab --extra-version=svn17737+3:0.svn20090303-1ubuntu6 --prefix=/usr --enable-avfilter --enable-avfilter-lavf --enable-libgsm --enable-libschroedinger --enable-libspeex --enable-libtheora --enable-libvorbis --enable-pthreads --disable-stripping --disable-vhook --enable-libdc1394 --enable-shared --disable-static
  libavutil     49.15. 0 / 49.15. 0
  libavcodec    52.20. 0 / 52.20. 0
  libavformat   52.31. 0 / 52.31. 0
  libavdevice   52. 1. 0 / 52. 1. 0
  libavfilter    0. 4. 0 /  0. 4. 0
  libswscale     0. 7. 1 /  0. 7. 1
  libpostproc   51. 2. 0 / 51. 2. 0
  built on Apr 10 2009 23:20:33, gcc: 4.3.3
[video4linux2 @ 0x19dba60][3]Capabilities: 4000001
Input #0, video4linux2, from '/dev/video0':
  Duration: N/A, start: 1243083072.278953, bitrate: 73728 kb/s
    Stream #0.0: Video: rawvideo, yuyv422, 640x480, 73728 kb/s, 15 tbr, 1000k tbn, 15 tbc
Output #0, ffm, to 'http://localhost:8090/Juhlasali.ffm':
    Stream #0.0: Video: flv, yuv420p, 640x480, q=1-5, 100 kb/s, 1000k tbn, 2 tbc
Stream mapping:
  Stream #0.0 -> #0.0
Press [q] to stop encoding
[flv @ 0x19e3190]rc buffer underflow
frame= 4201 fps=  2 q=35.7 size=  156136kB time=2100.50 bitrate= 608.9kbits/s    

Lopuksi avataan selain, kannettavassa tietokoneessa riittää 'localhost', muualla ip-numero. Selainta pitää aika ajoin päivittää.

http://localhost:8090/Juhlasali.swf

http://192.168.1.4:8090/Juhlasali.swf

http://www.arkki.info/howto/Ffserver/Ffserver_01.png