我们即将着手实现一个运行Linux的设备,它(除其他外)将连接到一个软件定义的FM/AM收音机,该收音机还可以接收描述播放列表和其他类似内容的RDS数据。这是一个相对愚蠢的设备,主要包含一个或两个DSP,用作调谐器,否则很少处理信号。我在想,设备的内核驱动程序,然后是一个用户态硬件抽象层,它提供了一个标准化的接口,并抽象出了RDS数据接收和错误处理以及所有其他混乱的细节。最好是完全避免制作它,或者让我们的东西与已经存在的东西插件兼容,这样我们就可以在需要的时候为radio UI使用其他项目。
nhjlsmyf1#
您似乎正在建立新的硬件无线电装置?您可能需要建立此装置的驱动程序。您可以在here、here和here中找到一些入门说明。如果您的装置不是新装置,可能已经有driver in the Video4Linux2 project。目前似乎有一些RDS相关的项目是基于saa 6588内核模块的。根据本页所述,这些卡目前都有SAA 6588芯片组:
我建议您查看一些与Video 4Linux 2(v4 l2)相关的项目,其中有一个RDS decoding库。该库在用户空间中运行,因此RDS解码工作可以在那里为您完成:根据V4 L2规范,RDS解码器的原始数据从无线电设备中读取。数据由块组成,每个块的长度为3字节。所有解码必须在用户空间中完成。
这是一个complete API reference for Video4Linux2,这是一个article series to get acquainted with itRDS API is here的特定区段。此页面提供如何取得RDS数据是否可用的更新信息:通过查看结构体v4l2_tuner的rxsubchans字段,可以检测是否存在RDS信号:如果检测到RDS数据,则将设置V4L2_TUNER_SUB_RDS。
虽然它不是一个官方的API,但我发现了最后一个可能值得研究的小项目:
Here are some more radio related projects值得一看。
yhqotfr82#
GENIVI联盟(http://www.genivi.org/)是否有这方面的标准应用值得研究。他们正在专门为汽车“信息娱乐”目的开发这类标准,这似乎属于他们的标准化领域。不幸的是,他们似乎不公开发布他们的东西,所以你可能需要问周围或直接给他们发电子邮件。
nmpmafwu3#
GNU Radio怎么样?他们有对大量软件定义无线电组件的硬件支持,以及通过GUI与他们的“GNU Radio Companion”(GRC)轻松连接的数据流。它们使用Python和C++ API,可以访问您的UI层。在线可以找到许多示例。
3条答案
按热度按时间nhjlsmyf1#
Linux中的无线电支持
您似乎正在建立新的硬件无线电装置?您可能需要建立此装置的驱动程序。您可以在here、here和here中找到一些入门说明。如果您的装置不是新装置,可能已经有driver in the Video4Linux2 project。
目前似乎有一些RDS相关的项目是基于saa 6588内核模块的。
根据本页所述,这些卡目前都有SAA 6588芯片组:
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值得一看。
yhqotfr82#
GENIVI联盟(http://www.genivi.org/)是否有这方面的标准应用值得研究。他们正在专门为汽车“信息娱乐”目的开发这类标准,这似乎属于他们的标准化领域。
不幸的是,他们似乎不公开发布他们的东西,所以你可能需要问周围或直接给他们发电子邮件。
nmpmafwu3#
GNU Radio怎么样?他们有对大量软件定义无线电组件的硬件支持,以及通过GUI与他们的“GNU Radio Companion”(GRC)轻松连接的数据流。
它们使用Python和C++ API,可以访问您的UI层。在线可以找到许多示例。