是否有Linux无线电标准?

kuarbcqp  于 2023-11-17  发布在  Linux
关注(0)|答案(3)|浏览(114)

我们即将着手实现一个运行Linux的设备,它(除其他外)将连接到一个软件定义的FM/AM收音机,该收音机还可以接收描述播放列表和其他类似内容的RDS数据。这是一个相对愚蠢的设备,主要包含一个或两个DSP,用作调谐器,否则很少处理信号。
我在想,设备的内核驱动程序,然后是一个用户态硬件抽象层,它提供了一个标准化的接口,并抽象出了RDS数据接收和错误处理以及所有其他混乱的细节。最好是完全避免制作它,或者让我们的东西与已经存在的东西插件兼容,这样我们就可以在需要的时候为radio UI使用其他项目。

nhjlsmyf

nhjlsmyf1#

Linux中的无线电支持

您似乎正在建立新的硬件无线电装置?您可能需要建立此装置的驱动程序。您可以在hereherehere中找到一些入门说明。如果您的装置不是新装置,可能已经有driver in the Video4Linux2 project
目前似乎有一些RDS相关的项目是基于saa 6588内核模块的。
根据本页所述,这些卡目前都有SAA 6588芯片组:

  • Terratec辛能600
  • KNC ONE电视台RDS
  • KNC One电视台DVR
  • TYPHOON电视调谐器卡RDS
  • Sundtek MediaTV Pro(厂商支持)
  • Sundtek USB FM收音机(FM发射机/接收机,由制造商提供支持)

RDS特定信息

我建议您查看一些与Video 4Linux 2(v4 l2)相关的项目,其中有一个RDS decoding库。该库在用户空间中运行,因此RDS解码工作可以在那里为您完成:
根据V4 L2规范,RDS解码器的原始数据从无线电设备中读取。数据由块组成,每个块的长度为3字节。所有解码必须在用户空间中完成。

RDS API

这是一个complete API reference for Video4Linux2,这是一个article series to get acquainted with it
RDS API is here的特定区段。此页面提供如何取得RDS数据是否可用的更新信息:
通过查看结构体v4l2_tuner的rxsubchans字段,可以检测是否存在RDS信号:如果检测到RDS数据,则将设置V4L2_TUNER_SUB_RDS。

Gnu无线电伴侣中的SDR RDS解码器DSP

虽然它不是一个官方的API,但我发现了最后一个可能值得研究的小项目:

Here are some more radio related projects值得一看。

yhqotfr8

yhqotfr82#

GENIVI联盟(http://www.genivi.org/)是否有这方面的标准应用值得研究。他们正在专门为汽车“信息娱乐”目的开发这类标准,这似乎属于他们的标准化领域。
不幸的是,他们似乎不公开发布他们的东西,所以你可能需要问周围或直接给他们发电子邮件。

nmpmafwu

nmpmafwu3#

GNU Radio怎么样?他们有对大量软件定义无线电组件的硬件支持,以及通过GUI与他们的“GNU Radio Companion”(GRC)轻松连接的数据流。
它们使用Python和C++ API,可以访问您的UI层。在线可以找到许多示例。

相关问题