Спектры для чайников - FAQ

Описание вашего первого форума.
Аватара пользователя
romanrex
Администратор
Сообщения: 289
Зарегистрирован: 06 дек 2015, 00:02

Спектры для чайников - FAQ

Сообщение romanrex » 25 фев 2016, 11:03

При тестировании звуковых устройств спектр сигнала является самым распространенным графиком. Есть довольно большая группа людей, которые понимают, что спектр, это представление сигнала в виде совокупности частот с разной амплитудой, но не понимают, почему к примеру у графика с уровнем сигнал шум в -90 дБ уровень шумовой полки находится на уровне -130 дБ.

Именно для этой категории пользователей и сделан краткий FAQ на простых примерах о спектрах.

Прежде всего, спектр, это не набор синусов в чистом виде. Это набор частотных полос равной ширины с определенным уровнем мощности. Эти полосы частот называются бинами.

Количество и ширина бинов зависит от величины спектрального окна FFT Size. Если величина окна равна 32-м семплам, то мы получим 16 бинов (количество бинов всегда в два раза меньше величины окна). Ширина бинов будет зависеть от частоты дискретизации и для 44,1 кГц это будет 1378 Гц. Первый бин будет представлять частотный диапазон от 0 до 1378, второй от 1378 до 2756 и т.д.

Изображение

Т.е. когда берется окно с малым количеством семплов, то у нас определенно частотные полосы, которые нельзя сопоставить с конкретной частотой. Бин с диапазоном от 0 до 1378 Гц не являет ни частотой 500 Гц, ни 1 кГц, а является суммой мощностей частот с 0 до 1378 Гц.

Изображение

Для окна в 65536 семплов будет 32768 бина с шириной в 0,67 Гц. На графике на 1 пиксель будет приходится по сотне бинов, а конечная амплитуда будет взята по максимально высокому бину. Для такого окна для частоты в 500 Гц есть бин с диапазоном от 499,974 до 500,646 Гц и формально идеологическая разница между бином, как частотный диапазоном и просто частотой исчезает.

Величина окна в семплах – это сколько взяли последовательных координат из звуковой волны. Чем больше величина окна в семплах, тем более длинный участок звуковой волны анализируется.
Если взять сигнал с шумом одним бином, с 0 до 22 кГц, то это будет результирующий уровень шума. Ниже в примере это -99 дБ и такой бин имеет серый цвет.

Изображение

При получении спектра с разной величиной окна FFT Size количество бинов пропорционально увеличивается. Сумма мощностей всех бинов всегда равна числу около -99 дБ, но мощность каждого бина закономерно уменьшается в зависимости от количества бинов. Соответственно уровень шумовой полки напрямую зависит от величины FFT Size и удвоение окна понижает средний уровень бинов на 3 дБ. Так как любой шум не является «случайным» сигналом, то при анализе отрезков разной длины уровень мощности меняется в незначительных пределах.

По этой причине, не зная исходных данных для FFT Size, невозможно по виду спектра определить конечную суммарную мощность шума.

Более того, так как уровень шума все равно визуально определить нельзя, то его «давят» всеми возможными способами, начиная от использования весовых окон и заканчивая различным усреднением спектров.

Изображение

Основной задачей спектров является выявление периодических сигналов. И чем больше величина FFT Size, тем ниже шумовая полка и отчетливее видно основные гармоники. И разумеется, чем больше величина FFT Size, тем точнее мы можем определить частоту каждой гармоники.

Независимо от величины FFT Size, бины, содержащие гармонические сигналы, постоянны по своей мощности, в то время как содержащие шум при последующем делении уменьшаются по амплитуде. При делении же бина с гармоническим сигналом, тот бин, в который попадает гармонический сигнал принимает его мощность, а остальные получаются с мощностью шумовой полки.

Так как для большого окна надо использовать сигнал большой продолжительности, то величину FFT Size ставят разную в зависимости от ситуации. Где-то достаточно малого окна, что бы бегло оценить общий характер спектра, где-то для работы в real-time доступны лишь небольшие окна. Где-то нет смысла получать спектр «под микроскопом». А где-то спектр строит «прибор», который физически ограничен по максимальному значению. FFT анализ требует не малых ресурсов и при увеличении FFT Size нагрузка на процессор и величину используемой оперативной памяти растет по экспоненте.

Именно по этой причине графики на одно устройство, сделанные в разном софте совпадают по уровню основных гармоник, но существенно отличаются по уровню шумовой полки.

Изображение

Почему еще стараются подавить шум? Спектр не является строго одинаковым в любой момент времени. Гармонические сигналы постоянной амплитуды с течением времени меняются крайне незначительно, а вот шум меняется постоянно. Если сделать усреднение по нескольким спектрам, то мы можем визуально «отфильтровать» часть шума и отчетливее увидеть основные гармоники.

В отчетах Reference Audio Analyzer проводится анализ в следующих типах разрешения спектра.

Изображение

Для анализа на длительных сигналах используется FFT Size 262144 семпла с 18 кратным усреднением. Для этого требуется тестовый участок длительностью в минуту.

Изображение

Для тестов зависимости искажений от амплитуды используются более короткие тестовые участки с FFT Size 65536 с двукратным усреднением. Для этого требуется участок в 3 сек. Конечно, хотелось бы все графики получать с максимально большим FFT Size, но тогда тест будет требовать уже не один час а целый месяц и количество протестированных устройств пропорционально сократится.

Изображение

Для теста мультитонов используется FFT Size 2097152 семпла для минутного участка без усреднения. Такой вариант не самый эффективный по подавлению шума, но позволяет получить максимально возможную разборчивость в низкочастотной области.
SvetlanaMyncrete
Сообщения: 1
Зарегистрирован: 01 мар 2016, 14:35
Откуда: Yemen
Контактная информация:

Спектры для чайников FAQ

Сообщение SvetlanaMyncrete » 01 мар 2016, 20:00

Будет еще неплохо для новичков просто и доступно объяснить НСУ, РКСУ, ТИСУ, что такое асинхронник.
Аватара пользователя
romanrex
Администратор
Сообщения: 289
Зарегистрирован: 06 дек 2015, 00:02

Re: Спектры для чайников FAQ

Сообщение romanrex » 01 мар 2016, 20:56

SvetlanaMyncrete писал(а):Будет еще неплохо для новичков просто и доступно объяснить НСУ, РКСУ, ТИСУ, что такое асинхронник.

Поясните аббревиатуры, если не являетесь ботом
Alex_new
Сообщения: 7
Зарегистрирован: 10 дек 2015, 11:46

Re: Спектры для чайников - FAQ

Сообщение Alex_new » 10 май 2016, 15:00

Спасибо за наглядные картинки, все стало намного понятнее!

Вернуться в «Общие вопросы»

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и 1 гость