Перейти к содержанию
    

Аномалии с обертонами

Заглянул на IEEE, так как помню, что там попадалось что то подобное. Но цели поиска всё время как то отличались от синтеза звука. Уравнение струны в формуле 1 выглядит несколько сложнее ранее упомянутых

A_Modal_Based_Real_Time_Piano_Synthesizer.pdf

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Но есть вопрос - на ваших графиках видно что до 10 килогерц совпадение практически идеальное а сигнал записан и анализируется до 60 кГц

Меня терзают смутные сомнения способен ли даже профессиональный музыкант отличить 5% сдвиг частоты в диапазоне выше 10 кГц?

Даже не проффессиональный может, я первый раз по ошибке синтезировал на кратных частотах, потом ошибку заметил и переделал - звук стал заметно лучше. Но это возможно потому, что снимал данные маплитуд я всегда на правильных местах, а может и нет.

 

 

И еще просто из любопытства -

-как вы записывали сигнал струны?

- ваша задача уточнение теории или синтез сигнала с заданным сдвигом по частоте в ВЧ диапазоне?

 

Запись с синтезатора Pianoteq. Я не знаю на каком принципе он построен (семплер или настоящий синтезатор), но звучит от потрясающе. Судя по многим косвенным признакам там настоящий синтезатор.

 

Задача с синтезировать звук, который будет звучать так же, извлекая информацию из имеющейся записи. То-есть не нужно строить мат. модели струн, резонатора, молоточков, комнаты и микрофона, всю требуюемую информацию для синтеза нужно извлечь из записи.

 

 

 

 

Уравнение струны в формуле 1 выглядит несколько сложнее ранее упомянутых

 

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

 

Хотя в статье все это учитывается в других уравнениях, есть смысл почитать, я пока такой "комплексной" статьи еще не видел - все по частям рассмвтривают.

Изменено пользователем Taradov Alexander

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Мне всегда казалось, что локализация зависит от разности фаз в двух ушах. Ошибался?

Не ошибались, но таки есть разница в понятии локализации источника звука и качестве звучания как функции от фазовых соотношений между гармониками в сигнале - важна не фаза, а квадраты амплитуд гармоник сиречь - энергия

К сведению:

Неопределенность по фазе в горизонтальной плоскости для ушей составляет 10 град

В вертикальной уже 20 градусов

Именно по разнице фаз и соотношению амплитуд левое/правое ухо и определяется направление на источник

ПС Ну а изучение колебания струны до 60 кГц это кич или спец заказ для ветеринарной клиники

 

Задача с синтезировать звук, который будет звучать так же, извлекая информацию из имеющейся записи. То-есть не нужно строить мат. модели струн, резонатора, молоточков, комнаты и микрофона, всю требуюемую информацию для синтеза нужно извлечь из записи.

А чтоб благородному дону не сгонять обратно во временную область путем обратного Фурье и синтезировать во времени используя Кул Эдит Про 2.0 ?

Еще странный вопрос - а в реальности чем вы собрались излучать звук в диапазоне 20-60 кГц?

Таки ухо у Вас слышит выше 20 кГц? Очень сомневаюсь - гляньте ка на кривые Флетчера-Монсона (погуглите)

И еще интересно ограничить спектр с 20 кГц и сравнить с тем что звучит в оригинале вслепую

Интереснай результат будет я думаю

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

ПС Ну а изучение колебания струны до 60 кГц это кич или спец заказ для ветеринарной клиники

 

Кто говорил по 60кГц??? 40гармоник*262Гц(До-1)=10480Гц.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

ПС Ну а изучение колебания струны до 60 кГц это кич или спец заказ для ветеринарной клиники
Никто не изучает их до 60 кГц, смотреть нужно не только картинки, но и текст читать, подписи к графикам в попугаях. На них частота дискретизации везеде 44.1 кГц. Так что все нормально с изучением колебаний тут.

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Так что все нормально

 

Именно. А господину Andrey_1 рекомендую внимательнее читать обсуждение.

 

 

Moderator to Andrey_1: А так же выбирать выражения и не переходить на личности.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Придумать метод, который позволит восстановить из исходного сигнала информацию о фазе и мгновенной амплитуде гармоник.

Мне пока это видится как что-то сильно переборное, то-есть выделяем небольшой кусок сигнала, сначала ищем фазы и амплитуды чистых синусов, получается некое приближение. Потом начинаем немного изменять амплитуды, чтобы более точно подогнать результат к оригиналу. Криерии - минимум СКО, фазы, амплитуды должны быть гладкими, как в пределах анализируемого куска, так и на стыках.

