Strudel live coding: crea música con código online
Escribe patrones musicales como código y escúchalos al instante en el editor Strudel integrado: TidalCycles para el navegador.
Elige abajo un patrón inicial, pulsa reproducir dentro del editor y cambia el código mientras suena. Eso es live coding: la música se actualiza en cuanto vuelves a evaluar.
Patrón: Batería
sound("bd hh sd hh")El sonido solo comienza cuando pulsas reproducir dentro del editor. ¿Quieres el entorno completo con navegador de muestras y visuales? Abrir en Strudel completo
Referencia rápida de mini-notación de Strudel
Las diez construcciones que desbloquean la mayor parte del lenguaje de patrones. Todo lo que está entre comillas dobles es mini-notación; cada secuencia entre comillas dura exactamente un ciclo.
| Construcción | Ejemplo | Qué hace |
|---|---|---|
| sound() / s() | sound("bd hh sd hh") | Reproduce muestras o sintetizadores con nombre: bd = bombo, sd = caja, hh = charles. Los cuatro eventos comparten un ciclo por igual. |
| note() | note("c4 e4 g4").sound("piano") | Reproduce alturas por nombre (c4, eb3) o número MIDI y las envía al sonido que encadenes después. |
| * (repetir) | sound("hh*8") | Comprime 8 charles en el espacio de un evento: la forma estándar de escribir subdivisiones rápidas. |
| ~ (silencio) | sound("bd ~ sd ~") | Un espacio silencioso. La cuadrícula de eventos conserva su ritmo; la tilde simplemente no reproduce nada. |
| [ ] (grupo) | sound("bd [sd sd] bd sd") | Los corchetes empaquetan varios eventos en un espacio y subdividen su tiempo; aquí dos cajas rápidas comparten el pulso 2. |
| < > (alternar) | note("<c2 eb2 g2>") | Los signos menor y mayor reproducen una entrada por ciclo y las recorren: una progresión de acordes instantánea. |
| stack() | stack(sound("bd*4"), sound("hh*8")) | Superpone patrones para que suenen a la vez: así creas una batería completa o añades un bajo bajo la batería. |
| fast() / slow() | sound("bd sd").fast(2) | Acelera o estira un patrón: fast(2) encaja dos repeticiones por ciclo; slow(2) extiende una sobre dos ciclos. |
| rev() | note("c4 e4 g4 b4").rev() | Invierte el patrón dentro de cada ciclo: una variación melódica de una sola palabra. |
| .euclid(k, n) | sound("bd").euclid(3, 8) | Distribuye k golpes lo más uniformemente posible en n pasos. euclid(3,8) es el ritmo tresillo de innumerables grooves latinos y de baile. |
Sobre Strudel y el live coding
Recetas de patrones para probar en el editor
Copia cualquiera en el editor integrado, pulsa reproducir y modifícala un token cada vez.
| Código | Lo que oyes | Idea que demuestra |
|---|---|---|
| sound("bd hh sd hh") | Un backbeat básico: bombo, charles, caja, charles, una vez por ciclo | Cuatro eventos dividen un ciclo por igual: el hola mundo de la mini-notación. |
| sound("bd*4, hh*8") | Bombo four-on-the-floor bajo un flujo de charles en corcheas | Una coma dentro de las comillas superpone secuencias, como un stack() compacto. |
| note("<c2 eb2 g1 bb1>").sound("sawtooth").lpf(500) | Una línea de bajo oscura y filtrada que cambia de fundamental en cada ciclo | Los signos menor y mayor alternan por ciclo; lpf(500) es un filtro pasa-bajos de 500 Hz que suaviza el diente de sierra. |
| sound("bd").euclid(3, 8) | El tresillo: golpes en los pasos 1, 4 y 7 de 8 | Los ritmos euclidianos distribuyen 3 golpes lo más uniforme posible en 8 pasos, de son cubano a EDM. |
| note("c4 e4 g4 b4").rev().fast(2) | Un arpegio descendente tocado dos veces por ciclo | Las transformaciones se encadenan de izquierda a derecha: invierte el patrón y luego duplica su velocidad. |
Cómo empezar a hacer live coding
- Haz clic en un patrón inicial —Batería, Melodía, Línea de bajo o Polirritmia— para cargar su código en el editor Strudel integrado.
- Pulsa el botón de reproducir dentro del editor (los navegadores requieren un clic antes de iniciar sonido).
- Edita el código mientras suena: cambia una muestra, añade *2 a un evento o cambia una nota; después pulsa Ctrl+Enter (Cmd+Enter en Mac) para volver a evaluar.
- Superpone más patrones con stack() y dales forma con fast, slow, rev o euclid usando la tabla de referencia rápida.
- Cuando el patrón supere el boceto, abre Strudel completo para usar el entorno con navegador de sonidos y visuales.