Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Потрепаться";
Текущий архив: 2005.08.28;
Скачать: [xml.tar.bz2];

Вниз

beat detection algorithms   Найти похожие ветки 

 
Ajax ©   (2005-08-02 13:28) [0]

Никто не видел алгоритмов детектирования темпа музыки, реализованных на Delphi? Есть исходники на С, но с их пониманием периодически возникают трудности...


 
WondeRu ©   (2005-08-02 15:31) [1]

учи С


 
Ajax ©   (2005-08-02 15:56) [2]

>[1] WondeRu ©   (02.08.05 15:31)
Всенепременно!..


 
[wl]   (2005-08-02 19:08) [3]

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


 
programania ©   (2005-08-02 20:48) [4]

Я только что видел но уже не понял хотя сам и написал, вот может кто поймет кусок

PROCEDURE analiz;
var ra,i,t,pp,maxa,c:integer;
begin
pp:=0; maxa:=0; c:=0;  rost:=false;
fillChar(ru,sizeof(ru),0);
for i:=1 to qa do begin
 ra:=ma[i];
 if ra>maxa then maxa:=ra; if maxa>=10 then dec(maxa,10);
 if c>=140 then dec(c,140);
 if ra>c then begin
   c:=ra;
   if rost then begin
     t:=i-pp;
     if t<sizeof(ru) div 4 then inc(ru[t]);
     pp:=i;
     rost:=false
   end;
 end;
 if c-ra>maxa div 16 then rost:=true;
end;
end;

Похоже что в ru накапливаются интервалы через которые амплитуда начинает расти
и там получается АЧХ которая сравнивается с образцами разных темпов 60-170bps
и где более совпадает тот темп и есть
эту АЧХ можно посмотреть в
http://programania.com/ENJOL.ZIP   850kb
процесс запускается кнопкой alt+A и потом вся музыка
сортируется по темпу или по похожести текущей
Кстати такой же кусок меняет картинки в такт музыке


 
Ajax ©   (2005-08-03 09:32) [5]

>[4] programania ©   (02.08.05 20:48)
Приведенный фрагмент вполне может быть частью нужного алгоритма, но его явно не достаточно. А откуда идея алгоритма и можно-ли взглянуть на полный код?


 
programania ©   (2005-08-03 20:38) [6]

>А откуда идея алгоритма и можно-ли взглянуть на полный код?

Идея сначала возникла для смены картинок в такт музыки
потом оказалось что ничего лучше не придумать и для определения темпа
С полным кодом будет еще непонятнее
так как он включает
перебор музыки по списку
получение звука через BASS.dll
усреднение амплитуды на 1/32сек и запись в массив ma
накопление интервалов как показано в массиве ru
показ АЧХ
сохранение АЧХ в списке
сравнение с шаблонами
сортировка
и много еще чего постороннего
Для примера можно посмотреть текст модуля где происходит
все что связано с определением темпа
http://programania.com/audio.zip  4kb
и сделать все по своему



Страницы: 1 вся ветка

Форум: "Потрепаться";
Текущий архив: 2005.08.28;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.46 MB
Время: 0.047 c
4-1121169826
Piter
2005-07-12 16:03
2005.08.28
Эмуляция нажатий клавиш


4-1121244324
unregister_256
2005-07-13 12:45
2005.08.28
лейбел - гиперссылка


8-1113384972
Fedor
2005-04-13 13:36
2005.08.28
Детектор движения


4-1120733513
vecna
2005-07-07 14:51
2005.08.28
TEdit + PopupMenu


14-1122887152
Desdechado
2005-08-01 13:05
2005.08.28
Фото-загадка





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский