Jump to content
    

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

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

A_Modal_Based_Real_Time_Piano_Synthesizer.pdf

Share this post


Link to post
Share on other sites

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

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

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

 

 

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

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

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

 

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

 

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

 

 

 

 

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

 

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

 

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

Edited by Taradov Alexander

Share this post


Link to post
Share on other sites

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

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

К сведению:

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

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

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

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

 

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

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

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

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

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

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

 

Share this post


Link to post
Share on other sites

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

 

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

Share this post


Link to post
Share on other sites

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

 

Share this post


Link to post
Share on other sites

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

 

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

 

 

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

Share this post


Link to post
Share on other sites

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

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

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

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

 

Share this post


Link to post
Share on other sites

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

 

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

 

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

 

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

 

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

 

Share this post


Link to post
Share on other sites

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

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

Share this post


Link to post
Share on other sites

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

 

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

 

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

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

Share this post


Link to post
Share on other sites

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

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

Share this post


Link to post
Share on other sites

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

Вот.

 

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

 

 

 

Share this post


Link to post
Share on other sites

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

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

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

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

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

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

Share this post


Link to post
Share on other sites

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

 

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

 

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

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

 

Share this post


Link to post
Share on other sites

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

 

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

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

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...