Главная страница


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)
 
 

Вернуться к списку тем, сортированных по: возрастание даты  уменьшение даты  тема  автор 

 Тема:    Автор:    Дата:  
 Получение огибающей звуковой волны   voodoochile   28 Mar 2002 16:28:21 
 Полyчение огибающей звyковой волны   Alexander Grischuk   04 Apr 2002 23:01:54 
 Получение огибающей звуковой волны   Evgenij Masherov   29 Mar 2002 00:00:18 
 Re: Получение огибающей звуковой волны   voodoochile   29 Mar 2002 14:22:45 
 Re: Получение огибающей звуковой волны   Sergei Katkovsky   02 Apr 2002 10:37:06 
 Re: Получение огибающей звуковой волны   Evgenij Masherov   30 Mar 2002 00:15:50 
 Получение огибающей звуковой волны   Alexander V. Lushnikov   30 Mar 2002 14:36:36 
 Получение огибающей звуковой волны   Evgenij Masherov   30 Mar 2002 20:32:32 
 Re: Получение огибающей звуковой волны   voodoochile   31 Mar 2002 11:12:39 
 Re: Получение огибающей звуковой волны   Evgenij Masherov   01 Apr 2002 09:38:15 
 Re: Получение огибающей звуковой волны   Sergey Andrianov   28 Mar 2002 22:25:40 
Архивное /ru.algorithms/330028dd94a3.html, оценка 2 из 5, голосов 10
Яндекс.Метрика
Valid HTML 4.01 Transitional