|
ru.algorithms- RU.ALGORITHMS ---------------------------------------------------------------- From : Evgenij Masherov 2:5020/175.2 29 Mar 2002 00:00:18 To : voodoochile Subject : Получение огибающей звуковой волны -------------------------------------------------------------------------------- Thu Mar 28 2002 15:28, voodoochile wrote to All: v> Я пытаюсь написать WAV->MIDI преобразователь(преобразует аудио не v> только в последовательность стартов-стопов, но и генерирует функции для v> volume, pitch) v> Задачу построения огибающей я решил примитивно(имитация аналогового v> пик-детектора): v> if(envelope[Chan] < ps[ii]) { v> ps[ii] = (short)(ps[ii] + ga * (envelope[Chan] - ps[ii])); v> envelope[Chan] = ps[ii]; v> } else { v> ps[ii] = (short)(ps[ii] + gr * (envelope[Chan] - ps[ii])); v> envelope[Chan] = ps[ii]; v> } v> Это одна итерация цикла. v> Здесь v> envelope[Chan] -- значение огибающей, v> ps[ii] - то, что приходит из входного буфера. v> ВОПРОС: v> существуют ли иные алгоритмы получения огибающей и частоты тона, v> работающие в режиме реального времени? v> Частоту тона мерить здесь оч. сложно, поскольку цепляются не только пики v> основного тона :(( v> Я нашел в Сети статью каких-то японцев v> http://www.icspat.com/papers/30mfi.pdf . v> Они пытаются получать эти пики при помощи нейронной сети. Все вроде v> понятно, но не ясно , КАКИМ ОБРАЗОМ рассчитываются значения весов v> нейронов! v> Hайти в сети исходные тексты программ по этой тематике мне пока не v> удалось. 1. Hаивное решение. Берем абсолютную величину (или квадрируем) и пропускаем через ФHЧ. 2. Аналитические решение. Считаем преобразование Гильберта от сигнала. Оно дает мнимую часть аналитического сигнала (действительная - реальный сигнал), представляем x(t)+i*Hilbert(x(t))=A(t)*exp(i*f(t)) A(t) - огибающая f(t) - фаза (а производная от нее - частота) Евгений Машеров АКА СанитарЖеня --- ifmail v.2.15 * Origin: FidoNet Online - http://www.fido-online.com (2:5020/175.2) Вернуться к списку тем, сортированных по: возрастание даты уменьшение даты тема автор
Архивное /ru.algorithms/330028dd94a3.html, оценка из 5, голосов 10
|