SoapySDR是开源的规范化的软件无线电开发 API 和运行库,用于操作SDR硬件设备。使用SoapySDR,您可以在很多环境下对SDR设备进行实例化、配置以及流输入输出操作。
绝大多数市面的软件无线电设备都受到SoapySDR支持,并且有非常多的开源应用软件依赖SoapySDR运行库。SoapySDR还带有GNU Radio、Pothos SDR开发框架的接口模块。
SoapySDR遵循 Boost Software License - Version 1.0 发布,由 Pothosware 项目组开发。
SoapySDR开发框架如下图所示:
SoapySDR支持的操作系统包括Linux、Win、OSX,支持的SDR硬件设备包括LimeSDR、HackRF、BladeRF、SDRPlay、PlutoSDR、AirSpy、RTL-SDR、UHD(USRP)、Novena RF等等。
大量软件无线电应用底层使用SoapySDR,比如CubicSDR、QSpectrum Analyzer、GQRX、GNU Radio、PothosSDR等等。
SoapySDR提供面向硬件设备用户的ClientAPI以及面向硬件开发商的DriverAPI。
ClientAPI提供跨平台的统一的操作接口,方便用户操作各种各样的软件无线电硬件,实现无线信号的收发和调制解调。
DriverAPI面向硬件开发商,让开发商按照接口要求提供驱动,使得SoapySDR能够支持软件无线电硬件。
SoapySDR完整生态如下图所示: