为业余无线电重振图文电视

Hacker News Top 新闻

摘要

本文详细介绍了一个项目,旨在将模拟图文电视系统重新用于业余无线电,利用现代技术和开源字体,为业余无线电爱好者重现经典的图文电视体验。

暂无内容
查看原文
查看缓存全文

缓存时间: 2026/06/02 15:33

# 业余无线电让图文电视重获新生 很久以前在欧洲,电视遥控器上有一个神奇的**图文电视**(teletext)按钮。在互联网进入千家万户之前的那些年,按下那个按钮,就会调出图文电视数字信息服务,里面包含数百个不断更新的页面。20世纪80年代和90年代,我住在爱尔兰时,家人每天都会多次访问国家图文电视服务——Aertel,查看天气、新闻简报,以及电视节目指南和机场航班到达信息等。 那是一个优雅的系统:快速、低带宽、不受用户负载影响,即使在模拟电视屏幕上也能显示清晰可读的文字。所以,当我最近看到Aertel测试传输40周年纪念时,它重新激活了我心中盘旋多年的一个想法:我能否制作一个业余无线电版本的图文电视? ## 什么是图文电视? 图文电视最初在英国开发,由BBC以Ceefax的名义向公众推出。它利用了模拟电视信号的一个特性。这些信号将视频帧传输为亮度和颜色的行,外加一些不显示的额外空白行。图文电视将数字信号附加在这些空白行上,随时间传输一个页面轮播。观众使用遥控器输入所需页面的三位代码,通常几秒钟内轮播就会循环并显示所需页面。 图文电视在8位时代通过放大字母数字字符、通过寻找对角线相邻的现有像素来插值新像素、并在字符间添加空白,创造了异常清晰易读的文本。图形字符不会插值,而是采用称为sixels的块状像素块(2×3排列)。我的现代版本使用了开源字体Bedstead,它复制了图文电视的外观,包括图形字符。 图文电视由八种颜色的字符组成。字符流中的控制代码可选择颜色,还能产生闪烁文本和双高字符等效果。得益于图文电视核心的SAA5050字符生成芯片,其文本清晰度优于当时大多数计算机。尽管该芯片内部将字符存储在6×10像素的单元中——比1980年代家用电脑典型的8×8像素单元像素更少——但SAA5050会实时为字母数字字符插值额外像素,使有效分辨率达到10×18像素。代价是非常低分辨率的图形,字符使用2×3的块状像素。 图文电视屏幕使用40×24字符网格。这意味着1KB内存可以存储一整页多色文本,而例如Commodore 64上存储类似数量的文本需要两倍的内存。BBC Micro计算机利用了这一点,在其主板上放置了一片SAA5050,可以在计算机的一种图形模式下访问。尽管图形简陋,但一些教育游戏使用了这种模式,最著名的是**Granny's Garden**,它在英国学童中占据了与**The Oregon Trail**在美国学生中相同的文化地位。 到2010年代,大多数图文电视服务已停止广播。但图文电视仍被许多人深情铭记,爱好者们正在让它保持活力:恢复和归档旧内容,运行基于互联网的带有当前新闻资讯的服务,以及开发使现代电视能够创建和显示图文电视的系统。 ## 让图文电视重新上线 我想做一些不同的事情。受BBC Micro将图文电视用于自身目的的启发,我认为它可能是一个很棒的无线电协议。特别是,我认为它可以成为慢扫描电视(SSTV)的数字对应物。 SSTV是一种传输图片的模拟方法,通常包含带有业余无线电呼号和其他信息的横幅。SSTV很有趣,但名副其实地慢——最流行的协议发送一张图片大约需要不到2分钟——而且很难获得完整清晰易读的文字图片。因此,SSTV图像通常被多次广播。 图文电视仍被许多人深情铭记。 我决定使用AX.25协议发送图文电视,该协议将0和1编码为可听音调。对于VHF和UHF传输,以1200波特率传输,发送一个图文电视屏幕需要11秒。在HF波段,AX.25数据通常以300波特率发送,这会导致每屏仍可接受的44秒。当图文电视页面被重复发送时,任何丢失或损坏的行都会被新行填充。因此,在大约2分多钟的时间里,我可以在HF上发送三遍屏幕,接收器会自动组合数据。我还希望用Python构建系统以实现可移植性,包括用于创建页面的编辑器、AX.25编码器和解码器,以及用于显示接收图像的显示器。 我之前没有这样做的原因是因为它需要消化AX.25标准和图文电视官方规范的细节,然后将它们转化为一套软件,而我似乎总没有时间去做。所以我尝试了一个实验中的实验,转向了"氛围编程"。 尽管氛围编程在开发者中很受欢迎,但我对此持保留态度。即使不考虑对AI垃圾内容、环境和水资源消耗以及内存占用的担忧,我仍然担心氛围编程带来的对集中化系统的依赖。DIY项目的意义恰恰在于自己动手。DIY项目让你可以为自己目的制作东西,而不是仅仅在别人的利润率和政策范围内运作。 尽管如此,远距离批评一项技术并不理想,所以我将Anthropic的Claude引向AX.25和图文电视规范,并告诉它我想要什么。经过大约250,000到300,000个token以及几个晚上关于bug和功能的来回交流,我让整个系统运行起来,而没有写一行代码。老实说,我怀疑没有氛围编程,这个我称为Spectel的系统根本不会出现。 但我没有学到任何关于图文电视工作原理的新东西,对AX.25也只多了解了一点点。更新取决于我支付Anthropic的费用。所以我仍然对氛围编程深感矛盾。无论如何,还有一个最终测试:在HF波段上试用Spectel。当然,这意味着我需要以太网中有愿意合作的伙伴。所以,如果你是一位业余无线电爱好者并想提供帮助,请在下面的评论中告诉我!

相似文章

Casio 计算器上的真实 Telnet BBS

Hacker News Top

文章详细介绍了作者在 Casio VX-4 计算器上搭建 Telnet BBS 的项目,使用 BASIC 编程和 RS232 串行通信,灵感来源于其业余无线电爱好。