TV-ohjelmien automaattinen nauhoitus

RSS-syötettä hyödyntävä nauhoitusohjelma koekäytössä


14.9.2012 Arto Jääskeläinen


Taustaa

Huomattava osa television ohjelmista on katsottavissa myös netin kautta. Ohjelmia pystyy myös nauhoittamaan tietokoneella jolloin ohjeman voi katsella myöhemmin kun siihen on sopiva hetki. Hitaammalla nettiyhteydellä tai tietokoneella tästä on myös se etu että ohjelma näkyy pätkimättä. Nauhoitusta varten on kehitetty ohjelmia jotka mahdollistavat nauhoituksen käynnistämisen suoraan webbiselaimesta. Ohjelmat julkaistaan GPL-lisenssillä eli niiden käyttö ja levittäminen on vapaata.

Nykytila

Sekä YLE Areenan että MTV Katsomon ohjelmia pystyy nauhoittamaan suoraan Firefox -webbiselaimesta asentamalla ensin tarvittavat ohjelmat. Käsittelen tässä yhteydessä vain järjestelmää joka on alkuaan kehitetty Linux: illa käytettäväksi. Huomattava osa kehitykseen liittyvistä asioista on käsitelty Ubuntu-foorumilla:

http://forum.ubuntu-fi.org

Ohjelmien testaus ja ohjeistus on tehty aika pitkälle Ubuntulla mutta toteutuksia voi soveltaa muihinkin Debian Linuxeihin. Asennusohjeet Ubuntulle ja samankaltaisille löytyvät täältä:

http://www.homelinuxpc.com/download/Areenan_nauhoituksen_asennus.html

Tätä klikkaa-ja-nauhoita -systeemiä on käytetty pitkään Firefox: ssa ja nauhoituksen toiminta YLE Areenan kanssa on ongelmatonta. Myös MTV Katsomon nauhoitus toimii teknisesti siinä laajuudessa kuin MTV lähettää tarvittavan streamin ulos.

Nykyisen Areenan nauhoitusohjelman ”moottorin” eli komentoriviohjelmana toimivan ”yle-dl” -ohjelman kehittäjä on Antti Ajanki. Hänen sivustonsa tuohon liittyen on täällä:

http://users.tkk.fi/~aajanki/rtmpdump-yle/

Oma osuuteni (Arto Jääskeläinen) on ollut jatkaa loput tuosta eteenpäin eli ”kuorien” ja asennusohjelmien rakentaminen tuon moottorin ympärille Linux: ssa. Tavoitteenana on ollut tehdä kokonaisuudesta riittävän helppo sekä asentaa että käyttää ja samalla dokumentoida asennustoimet ymmärrettävästi. Käytännössä tämä tarkoittaa että olen rakentanut .deb -asennuspaketit, kirjoittanut asennusohjelmat, kehittänyt menujärjestelmää Firefox: lle, kirjoittanut ohjeita ja ylläpitänyt omaa asennuspalvelinta. Ubuntu-foorumin käyttäjät ovat auttaneet hyvin monipuolisesti, antaneet hyviä ideoita ja teknisiä ratkaisuja. Kiitos kuuluu kaikille heille ja ohjelmien käännösongelmien ratkomisesta Ubuntu-foorumin käyttäjälle ”nm”.

Uusi idea testiin

Mahdollisuus valita Firefox: in menusta ohjelman nauhoitus on jo hyödyllinen ominaisuus mutta jättää vielä toivomisen varaa:


Automaattinen nauhoitus jo koekäytössä

Idean testaus alkoi alkuvuodesta 2012 ja se näytti erinomaiselta. Tietokone hoitaisi sivupuuhinaan tv-ohjelmien nauhoituksen netin kautta ilman että tarvitaan mitään lisälaitteita. Tuohan on itseasiassa toiminnaltaan ”nauhoittava digiboxi netin kautta” omassa tietokoneessasi.

Idean testaukseen käytetyn tynkäkoodin jälkeen on kehiteltävää riittänyt. Ohjelma on kirjoitettu uusiksi jo useamman kerran ja se on saanut samalla oleellisia parannuksia. Tärkein osa on ohjelmoitu diimoniksi (taustaohjelmaksi joka pyörii ilman että käyttäjän tarvitsee olla kirjautuneena tunnuksellaan). Ubuntussa esimerkiksi tämän taustapalvelun voi tutulla tavalla käynnistää ja sammuttaa ”sudo service <palvelun_nimi> start/stop”.

