Teksti-TV-arkisto

<< Takaisin arkistoon

Tietoa teksti-tv-sivujen digitoinnista

Tiesitkö, että kun aikoinaan nauhoitit VHS-kasetille telkkarista jonkun ohjelman, nauhalle tallentui kuvan ja äänen lisäksi myös teksti-tv-signaali? Tavalliselle VHS-kasetille nauhoitettuna tämä signaali on niin suttuista, että television dekooderi ei pysty sitä enää purkamaan, mutta nykyisin on olemassa ohjelma, jolla tämän suttuisen teksti-tv-signaalin voi prosessoida takaisin katsottavaan muotoon.

Kuvaruutukaappaus, jossa näkyy teksti-tv-signaali
Analoginen teksti-tv-signaali lähetettiin kuvaputkellä näytettävien kuvaruutujen "välissä" olevassa tyhjässä tilassa. Ylläolevassa esimerkissä se näkyy kohinaisena alueena testikuvan yläpuolella. (Kuva: Harry Munday, CC BY-SA 4.0)

Kyseessä on Alistair Buxtonin käsialaa oleva vhs-decode-niminen avoimen lähdekoodin Python-ohjelma Linux-käyttöjärjestelmälle, jonka repositorio löytyy täältä:
https://github.com/ali1234/vhs-teletext/

Tarvittava laitteisto

Videonauhurin lisäksi tarvitset myös analogisen kaappauskortin, jolla on mahdollista kaapata kuvaruutujen välissä oleva ns. VBI-alue (Vertical Blanking Interval). Tällaisia kortteja ovat mm. Conexant CX2388x-xx -piireihin perustuvat ns. "CX-kortit".

Mikäli kaappauskortin ajuri paljastaa käyttöjärjestelmälle /dev/vbi0 -laitteen, on se todennäköisesti sopiva tähän tarkoitukseen. Ennen kuin jatkat, varmistu siitä, että kaappauskortti toimii oikein kokeilemalla ensin kaapata normaalia videokuvaa videonauhuriltasi esim. VLC-ohjelmalla.

Vhs-teletextin asennus

Suosittelen asentamaan vhs-teletextin VirtualEnvillä luodun virtuaaliympäristön sisään, jotta se ei sotke käyttöjärjestelmän muita osia.

Varsinaiset asennusohjeet löydät README.md-tiedoston INSTALLATION-osiosta. Mikäli asennus pysähtyy virheeseen, yleensä syynä on jokin puuttuva riippuvuus. Näissä tapauksissa tarkista virheilmoituksesta puuttuvan paketin nimi ja asenna se käyttämäsi Linux-jakelun paketinhallinnasta.

Digitointi

teksti-tv-sivujen digitointi koostuu vähintään seuraavista vaiheista:

  1. VBI-signaalin tallentaminen
  2. VBI-signaalin prosessointi t42-striimiksi (dekonvoluutio)
  3. t42-striimin litistäminen virheiden vähentämiseksi (squash)

VBI-signaalin tallentaminen

HUOM: Ennen kuin aloitat, varmista, että kaappauskorttisi piiri löytyy vhs-teletextin tukemien korttien listalta. Listan saa esille teletext record --help -komennolla. Edellä näkyvä tallennuskomento on kirjoitettu cx88-piiriä silmällä pitäen. Mikäli käytät jollain muulla piirillä varustettua korttia, korvaa komennossa oleva -c -parametri oman korttisi mukaisella parametrilla.

Kelaa nauha sen ohjelman alkuun, josta haluat digitoida teksti-tv-sivuja. Aloita videon toisto nauhurissa ja aloita tietokoneella VBI-signaalin tallennus komennolla:

teletext record -c cx88 -d /dev/vbi0 > capture.vbi

Hyvälaatuinen lopputulos vaatii yleensä 20 - 30 minuutin mittaisen tallenteen, mutta toisinaan myös lyhyempikin tallenne riittää kelvolliseen lopputulokseen. Ota kuitenkin huomioon, että lyhyemmät tallenteet eivät välttämättä sisällä kaikkia alasivuja. Kun olet tallentanut riittävästi, lopeta tallennus painamalla Ctrl+C.

VBI-signaalin prosessointi t42-striimiksi

Tallennettu VBI-signaali on nyt tiedostossa capture.vbi. Seuraavaksi prosessoidaan tämä tiedosto t42-striimiksi, joka sisältää teksti-tv-sivujen tiedot:

teletext deconvolve capture.vbi > stream.t42

Mikäli koneessasi on NVidian näytönohjain ja asensit ohjelman CUDA-tuen kanssa, deconvolve-komento käyttää näytönohjaintasi automaattisesti apuna laskennassa. Muilla näytönohjaimilla voit käyttää OpenCL-tukea lisäämällä -O -parametrin komentoon:

teletext deconvolve -O capture.vbi > stream.t42

Kun komento on suoritettu, voit tarkistaa, että t42-striimistä löytyy teksti-tv-sivuja seuraavalla komennolla:

teletext filter -r 0 stream.t42

t42-striimin litistäminen

Viimeinen vaihe analysoi t42-striimistä löytyviä teksti-tv-sivuja ja pyrkii päättelemään mikä niistä on todennäköisimmin vähiten virheitä sisältävä kopio. Virheiden vähentämisen lisäksi litistys myös nimensä mukaisesti pienentää tiedoston murto-osaan alkuperäisestä koostaan. Litistys suoritetaan seuraavalla komennolla:

teletext squash stream.t42 > output.t42

Jatkotoimenpiteet

Mikäli sait asennettua vhs-teletextin asennusohjeissa mainitut fontit ym. riippuvuudet, voit nyt avata kaappaamasi teksti-tv-materiaalin interaktiivessa selaimessa komennolla:

teletext service output.t42 | teletext interactive

Voit myös muuntaa sivut HTML-muotoon seuraavalla komennolla (korvaa html-hakemisto haluamallasi hakemistolla):

teletext html html-hakemisto/ output.t42

Kopioi lopuksi vhs-teletext/misc/ -hakemistossa olevat tiedostot html-hakemistoosi, jotta sivut näkyvät selaimessa oikein.

<< Takaisin arkistoon