Soapy SDR Interface
Soapy is a vendor-agnostic SDR support middleware. It can be used to connect to a large variety of existing software, such as GNURadio.
Current development status
We have a prototype Soapy driver running for all three major OSs. It can be used to receive a 122.88 MHz-wide stream @ 12 bits per sample. The driver uses 3 bytes per I/Q sample over the wire (368 MBps) and unpacks it to three different possible formats for the user to process, CS8 (246 MBps, 8 bits per sample, lossy), CS16 (491 MBps) and CF32 (983 MBps).
Data is packed to 3 bytes per I/Q sample (24 bits, lossless), because otherwise the USB transfers wouldn't be able to keep up with it, as USB 5 Gbps is actually closer to 3.5 Gbps after the 8/10 encoding and additional protocol overhead.
The Soapy driver requires no USB driver install, as it uses WinUSB on Windows and LibUSB on Linux and MacOS.