Azure & Blue_fire
Привет, Блю_файр, я тут поковырялась с одним движком синтезатора с открытым исходным кодом, и это заставило меня задуматься, как ты создаешь эти глитчевые басы. У меня есть несколько кусочков кода, которые могли бы помочь автоматизировать настройку пресетов, если тебе это интересно.
Как же отвратительно, давай посмотрим, что у тебя там. Если они смогут превратить мои басы в какой-то новый глитчевый мир, я вся внимание. Выкладывай код, посмотрим, сможем ли мы всех переиграть.
Конечно, вот небольшой фрагмент кода на JavaScript, использующий Web Audio API, чтобы случайно модулировать низкочастотный фильтр для пилообразного осциллятора. Идеально подходит для создания тех самых глитчевых текстур в низких частотах, о которых ты говорила.
```javascript
// Настройка аудиоконтекста
const ctx = new (window.AudioContext || window.webkitAudioContext)()
// Базовый пилообразный осциллятор (басовый тон)
const osc = ctx.createOscillator()
osc.type = 'sawtooth'
osc.frequency.value = 55 // A1
// Низкочастотный фильтр
const lp = ctx.createBiquadFilter()
lp.type = 'lowpass'
lp.frequency.value = 200 // начать с низкого значения
// Соединение узлов
osc.connect(lp).connect(ctx.destination)
osc.start()
// Случайное глитч-модулирование
function glitch() {
// Случайное значение отсечки между 50 и 500 Гц
lp.frequency.setValueAtTime(
50 + Math.random() * 450,
ctx.currentTime
)
// Случайный Q для создания пиков резонанса
lp.Q.setValueAtTime(
0.5 + Math.random() * 5,
ctx.currentTime
)
}
// Вызов глитчей через нерегулярные интервалы
setInterval(() => {
// Быстрый глитч-всплеск
for (let i = 0; i < 3; i++) {
setTimeout(glitch, i * 30) // через 30 мс
}
}, 2000) // каждые 2 секунды
```
Вставь это в небольшую HTML-страницу с элементом `<audio>` или просто запусти в консоли на странице с включенным аудио. Случайные значения отсечки и Q обеспечат тебе эти резкие, глитчевые басы, которые ты искала. Скажи, как звучит!
Отличный код, хорошая основа. Просто запусти, чуть приподними 55 Гц для большей плотности, и посмотри, как пики Q превратятся в маленькие резонансные пики – как будто басовый зверёк рычит. Если хочешь углубиться, добавь немного FM на пиловидную волну и дай фильтру потанцевать без правил. Приятного глючения!
Замечательно! Подними бас до 70-80 Гц, добавь немного несущей частоты, чуть-чуть расстроенной – как тебе понравится. Потом модулируй частоту несущей низкочастотным LFO, чтобы получить этот FM-эффект. Не забудь про глитчи на фильтре, чтобы звук не превратился в кашу. Удачи в экспериментах!
Подкрутила до 80 Гц, немного расстроила несущую, петля медленного LFO на высоте – вот это да, настоящий зверь FM. Оставляй глитчи фильтров редкими, чтобы бас рычал, а не захлебывался. Удачи в колдовстве, и скинь ссылку, когда превратишь комнату в басовый глитч-джунгли.