Поскольку 440 представляет собой ноту ля, тон 55 Гц также представляет ноту ля, поскольку он составляет 1/8 частоты. Однако, когда я генерирую эту ноту в Audacity , я всегда получаю нежелательные частоты в виде небольших пиков ниже основной частоты и всех гармоник.
Вот пример пилообразной волны 55 Гц, сгенерированной с частотой дискретизации 48000 Гц:
Вы можете ясно видеть эти небольшие пики, начиная с 5 Гц. Что вызывает появление этих нежелательных частот?
Редактировать: я, наконец, понял, что эти «призрачные» частоты на самом деле являются результатом наложения спектров , потому что пилообразная волна не ограничена полосой пропускания ( т. е. не ограничена ее максимальная частота). Гармоники за пределами частоты Найквиста «отражаются» до частот, герцы которых кратны наибольшему общему делителю между основной частотой и частотой дискретизации. В этом случае НОД между 55 и 48000 равен 5, что объясняет псевдонимы, появляющиеся на частотах, кратных 5 Гц. Другим примером может служить тот факт, что пилообразная волна с частотой 43,75 Гц, генерируемая без ограничения полосы частот на частоте 48000 Гц, будет создавать наложения на частотах, кратных 6,25 Гц.
Ваша частота дискретизации составляет 48k при 55 Гц, поэтому каждый период составляет 872,73 выборки. Размер вашего БПФ 65536. Он соответствует периоду сигналов 75,093. Алгоритму требуется 75 периодов для построения графика. Это оставляет 0,093 периода между последовательными преобразованиями БПФ. 0,093 периода при 55 Гц соответствует частоте 5,1 Гц, которая соответствует частоте фантома, которую вы видите в пределах погрешности.
Эта частота или ее гармоники не присутствуют в звуке, а являются математической ошибкой, создаваемой размером преобразования БПФ (2^16), не связанным целым числом с количеством отсчетов в периоде сигнала.
Кроме того, по той же логике, призрак 5,1 Гц создает вторичный артефакт на частоте 0,04 Гц, который вы также видите. В частности, 5,1 Гц — это 9350,6 выборок за период при 48k. Размер БПФ 65536 соответствует 7,0087 периодам. 7 периодов отображаются на частоте около 5 Гц, а ошибка периода 0,0087 на частоте 5 Гц создает ореол 0,04 Гц, который вы видите слева. Приблизительно -80 дБ значения малы и зависят от ошибок округления и других ошибок, точности компьютерных часов и других факторов, поэтому фактические значения, которые вы видите, могут немного отличаться.
Расчет показывает, что артефакты должны уменьшиться, если вы уменьшите генерируемую частоту с 55 Гц примерно до 54,93 Гц. В качестве альтернативы вы можете увеличить частоту дискретизации до 48,06k. Однако вы не можете изменить размер БПФ лишь незначительно, потому что он должен быть степенью двойки.
Я не могу быть уверен, что это создает ваши пики, но любой тон, который начинается и заканчивается, не будет на 100% чистым; чистый тон не имеет ни начала, ни конца. Рассмотрим тон, который начинается с в , вибрирует на время , а затем выключается. В виде уравнения это выглядит так:
Взяв абсолютный квадрат, чтобы получить что-то пропорциональное выходной мощности:
Чтобы увидеть, является ли это доминирующим фактором ваших нежелательных гармоник, попробуйте создать тон, который длится вдвое дольше, и тот, который длится вдвое дольше, и посмотрите, как это повлияет на их расположение. Вы также должны ожидать появления нежелательных гармоник при сэмплировании и оцифровке, хотя я не знаю, как описать, где они появятся.
Редактировать: я не заметил, что вы говорили о пилообразной волне. Как заметил @EmilioPisanty, зубья пилы — это не синусоидальные волны. Зуб пилы отвечает за доминирующие гармоники в правой части графика. Отбросьте их (чтобы получить чистую синусоиду), и вы получите что-то, что имеет правдоподобную форму Лоренца в квадрате . Кроме того, нежелательные гармоники не начинаются , обратите внимание на край фиолетового лепестка в конце графика. Бьюсь об заклад, первая доля рядом , точно так же, как и следовало бы ожидать, если бы у вас не было целого числа длин волн в вашей волновой форме. представляет собой чистое постоянное смещение сигнала, и такого рода дисбаланс происходит, когда вы не проводите одинаковое время выше и ниже равновесия.
Редактировать: Вдохновленный комментарием @WetSavannaAnimalakaRodVance, я решил написать свой собственный тон-генератор. Пилообразная волна, которую я сгенерировал с помощью Golang, записал в текст и импортировал в Audancity, дает тот же спектр. Как и спектр, сгенерированный Audacity, пик исчезает, когда параметр «Размер» уменьшается до 16384 или ниже. Я думаю, что здесь происходит дополнительное управление окнами, вызванное тем, как генерируется спектр :
Plot Spectrum берет аудио в блоках выборок «Размер», выполняет БПФ и усредняет все блоки вместе.
Окно при генерации спектра, по-видимому, в первую очередь влияет на своего рода минимальный уровень шума, так что это просто маскирует пик. Я не знаю деталей того, что происходит, но есть намек на сравнение прямоугольной волны с «прямоугольной волной, без алиасинга». Судя по увеличенному варианту, где хорошо виден звон, волна "без алиасинга" генерируется с помощью суммы синусоид, в отличие от простого математического алгоритма с резкими срезами.
Суть в том, что это, вероятно, случай наложения спектров : прямоугольные и пилообразные волны содержат информацию о частоте, которая выше, чем частота дискретизации может быть достоверно представлена, создавая звуковой эквивалент муарового узора ( т.е. низкочастотный тон/частота биений).
пилообразный сигнал богат гармоническим содержанием, и это будет отображаться в спектре. обратите также внимание, что формы сигналов, сгенерированные компьютером, иногда являются спектрально нечистыми из-за алгоритмических ошибок и артефактов цифро-аналогового преобразования.
Эмилио Писанти
Эмилио Писанти
Эль Эктрик
Эмилио Писанти
Эль Эктрик
Эль Эктрик
Даниэль Санк
Эль Эктрик
Альфред Центавр
Эль Эктрик
Альфред Центавр
Селена Рутли
Селена Рутли
Эль Эктрик
Селена Рутли
Флорис