This proposes is to implanting support teletext[1] in ETV.
Teletext by it self was between 1985 to 2010 and even now its is a populate service on European TV.
This is not mean that this service is declining as the we speaking and one of the reasons is the internet.
For the service on teletext are from EPG for the channel, news and weather to travel information (car trafic, train,Departures and arrivals) and even i have seen a news ticker and subtitles similar as the line 21 captions (EIA-608) in the us.
For how ETV handle this to split this in 3 mode.
Mode 1 static pages:
This is the most simple mode generating teletext page in a directory that located in /root/.local/share/ersatztv/teletext/<channel id>/static/<page nr>/<list>/<page>.[tti|t42]
where "<channel id>" is this can be the channel number, name or a uuid
The "static" directory means that the page is a static page
<page nr> this is the page number that is use for the this can be range from 100 to 899 that is accessible by the viewer and page that have a letter (range fro A to F) in the number is use as a in of band service or use by the broadcast or for higher extension levels ranging from level 1 to level 5 where level 3.5 and lower are supported by tv.
<list> if the user have multiple teletext page with the name number that he wand to shuffle thru a list of page with the same page number exclude subpage's.
For example a page show for each week day or a large number of teletext art that show random other.
This can be a option that a teletext page broadcast one page in block A and an other page for block B this behavior i have seen if a channel have two broadcasters for example in 1990s Cartoon Network broadcast from 7 am to 9 pm and TNT broadcast from 9pm to 7am the next day and each have there own 100 page and cartoon network switch there page every day with a new design.
<page>.[tti|t42] is the page that is broad cast on the tv and include all the subpage and hidden page that are use for showing the page on the tv.
mode 2 dynamic page:
This is the same structure as the static page but instate of a static page the page store is store is a template with a second file that describe what data is shown on the page and the position of the text.
This files are located in /root/.local/share/ersatztv/teletext/<channel id>/dynamic/<page nr>/<list>/<page>.[tti|t42|tttl]
The tttl (teletext template language) is a placeholder for the the file format that is use to place the text on the teletext page where the tti or t42 are use as the template.
mode 3 generate page:
This are the page that are generate by a 3th part program and are push to the ETV using the web interface wit the floating URL <etv IP address>/backend/teletext/<channel id>/<page nr>/<page>.[tti|t42]
The page are send be a PUT request to ETV and are send when the page are update.
For the broadcasting by ETV MPEG-TS are fully support teletext due to be a part of the DVB standard and i can confirm this is supported by ¨Video Lan Client" (VLC) and kodi.
HLS there is also a way using ttml[2] but this need be tested if we support this mode but for me is current unknown this is suppored by VLC or kodi.
As for the teletext specification that is be supported is "World System Teletext"[3] and as today is the only main standard that is use for classic teletext and there are opensource programs/library's to creating you own teletext page. (see a list here under
There is also the so call red button teletext and interactive tv, i go not further and beyond the scope of this post in this post except that the standard that i see mostly addopted in ETV is "Hybrid Broadcast Broadband TV"[6][7] (HbbTV and its is base on html5 and it's a open standard with public specifications where the other standards are base on java)
[1] https://en.wikipedia.org/wiki/Teletext
[2] https://www.w3.org/AudioVideo/TT/docs/TTML-Profiles.html
[3] https://en.wikipedia.org/wiki/World_System_Teletext
[4]https://en.wikipedia.org/wiki/Interactive_television
[5] https://en.wikipedia.org/wiki/Red_Button_(digital_television)
[6] https://en.wikipedia.org/wiki/Hybrid_Broadcast_Broadband_TV
[7] https://www.hbbtv.org/
Further reading:
Teletext resource:
specifications:
https://zxnet.co.uk/teletext/documents/ttiformat.pdf
https://github.com/peterkvt80/vbit2/wiki/Page-files
Teletext editor:
QTeletextMaker (offline): https://github.com/gkthemac/QTeletextMaker
Simon Rawles’ edit.tf (online): https://edit.tf/
Alistair Cree’s ZXNet Editor (online): https://temp.zxnet.co.uk/editor
python librarys
pyfax: https://github.com/mscroggs/pyfax
vbit-py: https://github.com/peterkvt80/vbit-py
WebVTT and SMPTE-TT:
https://www.w3.org/AudioVideo/TT/
https://www.w3.org/groups/wg/timed-text/publications/
https://ieeexplore.ieee.org/document/7291854/
https://sci-hub.se/https://ieeexplore.ieee.org/document/7291854
opensource media player that support teletext:
VLC: https://www.videolan.org/vlc/
KODI: https://kodi.tv/
HbbTV and interactive tv:
open IPTV forum OIPF specs (this is now a part of HbbTV)¨ https://www.smarttv-alliance.org/
HbbTV https://www.hbbtv.org/
Test videos with teletext:
A TV recording that include a teletext stream in MPEG-TS format: https://archive.org/details/20230924_0215_npo1_teletextTest_01min_52sec
Some other teletext samples https://ccextractor.org/public/general/tvsamples/