BatchDrake/SigDigger

GitHub: BatchDrake/SigDigger

一款基于 Qt 的免费开源数字信号分析仪,用于从未知无线电信号中实时提取和解调信息。

Stars: 2043 | Forks: 215

# SigDigger - 免费数字信号分析仪 SigDigger 是一款适用于 GNU/Linux 和 macOS 的免费数字信号分析仪,旨在从未知的无线电信号中提取信息。它通过 SoapySDR 支持多种 SDR 设备,并允许对 FSK、PSK 和 ASK 信号进行可调节的解调,解码模拟视频,分析突发信号以及监听模拟语音频道(所有操作均可实时进行)。 ![](https://static.pigsec.cn/wp-content/uploads/repos/2026/05/2e88792d9d020810.png) ## 现有用户须知 我们不再克隆 `develop` 分支。所有四个项目(SigDigger、SuWidgets、Suscan 和 Sigutils)均将最新的有效更改保留在 `master` 分支中。 ## 首次使用须知 你可能想先看看[**用户手册**](https://github.com/BatchDrake/SigDigger/blob/master/doc/SigDigger_User_Manual.pdf)。 SigDigger 是一个 GUI 工具,用作 Suscan 和 Sigutils 等底层库的封装,因此你需要先构建这些依赖项。如果你想避免麻烦并立即开始使用 SigDigger,可以尝试以下方法: * 下载最新的[**开发版构建**](https://github.com/BatchDrake/SigDigger/releases/tag/latest),这是一个独立的 AppImage 文件(仅限 GNU/Linux) * 申请定制的 `.dmg` 文件(仅限 macOS 用户,我必须根据需求来创建这些文件,因为我目前没有任何苹果机器,而且每个版本之间都需要做一些小的调整) * 从源代码构建并在全系统范围内安装(通常适用于 Unix): % git clone --recursive https://github.com/BatchDrake/sigutils % cd sigutils && mkdir -p build && cd build && cmake .. && make && sudo make install && cd ../.. % git clone --recursive https://github.com/BatchDrake/suscan % cd suscan && mkdir -p build && cd build && cmake .. && make && sudo make install && cd ../.. % git clone https://github.com/BatchDrake/SuWidgets % cd SuWidgets && qmake6 SuWidgetsLib.pro && make && sudo make install && cd .. % git clone https://github.com/BatchDrake/SigDigger % cd SigDigger && qmake6 SigDigger.pro && make && sudo make install && cd .. * 让 [blsd](https://actinid.org/blsd) 脚本为你处理所有这些细节(GNU/Linux)。此脚本将在当前工作目录下的一个目录中构建 SigDigger(不会向系统范围安装任何内容)。此目录可以放置在你喜欢的任何位置,并包含一个用于启动 SigDigger 的脚本。 % wget https://actinid.org/blsd % chmod a+x blsd % ./blsd * **附加提示:**你可以向 `blsd` 传递参数,以指定要下载并与 SigDigger 捆绑的插件。这些插件的名称就是我的 GitHub 账户中拉取代码的仓库名称。我推荐使用 [AmateurDSN 插件](https://github.com/BatchDrake/AmateurDSN),因为它功能非常全面,但你也可能想看看 [APTPlugin](https://github.com/BatchDrake/APTPlugin)、[AntSDRPlugin](https://github.com/BatchDrake/AntSDRPlugin) 和 [ZeroMQPlugin](https://github.com/BatchDrake/ZeroMQPlugin)。 * **Windows 用户:**抱歉,Windows 比较混乱,我也没有 Windows 机器,目前无法以可重现的方式确保 Windows 构建包含所有的 DLL 依赖项。你可以尝试自行从源代码构建,不过在这种情况下,我建议你按照[**用户手册**](https://github.com/BatchDrake/SigDigger/blob/master/doc/SigDigger_User_Manual.pdf)中的步骤进行操作。 ## 等等,为什么它看起来像 Gqrx? 在处理 SDR 软件多年后,我意识到 Gqrx 拥有所有软件中最好的 UI:极简而实用。早期版本的 UI 有些不同,但在经过大量调试后,我得出结论,如果我仅仅是尝试模仿现有(且成功的)软件,减少新功能集的学习曲线,效果会更好。 你可能会注意到频谱组件看起来非常像 Gqrx。这是因为频谱组件实际上就是 Gqrx 的组件,只是做了一些~~极小的~~修改(比如支持可配置的 Waterfall 调色板,或 OpenGL 后端)。我曾尝试在 Suscan 中编写自己的 Waterfall 组件,结果导致 Xorg 占用了大量 CPU,所以我不再重复造轮子了:我决定扩展现有的 Gqrx Plotter 组件,使其符合 SigDigger 的功能集。 除了 UI 布局和 Plotter 组件之外,SigDigger 与 Gqrx 几乎没有相似之处:Gqrx 依赖于 GNU Radio,而 SigDigger 是 Suscan 的 Qt5 前端。两者的 DSP 链完全不同,并且 Suscan 的线程模型针对非常特定的任务集进行了优化。 ## 我应该如何编译它? SigDigger 依赖于三个不同的项目:**Sigutils**、**Suscan** 和 **SuWidgets**。在编译 SigDigger 之前,你需要先在计算机上构建并安装这些项目。 * Sigutils 的构建说明可以在[这里](https://github.com/BatchDrake/sigutils/blob/master/README.md)找到。 * Suscan 的构建说明可以在[这里](https://github.com/BatchDrake/suscan/blob/master/README.md)找到。 在成功构建 Sigutils 和 Suscan 之后,你现在可以继续构建 **SuWidgets**。SuWidgets 是一个包含所有 SigDigger 自定义组件的 Qt5/Qt6 图形库。为了构建它,请确保你的系统上至少安装了 Qt5(>= 5.9)开发框架,然后运行: ``` % git clone https://github.com/BatchDrake/SuWidgets % cd SuWidgets % qmake SuWidgetsLib.pro % make % sudo make install ``` 如果上述步骤成功,那么你也很可能会成功构建 SigDigger。要构建 SigDigger,请执行: ``` % git clone https://github.com/BatchDrake/SigDigger % cd SigDigger % qmake SigDigger.pro % make % sudo make install ``` 然后,要运行 SigDigger,只需输入: ``` % SigDigger ``` 如果上面的命令失败,可能是你的 SigDigger 安装在了其他位置,比如 /opt/SigDigger。在这种情况下,你可以尝试改为运行: ``` % /opt/SigDigger/bin/SigDigger ``` ## 预编译版本 你可以在此仓库的“Releases”选项卡下找到预编译版本。目前,这些版本仅适用于 x64 Linux(最好是类似 Debian 的发行版),并且只进行了最少的测试。虽然我有计划将 Sigutils、Suscan 和 SigDigger 移植到其他平台,但我希望在进行进一步操作之前先拥有一个稳定的代码库。 显然,你的反馈会使我的工作更加轻松。如果你在构建或使用 SigDigger 时遇到任何问题,请直接使用出色的 GitHub 错误追踪系统。它运作良好,也能让我更轻松地追踪现有的问题。 期待你的反馈!:) 73 de EA1IYR
标签:ASK解调, Bash脚本, C++, FSK解调, GNU/Linux, GUI应用, PSK解调, Qt开发, SDR软件, Sigutils, SoapySDR, Suscan, UML, 二进制发布, 云资产清单, 信号解调, 实时信号处理, 射频信号分析, 开源工具, 数字信号分析, 数据擦除, 无线电监测, 模拟视频解码, 突发信号分析, 语音监听, 调试插件, 软件无线电, 逆向工程, 通信协议分析, 频谱分析