75 releases (14 breaking)
Uses new Rust 2024
| 0.15.1 | Nov 30, 2025 |
|---|---|
| 0.14.2 | May 19, 2025 |
| 0.12.0 | Mar 3, 2025 |
| 0.6.1 | Dec 7, 2024 |
| 0.4.1 | Nov 14, 2023 |
#194 in Audio
63 downloads per month
Used in sparslog
1MB
11K
SLoC
Rust Radio
A library for digital signals processing in the spirit of GNU Radio.
Differences from GNU Radio
Pro
- Written in Rust instead of C++ & Python.
- Easier to get things right than C++.
- More performant than Python (and possibly more performant than C++).
- Easier to ship as a built binary.
- Type safe streams.
Con
- GNU Radio is obviously way more mature.
- GNU Radio has a very nice UI for iterating on graphs.
Missing stuff before declaring 1.0
- A clear strategy for optional output streams.
- Is the current
Option-based solution good enough for 1.0?
- Is the current
- SymbolSync block at least have the right API.
AsRef<Path>vsInto<PathBuf>?- What exactly is the purpose of
BlockEOF? - Should
produce()takeInto<Vec<Tag>>? Less copying. - Block structs have needless trait bounds, just to be passed to generated impl sections.
- Should
Pendingreturn a time estimate? - Or better yet: The graph should do some fancy heuristic to hone in on the
perfect time when to call again.
- Great for hardware like audio, SDRs.
- Max ceiling for e.g. TCP streams.
- Maybe both. Strobe could do with being able to just say.
- At least one example of dynamically updating parameters.
Dependencies
~8–44MB
~657K SLoC