news 2026/10/23 16:26:52

LIVI DAB+ 数字电台:一根 USB RTL-SDR 天线调出数字广播的完整玩法

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
LIVI DAB+ 数字电台:一根 USB RTL-SDR 天线调出数字广播的完整玩法

【免费下载链接】LIVI

Native CarPlay & Android Auto head unit for Linux (ARM/x64) & macOS (ARM/x64). Multi-session wired + wireless projection, zero-copy hardware video decoding, low-latency audio.

项目地址:https://gitcode.com/gh_mirrors/li/LIVI
点击查看免费下载

LIVI 是一款运行在 Linux 与 macOS 上的开源车机头单元(Head Unit),除了 CarPlay 与 Android Auto 无线投屏,它还内置了DAB+ 数字电台功能——只需要一根几十块钱的 USB RTL-SDR 电视棒,就能在车里收到数字广播:带台标 Logo、电台滚动文字(Dtxt)、实时信号质量指示,还能把喜欢的电台收藏、排序、隐藏。下面用这份指南带你从零把 DAB+ 玩起来。

一根 RTL-SDR 电视棒为什么能收数字广播?

DAB+(Digital Audio Broadcasting Plus)工作在 VHF III 频段,把多个电台打包在一个 1.536 MHz 的频道里传输,比传统 FM 抗干扰、带宽利用率高,还附带文字和台标数据。

LIVI 的接收方案是纯软件解调:

  • 硬件:RTL-SDR 电视棒(RTL2832U 芯片 + R820T/R820T2 调谐器),通过 USB 直连车机;
  • 采样:LIVI 以 2.048 MHz 采样率读取 IQ 数据流,恰好覆盖 DAB 的 OFDM 带宽;
  • 解调:Rust 编写的完整接收链路——OFDM 解调、FIC 信息帧解码、MSSC 交织、RS 纠错,再到 DAB+ 超帧重组与 FAAC 音频格式解析,全部在 livi-dab 中实现,不依赖任何第三方 SDR 库。

41 个 DAB+ 频道(5A–13F,174.928 MHz – 239.2 MHz)的完整频率表就写在这一文件里,见 lib.rs#L24-L66。USB 设备探测、寄存器初始化与 R820T2 调谐器驱动则由 livi-rtlsdr 直接对话芯片完成。

DAB+ 接收器设置指南:Gain 与频率校正

插上电视棒后,进入Settings → DAB+就能看到接收器页面。三个关键设置(定义见 dab.rs):

设置项作用建议
Automatic gain(自动增益)自动调节天线增益默认开启,弱信号时先试试关掉
Gain(手动增益)关闭自动增益后手动指定 dB 值数值过高会引入噪底,过低会丢信号
Frequency correction(ppm)校正廉价晶振的频率偏差,范围 -100 ~ +100 ppm锁定不稳时按 ±5 ppm 步进微调

💡 多数杂牌电视棒晶振偏差在 20 ppm 以内。信号时断时续、FIC 质量低时,优先怀疑频率偏差,而不是换天线。

扫描 41 个频道:从 Scan 到收藏

扫描流程在 dab.slint 界面中完成:

  1. 点击Scan,LIVI 会依次扫过 41 个频道,界面显示Scanning 7D这样的进度;
  2. 每个频道上发现的服务(Service)会自动列出:台名、简称、所属 Ensemble(广播集)、频道号、频率,甚至台标 Logo;
  3. 点击Stop scan可随时中止,已发现的电台立即可用;
  4. 在Station list中管理电台:
    • ⭐ 点收藏,收藏的电台排在前面;
    • 隐藏不想看到的台(隐藏台仍保留在配置里);
    • 自由拖拽调整顺序,顺序保存在本地配置中,重启不丢。

选中某台后,媒体播放器里会显示电台 Logo(没有 Logo 时显示彩色首字母徽标)、电台名和 Dtxt 滚动文字(例如 "Now on air: the afternoon show…"),右侧有信号质量条——这套状态结构可在 dab.slint#L17-L40 的DabState中对照查看。

把电台放到抬头显示屏上

LIVI 支持多窗口多屏输出(Multi-Display):Dash 与 Aux 窗口可以自由分配显示 Dashes、倒车影像或媒体播放器。也就是说,DAB+ 电台可以常驻在仪表屏上——开车时主屏投手机导航,抬头屏正好看着电台信息和 Logo。窗口分配在Settings → Window Settings里完成,多屏布局效果可参考官方文档 docs/index.html:

