Käyttäjä:Ninnnu/Screencasthowto
Screencast on nimitys oman työpöydän nauhoitukseta ja mahdollisesti live-lähettämisestä Internettiin, mikin kanssa tehdyllä selostuksella tai ilman. Tässä artikkelissa kuvataan live-lähetyksen pystytys käyttäen ffmpegiä, crtmpserveriä ja PulseAudiota. Katseluun voidaan käyttää esimerkiksi JW playeriä tai Flowplayeria. Kaikki seuraavat komennot on annettava komentorivillä.
Lähetys[muokkaa]
Lähetyskomento: ffmpeg -f x11grab -s 1280x1024 -r 30 -i :0.0+0,0 -f alsa -i pulse -vcodec libx264 -crf 20 -preset veryfast -minrate 150k -maxrate 500k -s 640x480 -vf "lutyuv=y=val*1.15" -acodec libmp3lame -ar 44100 -ab 128000 -threads 0 -f flv -metadata streamName="StriiminNimi" tcp://crtmpserverosoite:6666
Selitteet kohdille jotka voi vaatia muokkaamista (kursivoitu):
- -f x11grab -s 1280x1024 - Kaapattavan lähteen resoluutio. Jos alue on pienempi kuin näytön resoluutio, kaapataan vasemmasta yläkulmasta sopivan kokoinen pala.
- jälkimmäinen -s 640x480 - Lähetettävän kuvan resoluutio. Kaapattu kuva (määritelty edellisessä kohdassa) skaalataan tähän kokoon.
- -vf "lutyuy=y=val*1.15" - Videofiltterit joilla lähetettävää kuvaa käsitellään. Tässä esimerkissä asetetaan gamma 1.15 kertaiseksi.
- streamName="StriiminNimi" - Striimin nimi, määrittää myöhemmässä vaiheessa RTMP-osoitteen josta asiakkaiden JWPlayer/FlowPlayer hakee striimin.
Useampi äänilähde (PulseAudiolla)[muokkaa]
Jos haluat lähettää esimerkiksi pelin äänet oman selostuksen kanssa, sinun pitää yhdistää nämä äänilähteet PulseAudion kautta.
- Selvitä ensin äänilaitteiden nimet.
- Mikki: pactl | grep input, sieltä löytynee rivi jossa lukee "Nimi: alsa_input.pci-0000_00_14.2.analog-stereo", tämä on mikin laite. Jos äänikortteja on useampi, myös tämän kaltaisia rivejä on usaempi. Valitse sopiva.
- Ohjelmien äänet: pactl |grep monitor. Tulosteessa pitäisi olla rivi muotoa "Monitor Source: alsa_output.pci-0000_00_14.2.analog-stereo.monitor".
- Käynnistä pacmd
- Uuden tyhjän äänilähteen luominen ja laitteiden lisäys siihen:
load-module module-null-sink sink_name=mywiretap load-module module-loopback source=alsa_output.pci-0000_00_14.2.analog-stereo.monitor sink=mywiretap load-module module-loopback source=alsa_input.pci-0000_00_14.2.analog-stereo sink=mywiretap
- Sulje pacmd esim. painamalla Ctrl+d
- (Asenna ja) Käynnistä pavucontrol.
- Valitse välilehti "Sisääntulolaitteet", sinne on ilmestynyt uusi laite nimeltä "mywiretap". Aseta se ensisijaiseksi klikkaamalla vihreää ympyrää.
Palvelin[muokkaa]
- Debian-pohjaisisten levitysversioiden pakettivarastosta löytyy paketti crtmpserver. Se kelpaa hyvin (tai ainakin Debian 6.0.7:n versio on toiminut). (sudo apt-get install crtmpserver)
- Valmis. Muuta konfiguroimista ei välttämättä tarvitsekkaan tehdä. Tärkeintä on vain varmistaa että tiedostossa /etc/crtmpserver/crtmpserver.lua (Ubuntussa /etc/crtmpserver/enabled_applications.conf) on flvplayback asetettuna käyttöön.
Katselusivu[muokkaa]
Tässä esimerkissä käytetään FlowPlayeria, mutta myös JWPlayer kelvannee.
- Hae FlowPlayer Flash osoitteesta http://flash.flowplayer.org/download/
- Hae sille kaveriksi RTMP-plugin täältä
- Muokkaa vaikka FlowPlayerin esimerkkisivua niin, että soittimen määrittely näyttää suunnilleen tältä:
<script> flowplayer("player", "flowplayer/flowplayer-3.2.15.swf", { play: { opacity: 0.0, label: null, // label text; by default there is no text replayLabel: null, // label text at end of video clip }, clip: {url: 'StriiminNimi', live: true, start: 0, autoPlay: true, provider: 'influxis', }, canvas: { backgroundImage: 'url(image/offline.png)' }, plugins: { influxis: { url: "flowplayer/flowplayer.rtmp-3.2.11.swf", netConnectionUrl: 'rtmp://crtmpserverinosoite/flvplayback/' } } } ); </script>
Näytön kuva (ja äänet) pitäisi nyt rullata selaimessa.