Teletext Recovery Environment Setup Guide
This page will serve as a guide to explain what you should do to prepare an environment for teletext recovery.
This enivronment can be used only for the capture of the teletext data, or for both the capture and processing of the data. However for final clean-up of Teletext files you will likely need to have a suitable Microsoft Windows environment.
Objective
By the end of this guide, you should be in a position to begin the capture and processing of teletext data from VHS (or other supported formats like Betamax). I recommend that upon completion, you then read the next guide in this series that explains exactly how to capture the teletext data and process it.
What do you need to capture?
There aren't many components relating to the capture of teletext, but we will go through them first to ensure you are prepared.
A Computer
Yes unsurprisingly you will need a computer to complete the capture of teletext data, there are no "black-box" devices that I am aware of that you can simply "plug into" a VCR and it spits out a nicely formed teletext file (.T42).
Computers come in many varieties and formats however, so you'll want the best one for the job. Don't panic, you don't need a supercomputer to perform this work, most standard desktop PC's built between 2011-2015 should be perfectly capable of this work. You can get these machines very cheap (or sometimes free) on the second-hand market, however you will want to make sure it has the following:
- A multi-core processor - this is just to prevent any strange bottlenecks or unnecessary slow-down when running the operating system and any capture or processing applications. The faster the processor the quicker you can process the raw teletext data (sometimes just referred to as the "VBI data").
- A comfortable amount of memory - enough to run a modern operating system, but doesn't need to be overkill. My preference is 8GB, but 4GB should also be enough. Again if you try this with too little RAM you might have some system instability.
- A decently sized HDD or SSD - this needs to be enough for the operating system and applications, plus any amount of data you'd like to capture. Roughly 15 minutes of teletext capture will result in a 1.5-1.7GB file. SSD's are preferable because they are fast, but can still be expensive - whereas large capacity SATA drives (1TB+) can be obtained cheaply and readily. An SSD will improve the speed at which the environment boots, and can have some additional benefits to the processing time; however using a HDD is unlikely to cause any "dropped frames" when performing the capture. As with any computer system the disk should be in a healthy condition.Try and avoid using EMMC or SD Cards for storage.
- A standard PCI slot - this will actually be harder than you think. It needs to be the full-length standard PCI slot, not PCI-E or one of its shorter variants. This is why I suggest a PC from 2011-2015 when this port was still available on many computers. Although there are capture methods that do use USB, they are unreliable and the preferred capture card are almost always going to use the PCI interface.Shortly after publishing, I was informed by a community member TonyTheGeek that a way around this is to use a PCI-E to PCI riser board, similar to Amazon item ASIN:B08WRVDTQ3 or possibly Startech's pex1pci1 item.
- A network card - as expected this is going to be needed not only to download the capture software, but also keep it up to date. It also allows you to move captured / processed data easily to and from the machine. You can also, if you so desire, execute the capture process remotely via SSH.
These elements are optional, but can be helpful
- A dedicated graphics card - preferably a NVIDIA card that supports CUDA. NVIDIA have a resource that you can check to see if your dedicated card can support CUDA processing. CUDA enabled processing greatly speeds up (sometimes by a factor of 10) the speed at which you can process the raw teletext data ("VBI data"). It is often that the better the graphics card, the faster the processing.
You can't make use of this technology with graphics cards from other vendors, or integrated grahpics that are not provided by NVIDIA. - A "Mini-Tower" form factor case - most capture cards are older cards that are full height. This means that they will likely not fit in a "Small Form Factor" (SFF) case and definitely won't be usable in an "Ultra Small Form Factor" (USFF) case. A case is however optional, I personally run my current capture system without one, for the reason I can't find a case that is small and yet big enough to house the components!
This a Dell Precision 3620 from around 2018 - it can be picked up for less than £100 on the secondhand market.
This is the mainboard for a Dell Precision 3620, which has a PCI slot and was manufactured in 2018.
A Capture Card/Device
This is a must-have, there is no other magical way of getting the video data from your VCR to the computer.
Capture cards have been manufactured for many decades now, and have come in many varieties and form factors. The cards of choice are old Happauge WinTV PCI capture cards from around 2000. They should also really have a Conexant 878 IC present.
Yes there are many cards that exist that are similar, some have later revisions of the Conexant chip, some come in different form factors (such as USB) - however they're not the norm, and for the sake of everyone's sanity the community recommends a card as described above.
As for connectivity on the card, you will need to make sure it has at least a standard yellow RCA "composite" plug available. "TV Tuner" cards with just an aerial connector won't work. If S-Video is an option on the card that is also beneficial.
This is my capture card, you can see the Conexant chip is present along with a composite video input.
A VCR
You'll need a VCR that can play your tapes. Some prefer older VCRs to newer models, but there is a lot to still be debated on what is best. Preferably any VCR that doesn't "fiddle" with the picture is best, surprisingly many "value" VCR's of the 2000s do this but have no method for it to be turned off. This can include thing like sharpness control, which will affect the quality of the captures you achieve.
My suggestion would be to get a mid-range VCR produced sometime in the 2000s from a reputable brand such as Samsung, Sony, Panasonic, JVC etc. Preferably with a remote so you can access any menus that might assist with picture control. Manual tracking is also beneficial, certainly if you have problematic tapes. Fancy things like jog-wheels and S-VIDEO output aren't necessary, but can be nice to have. Most European VCR's from this era will have SCART and RF outputs. This dual-output can be useful as you can connect the RF to a small TV for monitoring, and the SCART to your capture card using an appropriate SCART to Composite cable.
The VCR doesn't need to have anything on it that related to teletext (either on the unit or the remote) to be able to read the raw teletext data.
Video Cables
To connect your VCR to your capture card you will likely be able to get away with buying a single cable. One end of the cable should be a SCART connector, and the other end should be the standard Red, White, Yellow RCA plug composite connector. If your card supports it, you may want to go for a SCART to S-VIDEO cable.
To my knowledge they never produced a capture card with a SCART socket on it, so you won't be able to use a SCART to SCART cable.
The cable should be of good quality. You don't need to spend large sums of money on fancy cables, but the cable should feel "sturdy" in your hands - this is mainly to prevent any unwanted noise, and for generally better build quality.
If you'd like to have the ability to monitor your VCR while it is capturing there are two solutions
- Solution 1 (my preference, diagram towards end of guide) - connect the RF out of your VCR to any TV that accepts an analogue input, and tune a spare TV channel to the correct frequency. Almost all VCR's will be able to output video on both RF and SCART at the same time. This method allows you to monitor the content going into the capture card with nearly zero latency, this is useful if your tapes contain multiple services (i.e. multiple records from different channels, and/or times).
- Solution 2 - run a video monitoring application within the operating system such as tvtime. This does work and will show you the content that is being delivered over SCART to the capture card; however many users have had issues where by running both tvtime and the teletext capture process at the same time can lead to lost frames, or freezing of the capture process entirely.
Video Tapes
Again seems obvious, yes you're going to need a few tapes to do this. Hopefully more than one, to make your time worthwhile. Setting this project up to only process one or two tapes is a lot of wasted effort in my opinion, you may be better to find someone local who is doing a lot of these recoveries.
So when it comes to tapes what should you look for? Ultimately they need to be tapes that have recordings on them made from live broadcast television. Now this doesn't just mean BBC1, BBC2, ITV and Channel 4 - as it is possible to recover text broadcast over cable or satellite from channels such as Sky Movies, Sky One, Living, Bravo, Trouble etc.
The tapes should be in good condition. This means no mould, if your tapes have mould then there are guides online on how to clean this up. SP recordings are generally preferred as they have generally have a stronger signal on the tape to work from, LP (or an extended LP technology) can greatly reduce the success rate of getting any legible text extracted. Along with this, you need to hope that the original individual who recorded the tape had a good signal to their television set in general. Ghosting or heavy static grain on the tape can also reduce the success rate of recovery. The tape should also play with a steady picture, drop-outs will momentarily pause a capture process but it will resume soon after.
It's usually worthwhile running a few minutes of capture on each tape to confirm text services are contained within, then commit to a 15 minute (or more) capture to get close to a full service recovery.
Tapes should contain content from a period when teletext was being broadcast; however depending on your region the time that teletext broadcasts ceased varies.
Before you ask, there is no way of recovering teletext from DVD-R's.
Setting Up Your Environment
Hopefully you've now got all the bits you need to start recovering teletext from VHS. Now to get setup.
Capture Hardware Installation
Install the capture card into a free PCI slot in the computer.
Install any hard disk drives (HDD), solid state drives (SSD) or memory (RAM) into the system.
Turn it on to confirm the system completes POST.
Operating System Installation
We now need to install an operating system. If you were hoping to use Microsoft Windows then you're out of luck. Microsoft Windows is only supported for the last phase of VHS Recovery, that is the manual tidy up of recovered data fixing spelling mistakes and graphical glitches.
The Teletext recovery and processing phases are built with a Linux operating system in mind. As the tool for capture, vhs-teletext, is built on Python it can work on many different distros of Linux. However the reason for using Linux instead of Windows, is because Linux will reveal the VBI (Vertical Blanking Interval) interface of your capture card.
The common operating system of choice is the venerable Ubuntu. Many of the guides presented on this website will be referring to Ubuntu as the operating system, however please use the Linux distro you are most comfortable with.
Installation of a Linux operating system is relatively simple. Get a copy of the operating installer from the official maintainers website or use a tool like UNetBootin and select the Linux distribution you want and write it to a suitably sized USB memory stick, or DVD-R.
Insert the USB stick or DVD that contains the installation into the PC, and boot from it. When asked, go for a graphical operating system (it just makes things easier to troubleshoot) and install it to the storage device installed inside the PC (preferably an SSD).
An example of UNetbootin, a tool used to create Linux installation media.
Connecting Everything Up
Conneting everything is a relatively simple task.
The most simple connection is to connect the composite cable from your VCR to the composite in jack on your capture card. That is all you need to do.
However, if you want to have the "live" monitor ability that doesn't rely on software then you will want to connect the system up as so.
As you can see, there are two seperate connections made from the VCR. Most VCR's should output video on both connectors at the same time.
Software Installation
You should now be at a stage where you have a functioning Linux operating system to work with. As previously mentioned the following instructions will be related to the Ubuntu operating system, if you are using a different distro make the necessary changes to the following commands (such as those for installing software).
We now need to get the relevant software set up to allow for the capturing and processing of teletext data. This process is reasonably simple. However this set of instructions does not go into the requirements for configuring CUDA processing.
These commands are intended for use on Debian based Linux distros, like Ubuntu. If for any reason these steps become out of date, these steps can also be found on the GitHub page for vhs-teletext.
- First of all open the terminal on the system.
- We install to install git, type in sudo apt update this will update the list of packages available to download.
- Next type sudo apt upgrade this will update any existing packages installed.
- Now type in sudo apt install git
- Type in git clone https://github.com/ali1234/vhs-teletext this will download the vhs-teletext program files to your home directory (or whichever directory you are currently in).
- Now we are going to install Python - this might already be installed, type sudo apt install python3
- Python should now be installed, or you may have had a message that tells you it is already the newest version available.
- Now we are going to install Pip, this is useful for adding additional components. Type sudo apt install python3-pip
- Now we are going to install the vhs-teletext software, type cd vhs-teletext
- Now type in pip3 install -e .[spellcheck,viewer]
- Teletext should now be installed, type teletext in the prompt and you should see the help commands.
Although not necessary it is helpful to also install "TV fonts".
- Open the terminal if you closed it.
- Type in sudo apt-get install tv-fonts rxvt-unicode
- Type cd /etc/fonts/conf.d
- Type sudo rm 70-no-bitmaps.conf
- Type sudo ln -s ../conf.avail/70-yes-bitmaps.conf .
- Reboot the PC
If you want to launch a terminal with "Teletext" fonts then type urxvt -fg white -bg black -fn teletext -fb teletext -geometry 41x25 +sb &
Again although not necessary, it is often extremely helpful to install the tvtime application. This small utility was intended for use to view content coming into a digital TV card, of which your capture card can be considered one. It allows for viewing of the video content coming into the composite port of your capture card within your PC. It can also alleviate issues wherein the capture process has not properly chosen the composite video input, and instead is trying to use the RF input on the card or S-VIDEO (if present).
- To install tvtime, type sudo apt install tvtime
- When asked which standard, you are likely going to choose PAL but choose the region of the tapes you are likely going to be working with.
- When asked for your frequency table, again chose your location as per the list. (for me it is Europe)
- I'd recommend now rebooting
- Open a terminal, type tvtime
- Right click in the window, select Input configuration
- In this menu choose Change video source to Composite1 (or which ever video input you are currently connected to)
- You should now see the content being output by your VCR.
tvtime is now running and showing the output of the VCR. tvtime's OSD is also on screen for the input selection.
The last thing to do is to check that the VBI is present as a device within the Linux operating system, to do this:
- Open terminal
- type cd /dev
- type ls | grep vbi
All going well it should return vbi0 - if nothing shows then it may be that your capture card does not reveal the VBI interface to the operating system.
What Next?
The next guide you'll likely want is Teletext Capture and Recovery Guide a guide that explains how to capture and process teletext data.
Further Reading
If you are a bit lost with all of this, maybe these links may help
- My Teletext recoveries so far
- Teletext Wikipedia article that explains what Teletext is
- ali1234's GitHub repository for the vhs-teletext programme
- The Teletext Archaeologist's website that explains a bit more about how this all works
- The Teletext Archive, as operated by The Teletext Archaeologist himself, a database of recoveries made so far
- The Teletext Archaeologist's twitter profile for various bits of multimedia relating to the format
- ZX Guesser's page about teletext recovery.
- A YouTube video by ZXGuesser performing some advanced recovery techniques with his own toolset
- A YouTube video by The Centre for Computing History of a talk by The Teletext Archaeologist from Block Party 2022 that explains how this all started.
- The vhs-decode project on github is another project that uses RF capture of the video stream, its a little bit more in-depth than what is proposed here, but has reports of being effective.
- The Discord server where the community are ready to help you with any questions or queries you may have
What does the community use?
Sometimes it is helpful to know what setups the community use already to process their tapes, these are detailed below.