Главная страница
    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.046 c
14-1123239161
nk
2005-08-05 14:52
2005.08.28
WinXP + Востановление системы


1-1123474947
Ldt
2005-08-08 08:22
2005.08.28
Из GSM кодировки в ASCII


9-1114794185
Warchief
2005-04-29 21:03
2005.08.28
lightmap


3-1121342988
Pil
2005-07-14 16:09
2005.08.28
формирование отчетов


1-1123516131
TStas
2005-08-08 19:48
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
Английский Французский Немецкий Итальянский Португальский Русский Испанский