
Представлен открытый проект под названием GNU Radio World (проект на GitHub, сообщество GNU Radio). Решение работает в браузере как учебная среда для исследования экосистемы SDR (Software Defined Radio/Программно‑определяемая радиосистема) без необходимости установки специального ПО.

Основные возможности проекта:
-
поддержка популярных внешних модулей (OOT)
-
множество примеров схем обработки (flowgraphs) — смотрите их на сайте gnuradioworld.com/examples; каждую схему можно запустить прямо в браузере;
-
примеры IQ-записей сигналов для тестирования Поддержка RTL-SDR, PlutoSDR, HackRF;
-
загрузка модулей WebAssembly и IQ-записей по требованию для сокращения времени ожидания;
-
использование файлов схем .grc, идентичных тем, что применяются в нативной версии;
-
возможность делиться созданными схемами просто через URL;
-
возможность отправки собственных примеров схем и записей;
-
замена элементов QT GUI на веб-интерфейс с динамическим расположением окон и использованием миниатюры в реальном времени на канвасе (live miniature in the canvas);
-
поддержка встроенных блоков на Python с использованием Pyodide;
-
возможность встраивания схем и графического интерфейса в другие веб-страницы (пример PySDR).

Ограничения решения:
-
в настоящее время в браузере отсутствует среда выполнения Python; для блоков, написанных исключительно на Python, и иерархических блоков (hier blocks) требуется реализация на C++, а Pyodide используется только для встроенных блоков Python (Embedded Python Blocks), которые пока не поддерживают обработку сообщений или потоковые теги;
-
выражения параметров поддерживают лишь подмножество языка Python (арифметические операции, списки, функции math/numpy и стандартные инструменты проектирования фильтров firdes), но не произвольный код на Python.

Источник: habr.com