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 kortit, kuten esim. "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. 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

Ohjelma ei itsessään tue vielä kunnolla ääkkösmerkkejä, mutta voit korjata ne HTML-tiedostoihin jälkikäteen seuraavalla komennolla:

find html-hakemisto -type f -name "*.html" -exec sed -i 's/¼/ä/g; s/‖/ö/g; s/¾/å/g; s/←/Ä/g; s/½/Ö/g; s/→/Å/g' {} +

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

<< Takaisin arkistoon