Nykyisen ensiversion toiminta vaikuttaa vakaalta ja on jo toiminnaltaan käyttökelpoinen. Kehitettävää varmasti löytyy ja muutoksia voi tapahtua.

Uusi ohjelmisto sai nimen ”Auto DL” kuvaten ohjelmiston tehtävää.


Toteutuksesta ja tekniikasta

Ohjelman asennuksen jälkeen Firefox: ssa hiiren oikeanpuoleseen menuun on liitetty uusi valinta joka osaa avata RSS-napin takaa syötteen ja rakentaa siitä menun. Käyttäjä valitsee ”rasti ruutuun” menetelmällä ohjelmat joita jatkossa nauhoitetaan automaattisesti. Talletuksen jälkeen valinnat säilyvät vaikka käyttäjä ei ole kirjautuneena koneelle. Valinnat ovat kullekin käyttäjätunnukselle erikseen, toinen käyttäjä samalla koneella voi tehdä ja tallettaa omat valintansa.

Taustalla syötelukijoita hallitseva ”Feed Manager” -ohjelma (=”syötelukijoiden pomo”) havaitsee kaikkien koneen käyttäjien valinnat ja käynnistää vastaavasti rss-lukijaohjelman seuraamaan kutakin syötettä ja nauhoittelemaan seurannan luoneen käyttäjän omaan ”Videot” -kansioon. Jos käyttäjä poistaa aiemmin valitsemansa syötteen kaikki ohjelmat seurattavien tv-ohjelmien listalta niin ”rss-lukijoiden pomo” huomaa ilman työjonoa jääneen rss-lukijan ja sammuttaa sen. Syötelukijat pitävät kirjaa jo nauhoitetuista ohjelmista ja kirjoittavat myös lokitiedostoon tapahtumat. Samoin syötelukijoita hallitseva ohjelma merkitsee tapahtumat omaan lokiinsa. Toteutus hyödyntää eri kehittäjän (Antti Ajanki) tekemää ”yle-dl” ohjelmaa itse nauhoitustapahtumaan.


Yhteensopivuus

Uusi tekniikka on kehitetty YLE Areenan RSS-syötettä käyttäen. Syötelukijan ohjemakoodi on kirjoitettu tulkitsemaan Areenan RSS-syötteen käyttämää XML-schemaa. Syötekoodia muuntavan osan säännöt on kuitenkin kirjoitettu pieneksi erilliseksi ladattavaksi ohjelmamoduliksi jolloin uudenlaisen syötteen tulkintaan saattaa riittää yksi uusi syötteen muunnoksen sääntötiedosto. Tuo voi helpottaa esimerkiksi Katsomon tai minkä hyvänsä myöhemmin käyttöönotettavan YLE Areenan kaltaisen RSS-palvelun lisäämistä automaattinauhuriin.

Ohjelma noudattaa RSS-syötteen välittämää ttl-parametria. Tämä mahdollistaa esimerkiksi syklin pidentämisen huoltokatkon alla ja palaamisen normaaliin katkon jälkeen. Teknisenä erikoisuutena, ohjelma luo tilapäisiä .tsv taulukkotiedostoja syötteestä joita voi halutessaan selata toimisto-ohjelmilla (taulukkolaskenta). Syötteessä esiintyvät poikkeamat osuvat silmään näissä heti.


Sponsorit ?

Sponsoreita tällä uuden tekniikan kehitystyöllä ei ole tätä kirjoitettaessa ensimmäistäkään. Kehitystyö on tehty teknisestä mielenkiinnosta ja omaa/perheen aikaa runsaasti käyttäen. Ohjelman koodi on julkaistu avoimena (GPL) ja on kenen hyvänsä vapaasti käytettävissä. Sponsorointi toki auttaisi omistamaan aikaa kehittelyyn mutta merkilliseksi kokemani Suomen lainsäädäntö (juttua tuosta muualla) estää yksityshenkilöä edes pyytämästä sponsorointia julkisesti oli tarkoitus tai kehiteltävä idea miten hyvä/hyödyllinen tahansa.


Lisätiedot ja ”Auto DL” -ohjelmiston kehittäjä: