Формулы музыкальных инструментов :)

Тема в разделе "WASM.A&O", создана пользователем _DEN_, 21 сен 2004.

  1. _DEN_

    _DEN_ DEN

    Публикаций:
    0
    Регистрация:
    8 окт 2003
    Сообщения:
    5.383
    Адрес:
    Йобастан
    Если кто баловался...

    Подскажите формулы любых музыкальных инструментов (пианино, 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-ами (тарелки) сложнее. Интересно по поводу пианино и разных басов.

    Поделитесь, люди добрые :)
     
  2. Foamplast

    Foamplast New Member

    Публикаций:
    0
    Регистрация:
    6 ноя 2003
    Сообщения:
    80
    Адрес:
    Russia
    Ну, с таким подходом уедешь в далёкие 70-е года :)



    Вообще в этом деле современные синтезаторы лучше описывать не в таких формулах, а на более высоком уровне. А именно: в терминах генераторов, фильтров, задержек, отражателей, насыщателей, огибающих и пр.



    Пример: опиши мне формулой эффект перегрузки ("дисторшн"), да такой, чтоб звучал как надо. Я думаю, там рехнуться можно если описывать зависимость спектра от времени.



    Я увлекаюсь написанием синтезаторов. И добился неплохих результатов. Можешь задавать вопросы. На асме я их ещё не пишу. Поэтому наше обсуждение будет выходить за тематику форума.



    foamplast@mail.ru
     
  3. _DEN_

    _DEN_ DEN

    Публикаций:
    0
    Регистрация:
    8 окт 2003
    Сообщения:
    5.383
    Адрес:
    Йобастан
    Foamplast



    Не, не будет :) Ведь правда, дядя Беспощадный Даос? :)





    Ты хотел сказать функцию от времени? Спектр он не от времени а от частоты или фазы.



    Ну хорошо. Например, я хочу пианино. В какую сторону мне смотреть? Ясно, что громкость звучания убывает по экспоненте, тоесть итоговая формула умножается на exp(t/tau). А дальше-то как быть? Да, пианино имеет гормоническую природу. Но ведь это не просто синус или косинус? Кстати, в учебнике по математике была задача об описании координаты струны при колебании. Решалась через дифференциальное уравнение. Ответом был бесконечный ряд из интегралов :) Во сне приснится - подушкой не отмахаешся :)



    И еще... Раз уж ты этим занимался. Есть какие-нибудь русскоязычные доки по этому делу? Что посоветуешь?
     
  4. volodya

    volodya wasm.ru

    Публикаций:
    0
    Регистрация:
    22 апр 2003
    Сообщения:
    1.169
    Ведь правда, дядя Беспощадный Даос? :)





    Как минимум один из беспощадных даосов тебе это гарантирует. :) Я только рад, если умные и талантливые люди с интересом обсуждают здесь свои идеи! Вы же не новички и не задаете вопросы об иконках в трее, которые меня бесят :)
     
  5. ozzman

    ozzman New Member

    Публикаций:
    0
    Регистрация:
    22 янв 2004
    Сообщения:
    56
    >Кстати, в учебнике по математике была задача об описании координаты струны при колебании.

    Для этой задачи больше подойдет учебник по мат. физике.

    Волновое уравнение прекрасно решается и там не очень сложно, "Во сне приснится - подушкой отмахаешся".
     
  6. valterg

    valterg Active Member

    Публикаций:
    0
    Регистрация:
    19 авг 2004
    Сообщения:
    2.105
    Про струну вроде просто. Там сумма основной и кратных частот - 2,3 и т.д. Для амплитуды каждой из частот надо задать формулу и все. Есть еще дурацкая идея : взять с сайтов образцы звуков и выполнить спектральный анализ.

    После уже можно играться со спектрами и наводить теорию.

    Для струны спектр будет очень простой.
     
  7. Edmond

    Edmond узник замка IF THEN ELSE

    Публикаций:
    0
    Регистрация:
    2 сен 2002
    Сообщения:
    203
    Адрес:
    WASM.RU
    Foamplast





    Что ЗНАЧИТ ВЫЙДЕТ?!



    Помоему не выйдет!!!!!!!!



    ХОЧУ СТАТЬЮ ПРО НАПИСАНИЕ СИНТЕЗАТОРА :)))



    P.S.

    ХОЧУ ROLAND!!!!! ^)))))))))
     
  8. Foamplast

    Foamplast New Member

    Публикаций:
    0
    Регистрация:
    6 ноя 2003
    Сообщения:
    80
    Адрес:
    Russia
    1. Насчёт тематики форума.



    Приятно, что тема поддерживается. При этом, как я уже говорил, для экспериментов в области звукосинтеза я не использую ассемблер. Я использую Reaktor и CSound. Сейчас пробую разобраться с pure-data. На самом деле из них только Reaktor приспособлен для чего-либо реального. CSound - обалденный дзенский язык с большим потенциалом. Но интерфейс там хреновый. Так что только Реактор. Но это к программированию на ассемблере никак не относится.



    2. _DEN_



    Строго говоря, звук в компьютере - это зависимость напряжения от времени. Однако вполне позволительно говорить о зависимости спектра от времени.



    3. Про пианино.



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



    4. valterg



    Проанализируй мой образец звука и наведи теорию.



    5. Всем



    Русскоязычной литературы по синтезу не видал. В инете толковое встречается редко и по кусочкам. Видел только книги на аглицком на амазон.ком - от $70 до $300. Если нужно, могу написать про методы синтеза звука подробно.

    [​IMG] _390561458__Kick_Benassi_Illusion.wav
     
  9. valterg

    valterg Active Member

    Публикаций:
    0
    Регистрация:
    19 авг 2004
    Сообщения:
    2.105
    Foamplast







    Пользовался пакетом Математика-4.

    Сначала считал твой звук : см. sound1 и 01,02( по кусочкам).

    Периоды синусоид уже практически видны.

    Далее спектр - только начало. Спектр сложный(картинки sp1 и sp2), но явно видна доминирующая частота ниже 20 Гц - это из-за нее звук такой глухой и два обертона 35 и 50 Гц ( в 50 Гц там посложнее структура). Весь остальной спектр имеет маленькие амплитуды и создает "окраску звука". Теперь можно синтезировать звук и добавлять частоты по вкусу.

    Что получится не знаю, попробую на досуге.

    У меня этих kick-ов тоже много накачано.

    К сожалению я не меломан, даже слуха нет и мне, что 44 битрейт, что выше - не чувствую разницы.



    [​IMG] 380383735__kick_an.zip
     
  10. johnfound

    johnfound New Member

    Публикаций:
    0
    Регистрация:
    12 фев 2003
    Сообщения:
    74
    Адрес:
    Bulgaria




    Не совсем точно. Вернее - совсем неточно. ;) Любой периодический сигнал можно представить безконечного числа синусоид с частотой кратной частотой сигнала. А любой непереодический сигнал - тоже. Только частота непереодического сигнала, 0Hz - поетому спектр получаеться сплошной а не дискретной.
     
  11. letopisec

    letopisec New Member

    Публикаций:
    0
    Регистрация:
    8 авг 2004
    Сообщения:
    228
    Foamplast

    >Если нужно, могу написать про методы синтеза звука подробно



    Очень интересно. Сам пробовал формулы, пробовал привести в систему спектры сигналов обработанных эффектом, но ничего хорошего не получилось.
     
  12. _DEN_

    _DEN_ DEN

    Публикаций:
    0
    Регистрация:
    8 окт 2003
    Сообщения:
    5.383
    Адрес:
    Йобастан
    ozzman

    Волновое уравнение прекрасно решается и там не очень сложно



    Не, там вобще какой-то изврат был - функция двух переменных (время и положение на струне), потом учитывалось еще несколько факторов (то ли сопротивление воздуха, то ли еще что-то :)).



    Foamplast



    Ладно, главное друг друга поняли :derisive:



    Если нужно, могу написать про методы синтеза звука подробно.

    Было бы здорово если бы ты пару статей для сайта написал. Дядя Беспощадный Даос тебе выдал бы диплом "Почетного Воина Дзена" :derisive:



    Еще раз по поводу пианино... Получается что каждая гармоника в пианино еще как-то во времени амплидуду меняет (если не учитывать экспоненциального затухания) ? Как же тогда быть?..
     
  13. Foamplast

    Foamplast New Member

    Публикаций:
    0
    Регистрация:
    6 ноя 2003
    Сообщения:
    80
    Адрес:
    Russia
    _DEN_, Все

    "Было бы здорово если бы ты пару статей для сайта написал." - ОК, горю желанием, только сайт-то про ассемблер. А я напишу "Методы синтеза звуков." Как же быть?



    _DEN_

    "Получается что каждая гармоника в пианино еще как-то во времени амплидуду меняет (если не учитывать экспоненциального затухания) ? Как же тогда быть?.."

    Использовать другой метод синтеза.



    valterg

    Если правда получится по твоей теории синтезировать звук, пиши мне. Буду пользоваться этой "математикой".
     
  14. _DEN_

    _DEN_ DEN

    Публикаций:
    0
    Регистрация:
    8 окт 2003
    Сообщения:
    5.383
    Адрес:
    Йобастан
    Foamplast



    Я думаю не суть :) Лишь бы не на Delphi или VB :) Дядя volodya будет рад :)
     
  15. ozzman

    ozzman New Member

    Публикаций:
    0
    Регистрация:
    22 янв 2004
    Сообщения:
    56
    _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) решение немного посложнее.