Может есть более простое решение? Или известны стандартные алгоритмы для этого?

Если известны частоты гармоник, то нахождение их амплитуд и фаз сводится к линейной задаче метода наименьших квадратов относительно комплексных амплитуд, которая дает решение с наименьшим СКО.

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Если известны частоты гармоник, то нахождение их амплитуд и фаз сводится к линейной задаче метода наименьших квадратов относительно комплексных амплитуд, которая дает решение с наименьшим СКО.

 

Проблема в том, что амплитуды меняются со временем. Я пока не могу сообразить как правильно работать с таким сигналом.

 

Я попробовал брать отрезки сигнала длинной равной периоду текущей гармоники и прсто перебором фазы от 0 до 2*Pi с шагом 0.01 рад и амплитуды от 0 до 1 с шагом 0.001 искать параметры при которых СКО минимально. Это дает общее представление о форме амплитуды (как и множество других методов), но амплитуда иногда изменяется бысрее периода. Кроме того фаза получается не точной, так как оценка идет для независимых кусков, хотя она и изменяется плавно.

 

Видимо этот метод подойдет для грубой оценки и нужно что-то придумать для более точной.

 

Кроме того часота немного изменяется со временем, но это можно выразить как набег фазы.

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Оценки амплитуд могут убывать со временем из-за затухания гармоник. Чтобы учитывать затухания необходимо проводить нелинейное оценивание комплексных частот (это в самом деле сложная проблема и для большого числа учитываемых гармоник метод перебора не подойдет).

Можно было бы сказать что-то больше, если бы посмотреть сами данные.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Оценки амплитуд могут убывать со временем из-за затухания гармоник.
Они естественно затухают, грубо я их с помощью сонограммы построил, но это грубо и из сонограммы информацию о фазе трудно тоже извлечь (можно из результатов БПФ, но так как размер окна БПФ не кратен периоду, то получается набор фаз для кусков, но они не связанны между собой).

 

Грубую оценку должно быть можно использовать, чтобы уменьшить число вариантов в переборе.

 

Можно было бы сказать что-то больше, если бы посмотреть сами данные.

Собственно данные я могу предоставить в любом удобном формате.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Собственно данные я могу предоставить в любом удобном формате.

В файле *.mat (для MATLAB): вектор со значениями сигнала и вектор с временными отсчетами.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

В файле *.mat (для MATLAB): вектор со значениями сигнала и вектор с временными отсчетами.

Вот.

 

d - запись ноты C4, t - время, freq - частоты 47 гармоник (старшие гармоники не кратны нулевой), F- основная частота, Fs - частота дискретизации.

 

 

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Проблема в том, что амплитуды меняются со временем. Я пока не могу сообразить как правильно работать с таким сигналом.

выделите гармоники гребенчатым фильтром например и на каждой частоте выполните преобразование Гильберта для узкополосного процесса, которое даст амплитуду и фазу гармоники

Найдите частоту и коэффициент затухания каждой гармоники и представьте в виде

x(t)=A*e(-alfa*t)*sin(w*t) далее суммируйте их все.

Как уже было сказано начальная фаза не должна влиять на качество звука

Кстати а что у Вас там на спектрограмме такой высокий уровень шума - это так сам сигнал синтезируется или звуковая карта на которую писали дерьмовенькая?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

x(t)=A*e(-alfa*t)*sin(w*t) далее суммируйте их все.
В процессе колебания струны частота основного тона немного меняется. никакие преобразования, работающие над всей выборкой сразу не способны заметить этого изменения. А замечать его нужно.

 

Как уже было сказано начальная фаза не должна влиять на качество звука
Должна-не должна - это сейчас не важно. Я хочу восстановить сигнал с минимаьными отклонениями от исходного. А для этого нужна фаза.

 

Кстати а что у Вас там на спектрограмме такой высокий уровень шума - это так сам сигнал синтезируется или звуковая карта на которую писали дерьмовенькая?

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

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Они естественно затухают, грубо я их с помощью сонограммы построил, но это грубо и из сонограммы информацию о фазе трудно тоже извлечь (можно из результатов БПФ, но так как размер окна БПФ не кратен периоду, то получается набор фаз для кусков, но они не связанны между собой).

 

Я уже спрашивал про "три струны". По ссылке в Википедии выше упоминалось их влияние. ;)

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

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

×
×
  • Создать...