DAB+ 收不到台?常见排查清单

  • 🔌设备没被识别:确认是 RTL2832U + R820T/R820T2 组合的棒子,LIVI 只识别 VID/PID 为0x0bda:0x2838与0x0bda:0x2832的设备(见 lib.rs#L15),其他芯片的 SDR 棒不在支持范围;
  • 📡信号太弱:把天线尽量靠近车窗或移到车外测试;关闭自动增益手动降低 Gain,压低噪底;
  • 🎯锁定不稳:小幅调整dabPpm频率校正(±5 ppm 步进),锁定后界面上会显示fic_ok百分比质量值;
  • 📻能锁定但没有声音:正常现象——只有当前选中的服务才会解出音频(dabplus超帧解码),换一个已发现的服务试试。

小结

LIVI 的 DAB+ 数字电台做到了"即插即用":一根 USB RTL-SDR 电视棒,无需安装任何 SDR 软件,扫频、收藏、台标、滚动文字、多屏显示一应俱全。结合它的 CarPlay / Android Auto 无线投屏,一台低成本开发板或 Mac 就能变成功能完整、还能听数字广播的车机头单元。想深入了解更多细节,可阅读 README.md 的 DAB+ 章节与 livi-dab 源码。

【免费下载链接】LIVI

Native CarPlay & Android Auto head unit for Linux (ARM/x64) & macOS (ARM/x64). Multi-session wired + wireless projection, zero-copy hardware video decoding, low-latency audio.

项目地址:https://gitcode.com/gh_mirrors/li/LIVI
点击查看免费下载

相关推荐

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/10/23 16:24:24

蛋白互作实验怎么选?CoIP、Pull‑down、PLA 一文理清证据层级

简述蛋白质-蛋白质相互作用是细胞信号转导、代谢调控及病理过程的核心分子基础,其研究依赖于能够在不同实验条件下可靠捕获和验证互作关系的技术体系。免疫共沉淀(CoIP)、Pull-down和邻近连接分析(PLA)分别代表了基于细…

作者头像 李华
网站建设 2026/10/23 16:20:49

plotIt源码编译与ROOT直方图绘制实战指南

简介:这份资源是面向C开发者与高能物理数据分析人员的ROOT直方图绘制工具plotIt源码包,针对手动创建和管理直方图繁琐、代码细节分散的问题,提供自动化绘图与后处理能力,适合具备一定C基础、需要在ROOT环境下快速出图的研究者使用…

作者头像 李华
网站建设 2026/10/23 16:15:00

MATLAB计算全息函数库:衍射传播与相位恢复实现

简介:面向计算全息(CGH)研究的 MATLAB 函数库,适合光学实验人员与算法开发者快速搭建全息图生成、传播与重建流程,借助封装函数降低编程门槛。资源共 128 个文件:36 个 .m 源文件涵盖图像边界扩充、矩阵扩展…

作者头像 李华
网站建设 2026/10/23 16:13:13

日照时数转日总太阳辐射:840站批量换算的工程实现与避坑指南

简介:一套面向气象科研与环境数据分析的Python处理脚本,专门用于将全国840个气象站点的日照时数转换为日总太阳辐射,适合需要批量处理辐射数据、开展太阳能评估或构建气候模型的研究者。压缩包仅275KB,共3个文件,其中p…

作者头像 李华
网站建设 2026/10/23 16:06:56

电声测试原理与Python复现及SoundCheck工作流解析

简介:Sound Check 11.1 无加密狗安装包面向音频设备测试初学者、声学工程师及希望快速了解软件界面的技术人员,提供无需硬件加密狗即可启动并浏览主要页面的体验途径,便于在正式采购或系统学习前熟悉测试流程、模块布局与界面组织。压缩包共 …

作者头像 李华
网站建设 2026/10/23 15:53:59

Abaqus二次开发:从Python内核脚本到GUI插件实战指南

简介:对于需要扩展Abaqus功能的仿真工程师和理工科学生,《Abaqus二次开发 内核与GUI应用实例详解》是一本面向实际开发场景的实用书籍,聚焦内核脚本扩展与GUI定制两条主线。全书从Abaqus Python语言基础讲起,逐步覆盖内核数据结构…

作者头像 李华