Если кто баловался... Подскажите формулы любых музыкальных инструментов (пианино, hi-hat, bass, rubby bass, acid bass, crash, etc) К примеру формула bass-drum: f(t) = sin(pow(t,A)) * exp(t/tau) Где A обычно меньше 1 и больше 0. tau около 0.25 ~ 0.5 Hi-hat можно получить из рандома. Тоесть рандом, затухающий по экспоненте. С crash-ами (тарелки) сложнее. Интересно по поводу пианино и разных басов. Поделитесь, люди добрые
Ну, с таким подходом уедешь в далёкие 70-е года Вообще в этом деле современные синтезаторы лучше описывать не в таких формулах, а на более высоком уровне. А именно: в терминах генераторов, фильтров, задержек, отражателей, насыщателей, огибающих и пр. Пример: опиши мне формулой эффект перегрузки ("дисторшн"), да такой, чтоб звучал как надо. Я думаю, там рехнуться можно если описывать зависимость спектра от времени. Я увлекаюсь написанием синтезаторов. И добился неплохих результатов. Можешь задавать вопросы. На асме я их ещё не пишу. Поэтому наше обсуждение будет выходить за тематику форума. foamplast@mail.ru
Foamplast Не, не будет Ведь правда, дядя Беспощадный Даос? Ты хотел сказать функцию от времени? Спектр он не от времени а от частоты или фазы. Ну хорошо. Например, я хочу пианино. В какую сторону мне смотреть? Ясно, что громкость звучания убывает по экспоненте, тоесть итоговая формула умножается на exp(t/tau). А дальше-то как быть? Да, пианино имеет гормоническую природу. Но ведь это не просто синус или косинус? Кстати, в учебнике по математике была задача об описании координаты струны при колебании. Решалась через дифференциальное уравнение. Ответом был бесконечный ряд из интегралов Во сне приснится - подушкой не отмахаешся И еще... Раз уж ты этим занимался. Есть какие-нибудь русскоязычные доки по этому делу? Что посоветуешь?
Ведь правда, дядя Беспощадный Даос? Как минимум один из беспощадных даосов тебе это гарантирует. Я только рад, если умные и талантливые люди с интересом обсуждают здесь свои идеи! Вы же не новички и не задаете вопросы об иконках в трее, которые меня бесят
>Кстати, в учебнике по математике была задача об описании координаты струны при колебании. Для этой задачи больше подойдет учебник по мат. физике. Волновое уравнение прекрасно решается и там не очень сложно, "Во сне приснится - подушкой отмахаешся".
Про струну вроде просто. Там сумма основной и кратных частот - 2,3 и т.д. Для амплитуды каждой из частот надо задать формулу и все. Есть еще дурацкая идея : взять с сайтов образцы звуков и выполнить спектральный анализ. После уже можно играться со спектрами и наводить теорию. Для струны спектр будет очень простой.
Foamplast Что ЗНАЧИТ ВЫЙДЕТ?! Помоему не выйдет!!!!!!!! ХОЧУ СТАТЬЮ ПРО НАПИСАНИЕ СИНТЕЗАТОРА )) P.S. ХОЧУ ROLAND!!!!! ^)))))))))
1. Насчёт тематики форума. Приятно, что тема поддерживается. При этом, как я уже говорил, для экспериментов в области звукосинтеза я не использую ассемблер. Я использую Reaktor и CSound. Сейчас пробую разобраться с pure-data. На самом деле из них только Reaktor приспособлен для чего-либо реального. CSound - обалденный дзенский язык с большим потенциалом. Но интерфейс там хреновый. Так что только Реактор. Но это к программированию на ассемблере никак не относится. 2. _DEN_ Строго говоря, звук в компьютере - это зависимость напряжения от времени. Однако вполне позволительно говорить о зависимости спектра от времени. 3. Про пианино. Действительно, теоретически любой периодический сигнал можно представить набором конечного числа синусоид с кратными частотами (т.н. "гармоники"), а любой непериодический - набором бесконечного числа синусоид. Но нихрена так не выйдет. Попробуйте. Дело в том, что амплитуды гармоник в звуках, применяемых в музыке, зависят от времени самым причудливым образом. Поэтому существуют другие методы синтеза. 4. valterg Проанализируй мой образец звука и наведи теорию. 5. Всем Русскоязычной литературы по синтезу не видал. В инете толковое встречается редко и по кусочкам. Видел только книги на аглицком на амазон.ком - от $70 до $300. Если нужно, могу написать про методы синтеза звука подробно. _390561458__Kick_Benassi_Illusion.wav
Foamplast Пользовался пакетом Математика-4. Сначала считал твой звук : см. sound1 и 01,02( по кусочкам). Периоды синусоид уже практически видны. Далее спектр - только начало. Спектр сложный(картинки sp1 и sp2), но явно видна доминирующая частота ниже 20 Гц - это из-за нее звук такой глухой и два обертона 35 и 50 Гц ( в 50 Гц там посложнее структура). Весь остальной спектр имеет маленькие амплитуды и создает "окраску звука". Теперь можно синтезировать звук и добавлять частоты по вкусу. Что получится не знаю, попробую на досуге. У меня этих kick-ов тоже много накачано. К сожалению я не меломан, даже слуха нет и мне, что 44 битрейт, что выше - не чувствую разницы. 380383735__kick_an.zip
Не совсем точно. Вернее - совсем неточно. Любой периодический сигнал можно представить безконечного числа синусоид с частотой кратной частотой сигнала. А любой непереодический сигнал - тоже. Только частота непереодического сигнала, 0Hz - поетому спектр получаеться сплошной а не дискретной.
Foamplast >Если нужно, могу написать про методы синтеза звука подробно Очень интересно. Сам пробовал формулы, пробовал привести в систему спектры сигналов обработанных эффектом, но ничего хорошего не получилось.
ozzman Волновое уравнение прекрасно решается и там не очень сложно Не, там вобще какой-то изврат был - функция двух переменных (время и положение на струне), потом учитывалось еще несколько факторов (то ли сопротивление воздуха, то ли еще что-то ). Foamplast Ладно, главное друг друга поняли Если нужно, могу написать про методы синтеза звука подробно. Было бы здорово если бы ты пару статей для сайта написал. Дядя Беспощадный Даос тебе выдал бы диплом "Почетного Воина Дзена" Еще раз по поводу пианино... Получается что каждая гармоника в пианино еще как-то во времени амплидуду меняет (если не учитывать экспоненциального затухания) ? Как же тогда быть?..
_DEN_, Все "Было бы здорово если бы ты пару статей для сайта написал." - ОК, горю желанием, только сайт-то про ассемблер. А я напишу "Методы синтеза звуков." Как же быть? _DEN_ "Получается что каждая гармоника в пианино еще как-то во времени амплидуду меняет (если не учитывать экспоненциального затухания) ? Как же тогда быть?.." Использовать другой метод синтеза. valterg Если правда получится по твоей теории синтезировать звук, пиши мне. Буду пользоваться этой "математикой".
_DEN_ >Не, там вобще какой-то изврат был - функция двух переменных (время и положение на струне), потом учитывалось еще несколько факторов (то ли сопротивление воздуха, то ли еще что-то ). наверно что-то вроде: u<sub>tt</sub> = a<sup>2</sup>*u<sub>xx</sub> + F(x,t); u(x,0) = f(x); u<sub>t</sub>(x,0) = g(x)? Если F(x,t) = 0 и начальные условия = 0(самый простой случай ), то решение будет выглядеть как: u(x,t) = A(x-at)+B(x+at) - сумма двух бегущих волн произвольной формы, движущихся в противоположных направлениях со скоростью a. При наличии внешней силы (F(x,t)!=0) решение немного посложнее.