ПрограммированиеФорумЗвук

Определить программно, что в файле - музыка

#0
16:41, 18 мая 2016

Здравствуйте, не знаю в какой раздел писать, поэтому пишу сюда.

Цель - есть фаил со звуками (из любого видео выранная звуковая дорожка). Как нибудь можно определить, что в файле есть музыка, не важно какая?

#1
16:54, 18 мая 2016

Определить имеется ли ритм у музыки (beats per minute, bpm)
Определить мажор-минор и ключ мелодии (частотный анализ)
Определить пики громкости и среднюю громкость
Выделить более громкие части, паузы, перерывы, припевы, голос?
Выделить ударные и шумовые инструменты (повторяющиеся низкочастотные фрагменты дадут подсказку про ударные и басы, а широкополосные по частоте фрагменты дадут подсказку по тарелки и прочие шипяще-шумовые хз как они по научному называются).

#2
19:28, 15 июня 2016

kvakvs
> Определить имеется ли ритм у музыки
Ритмичным может оказаться стук колёс поезда или звук забивания свай.
kvakvs
> Определить мажор-минор и ключ мелодии
Многие птицы поют вполне по нотам.

#3
23:03, 15 июня 2016

Mikle
> Ритмичным может оказаться стук колёс поезда или звук забивания свай.
А разве это не музыка?)

#4
6:05, 16 июня 2016
bool isMusic( void* samples, int length, int channels, int rate, int bits ) { return true; }

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

#5
9:38, 16 июня 2016

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

ПрограммированиеФорумЗвук

Тема в архиве.