RTL-SDR

Расшифровка и прослушивание HD Radio (NRSC-5) с RTL-SDR

HD Radio — это цифровой наземный радиосигнал высокого качества, который используется только в Северной Америке. Его легко распознать по двум прямоугольным блокам по обе стороны от сигнала вещательной FM-станции на спектроаналитике/дисплее водопада. Поскольку HD Radio использует проприетарный протокол, найти способ его декодирования было сложно, и этот сигнал долгое время был недоступен пользователям SDR. В феврале этого года мы разместили пост об попытке Фила Бёррса, в которой ему удалось создать частичную реализацию (до уровня 2) стандарта HD Radio, но он не дошёл до декодирования аудио на уровне 3.

Однако теперь исследователь кибербезопасности Theori разработал полноценный декодер на базе RTL-SDR для протокола HD Radio. В его посте Theori объясняет, что система HD Radio разделена на три слоя. Первый уровень находит сигналы и выполняет декодирование и коррекцию ошибок. Второй уровень — слой мультиплексирования, который позволяет различным приложениям уровня 3 использовать пропускную способность. Третий уровень — слой аудиоданных. В своем посте он объясняет, как эти слои работают детально.

Одним из главных открытий стало обнаружение кодека сжатия аудио. Theori обнаружил, что кодек по существу является HE-AAC с некоторыми незначительными модификациями. Эти модификации были настолько незначительными, что он смог адаптировать открытую библиотеку FAAD2 под HD Radio аудио-декодирование.

Код Theori является открытым исходным кодом и доступен на GitHub. В коде есть патч для модификации FAAD2 под HD Radio, который применяется автоматически во время сборки. Также предоставлен пример файла для тестирования декодера, и мы протестировали декодер на этом примере — он работал хорошо. Декодирование может выполняться в реальном времени, примеры этого также приведены в readme на GitHub.

Спектр HD Radio

Источник:

Подбираете SDR под задачу?

Опишите, что и где хотите принимать, — подскажем подходящие модели и где их купить.

Похожие материалы

Весь блог