Предыдущая тема :: Следующая тема |
Автор |
Сообщение |
Mikle
Зарегистрирован: 02.12.2008 Сообщения: 432 Откуда: Туапсе
|
Добавлено: Ср Фев 03, 2016 18:33 Заголовок сообщения: Синтез звуков на jsfiddle.net |
|
|
Есть такой сайтик, некая аналогия шейдертоя, но для звука:
https://jsfiddle.net/ofp1tcxk/embedded/result/
Довольно удобно делиться алгоритмами генерации звука.
Вот мои пробы пиано:
Код: | // Piano
// A - note, B - lenght
var f = pow(2, ((A * 84 + 60.3763) / 12));
var g = 5200 / f;
var tf = 0.000071235 * f;
var a = pow(2, -0.02 * (1 - B) * t * f);
var i = t * 44100;
v0 = sin(i * 2 * tf);
v0 = sin(v0 * g * a * a * a * 0.3) * v0 * v0 * 0.3;
v1 = sin(i * tf * 0.998 - 0.57);
v1 = v1 * v1;
v2 = sin(i * tf * 1.002 + 0.57);
v2 = v2 * v2;
v0 = v0 * a;
v1 = 0.8 * pow (v1, (a * g + 1));
v2 = -0.8 * pow (v2, (a * g * 3 + 1));
return (v0 + v1 + v2) * a; |
Просто копипастим код на страницу, жмём "Generate & play". |
|
Вернуться к началу |
|
|
BiTL DOS lover
Зарегистрирован: 22.09.2007 Сообщения: 2950
|
Добавлено: Ср Фев 03, 2016 19:55 Заголовок сообщения: |
|
|
жаль нельзя поиграть на клавиатуре |
|
Вернуться к началу |
|
|
Lois
Зарегистрирован: 28.06.2011 Сообщения: 254
|
Добавлено: Чт Фев 04, 2016 04:38 Заголовок сообщения: Re: Синтез звуков на jsfiddle.net |
|
|
Mikle писал(а): | Есть такой сайтик, некая аналогия шейдертоя, но для звука:
https://jsfiddle.net/ofp1tcxk/embedded/result/
Довольно удобно делиться алгоритмами генерации звука.
Вот мои пробы пиано:
Код: | // Piano
// A - note, B - lenght
var f = pow(2, ((A * 84 + 60.3763) / 12));
var g = 5200 / f;
var tf = 0.000071235 * f;
var a = pow(2, -0.02 * (1 - B) * t * f);
var i = t * 44100;
v0 = sin(i * 2 * tf);
v0 = sin(v0 * g * a * a * a * 0.3) * v0 * v0 * 0.3;
v1 = sin(i * tf * 0.998 - 0.57);
v1 = v1 * v1;
v2 = sin(i * tf * 1.002 + 0.57);
v2 = v2 * v2;
v0 = v0 * a;
v1 = 0.8 * pow (v1, (a * g + 1));
v2 = -0.8 * pow (v2, (a * g * 3 + 1));
return (v0 + v1 + v2) * a; |
Просто копипастим код на страницу, жмём "Generate & play". |
ничего не понял. Там только один звук - ля. Для чего весь этот код ? |
|
Вернуться к началу |
|
|
Mikle
Зарегистрирован: 02.12.2008 Сообщения: 432 Откуда: Туапсе
|
Добавлено: Чт Фев 04, 2016 09:18 Заголовок сообщения: |
|
|
Цитата: | ничего не понял. Там только один звук - ля. |
А это ничего не подсказывает?
Код: | // A - note, B - lenght |
|
|
Вернуться к началу |
|
|
Lois
Зарегистрирован: 28.06.2011 Сообщения: 254
|
Добавлено: Вт Фев 09, 2016 15:20 Заголовок сообщения: |
|
|
Mikle писал(а): | Цитата: | ничего не понял. Там только один звук - ля. |
А это ничего не подсказывает?
Код: | // A - note, B - lenght |
|
подсказывает, только я не понимаю для чего нужен весь остальной код. |
|
Вернуться к началу |
|
|
Mikle
Зарегистрирован: 02.12.2008 Сообщения: 432 Откуда: Туапсе
|
Добавлено: Вт Фев 09, 2016 15:36 Заголовок сообщения: |
|
|
Весь этот код как раз и формирует звук. |
|
Вернуться к началу |
|
|
|