liquid-dsp 1.8.0

Software-Defined Radio Digital Signal Processing Library - https://liquidsdr.org liquid-dsp is a free and open-source digital signal processing (DSP) library designed specifically for software-defined radios on embedded platforms. The aim is to provide a lightweight DSP library that does not rely on a myriad of external dependencies or proprietary and otherwise cumbersome frameworks. All signal processing elements are designed to be flexible, scalable, and dynamic, including filters, filter design, oscillators, modems, synchronizers, complex mathematical operations, and much more.

Tags sdr ham-radio amateur-radio radio communication dsp c cpp
License MITL
State initial

Recent Releases

1.8.008 Jun 2026 03:15 major feature: Version 1.8.0 includes a new logging environment, macros for simplified Argument parsing, enhancements for the CMake build System, static and shared libraries, improved packaging, and increased test Coverage. Logging: introduced embedded logging functionality. Supports global and custom logs with minimal computational overhead. Selectable level at run-time to increase/decrease verbosity as needed. Support for logging to files. Color output for enhanced visibility (optionally disabled). Compile time configurations for enhanced customization. Autotest. Refactored testing infrastructure to include test-specific metadata. Estimated 'cost' (execution time), description, and keywords Overhauled all tests to use new harness; tests now thread-safe and. Statically defined Increased testing: 1,300+ tests, 716,000+ checks, covering 82 of entire. Project Build. Performed a static memory analysis test to substantially reduce memory. Used on the stack in favor of dynamically allocating it on the stack; Improves stability for multi-threaded processing Introduced new argument parsing header to simplify creating variables. Parsing command-line options, printing help, and validating results; Refactored examples and removed over 2,000 lines of redundant code. Added CMake rules to create exportable interface, option for building. Shared vs. static library, and simplified directory inclusion Annoying deprecation warnings. Added generated pkg-config file. Added support for building either/both static and shared libraries. Adding separate option to find SIMD vs. use it with explicit options. Cleaned up descriptions for most interfaces in header file. Removed gentab (generated tables) from build environment; added. Pre-generated source to version control Cmake x86 SIMD detection. Many typos via codespell. Core. New module to include core functionality to liquid-dsp including logging. And error-handling Error-handling macros moved to global header to allow global u
1.7.025 Feb 2025 13:41 major feature: Version 1.7.0 includes support for the CMake build System. While the existing autotools environment will be supported for a time, This will be removed in a future release. This version also includes many changes to improve Testing coverage Across all interfaces, and make the interfaces across objects consistent. Build. Migrated to the CMake build system, including. Building examples, sandbox programs, benchmarks, autotests, and Detecting SIMD instruction extensions. Increased testing across the board including automated memory validation. With valgrind Detected and memory leaks for numerous methods and testing. Harnesses including `bessel_azpdf`, `ofdmflexframesync`, `qdsync`, `qs1dsearch`. `framesync64`, `eqrls`, and `fskdem`. Added new `LIQUID_ENOCONV` error type to identify errors where. Algorithms did not converge Added new `LIQUID_ENOIMP` error type to identify methods that are not. Yet implemented Replaced warnings with internal error handling for many existing object. Methods SONAME not set in shared library. Migrated README from markdown to re-structured text. Framing. Added more description to method definitions such as qpacketmodem and. Qdetector Dsssframe64: extended functionality to use qdsync, added standard. Methods such as copy(), added interfaces for specifying thresholds, Reduced default spreading gain Filter. Firinterp: added flush() method to run zeros through filter. Rresamp: allow for default bandwidth with an input of -1. Nco. Where frequency was being set improperly, added more. Extensive testing Improved the NCO object with VCO precision. Random. Added more extensive testing for various distributions to ensure values. Are generated properly