caso de estudio · el motor de música

ap-studiobeatwave

Cómo se hizo el motor que compone en tiempo real la música de Asteroid Pong. AP-STUDIO BEATWAVE nació como el taller donde se diseñó ese motor: un estudio de música procedural que corre entero en el navegador. Esta página cuenta cómo funciona, qué decisiones se tomaron y qué dejó el proyecto.

Caso de estudio · 2026WebAudio · un solo archivo17 géneros
El Estudio en la vista de PC: rack de 8 canales con sus pasos, lista de la canción por partes, editor de la melodía y mixer afinar · vista de pc
house melódico · 124 bpm7 partes · 160 compases, desde un gancho de 5 notas
el desafío

Horas de música que no se repite, en un juego chico.

Un juego de partidas cortas que se juega una y otra vez necesita música para horas, que acompañe lo que pasa en pantalla y que no canse. Con temas grabados, eso son cientos de megas de audio y loops que se reconocen a los diez minutos.

el problemaVariedad sin peso

Música distinta en cada partida, que cambie con cómo venís jugando y que entre en un juego web y en Android sin descargas grandes.

el enfoqueUn compositor con reglas

En lugar de reproducir canciones, un motor las compone mientras suenan, con las reglas que usaría un compositor para cada género, y sintetiza todos los sonidos en vivo con WebAudio.

el tallerUn estudio para diseñarlo

Para afinar el motor hacía falta escucharlo, tocarlo y medirlo. Así nació AP-STUDIO BEATWAVE: el mismo motor con controles, pantallas y herramientas de mezcla, de donde sale lo que suena en el juego.

quién y con quéDirección humana, un solo archivo

Diseño, composición y dirección: Daniel J. Campos Lozada (NoamDan). JavaScript y WebAudio en una sola página: todos los sonidos se sintetizan en el propio código, y pruebas automáticas renderizan pistas y las miden.

cómo compone

De tres notas a una canción entera.

El motor trabaja como un compositor con método: primero una idea chica que se pueda recordar, después la frase y al final la forma. Cada pista sale de una semilla, que queda anotada en su ficha.

  1. MotivoUna célula de 3 a 6 notas con ritmo propio. Tiene carácter: pegadiza, cantable o rítmica.
  2. Frase de 8 compasesEl motivo vuelve como eco, secuencia o fragmento, sube a un punto alto y cierra. La perilla Apertura decide cuánto cambia: a la izquierda se repite casi igual; a la derecha salta y usa notas de paso.
  3. Canción con formaLa frase se reparte en partes: intro, A, B, break y outro. Cada género tiene sus formas (Pop, EDM, Lo-fi, Hip-hop, Cinematográfica y otras) y el motor elige entre las que le tocan.
Forma EDM · 160 compases · la de la canción de las capturas
  1. Intro16 comp.
  2. A16 comp.
  3. B32 comp.
  4. Break32 comp.
  5. A16 comp.
  6. B32 comp.
  7. Outro16 comp.
Panel «tu gancho»: un motivo de 5 notas y sus apariciones en 8 compases, cada una coloreada según su rol
El gancho. El motivo (rosa) y cómo vuelve a lo largo de los 8 compases: cada color es un rol (eco, secuencia, fragmento, punto alto, cierre). Tocá cualquier captura para verla en tamaño completo.

Las reglas del gancho

  • Tiempos fuertes y notas largas, siempre en notas del acorde.
  • Notas de paso que resuelven por grado.
  • Sin saltos de más de una sexta y con un rango acotado.
  • 7 formas de melodía (pregunta y respuesta, AABA, ABAC, riffs de 1 y 2 compases, notas largas, frase corta) y 7 remates.
  • En la parte B, el gancho sube una tercera.
Panel «la canción»: 7 partes en una línea de tiempo y la descripción de cada una
La canción. Lo que el motor armó desde ese gancho: la intro sin melodía, la A con el gancho tal cual, la B más arriba y con más energía, el break al doble de lento.

Armonía que no choca

armoníaPor género y por modo

Progresión de 4 acordes, curada para cada género o nueva y funcional (tónica, preparación, dominante), siempre en el tono de la canción. El color (7.ª, 9.ª, add9, sus2, sus4, 6.ª) se elige solo entre los que suenan bien en la escala: probado en 600 pistas, ningún choque.

vocesConducción de voces

Los acordes se acomodan buscando el menor movimiento entre uno y otro, incluido el salto del último al primero. Sobre 1400 progresiones, ninguna se mueve más que antes y 732 se mueven menos.

parte bAcordes propios en B

La parte B usa otra progresión de la misma tonalidad, que arranca en otro acorde y con un poco más de color; también puede cambiar de escala sin cambiar de tónica. Probado en 240 pistas: el gancho de B cae siempre en notas del acorde.

segunda vozContramelodía

Una segunda voz suave, una octava abajo, que le contesta al gancho en sus huecos con notas del acorde que bajan por grado. Suena en la parte B y en la última A.

Panel de acordes: progresión con nombres completos, piano con las notas, teclado de acordes, rasgueo, los nueve gestos y el desarrollo por partes
Acordes. Progresión con color, teclado para tocar acordes de la escala, rasgueo, gestos y el desarrollo por partes (acordes propios en B y contramelodía).
géneros, compases y temporadas

17 géneros, cada uno con sus reglas.

Un género no es solo un tempo: trae su batería, su swing, sus sonidos, sus formas de canción y su manera de humanizar. Estos son los 17, con sus tempos típicos.

  • Lofi canal70–90 bpm
  • Lofi house lounge112–124 bpm
  • Lofi house crudo122–130 bpm
  • Synthwave chill85–115 bpm
  • Techno melódico + trance126–135 bpm · juego
  • House melódico / afro120–128 bpm · juego
  • Liquid DnB168–174 bpm · juego
  • Jungle melódico160–170 bpm · juego
  • Neurofunk170–178 bpm · juego
  • Tema de jefe120–160 bpm · juego
  • Chiptune110–150 bpm
  • Pocket 4-bit100–140 bpm
  • Ambient50–70 bpm
  • Cinematográfico60–90 bpm
  • Hip-hop boom-bap85–95 bpm
  • Trap / drill130–145 bpm
  • UK garage130–135 bpm

Los marcados con «juego» son los que junta el atajo «Viaje del juego» de la Mezcla. El tempo se puede mover a mano; el Estudio avisa si queda fuera del rango típico del género.

6 compases4/4 · 3/4 · 6/8 · 12/8 · 5/4 · 7/8

La batería se reescribe para cada uno: el vals en 1-2-3, el 6/8 en dos pulsos, el 5/4 en 3+2, el 7/8 en 2+2+3. Bajo, acordes y melodía se ajustan al compás nuevo. Se elige al generar o en vivo.

9 temporadasDel Día de Muertos al invierno

Halloween, Día de Muertos, Navidad, Año Nuevo, Lluvia de meteoros, Primavera, Verano, Otoño e Invierno. Cada una suma progresiones propias a cualquier género y capas de sonido: trompetas y campanas en Día de Muertos, cascabeles y coro en Navidad, cuenta regresiva y fuegos en Año Nuevo. En automático, la temporada sale de la fecha.

9 gestosLo que pasa en cada cambio

Crecer, Subida, Barrido, Golpes y Reverso antes de la parte B; Hundirse y Cinta frenada antes del break; Cascada y Campanazo al entrar la A y en el final. Cada uno termina justo en el cambio de parte; el motor elige según el género y no repite el último que usó.

Halloween, por ejemplo, siempre suena en menor armónica o frigio y suma caja de música desafinada, cuerdas en trémolo, un latido cada 8 compases y susurros.

suena humano

Ni perfecto ni torpe: humano.

Una máquina que toca exacto suena a máquina. El Estudio corre cada golpe y cada nota un poco, con el criterio de cada género, y deja quietos los acentos.

perillaHumano

100 % es el valor de cada género, 0 % es exacto y llega hasta 167 %. Nunca pasa de ±20 % de fuerza ni de ±25 ms, y los golpes a fuerza plena y el primer paso de la canción no se tocan. Mueve batería, melodía, bajo y acordes, y está en todas las vistas.

dinámicaBombeo por grupos

El bombo empuja hacia abajo al resto, como el sidechain de la música electrónica, con una cantidad para cada grupo de instrumentos y un tiempo de recuperación que se ajusta al tempo.

bateríaRellenos

Antes de entrar a una parte A o B, la caja hace un relleno en la última negra del compás, como lo haría un baterista. Se apaga entre las opciones del motor.

notasLigado

Melodía, acordes y synth largo tienen su perilla Ligado: de la nota cortada a la que se sostiene y empalma con la siguiente sin hueco. Cada sonido trae su valor de fábrica.

mezcla tipo dj

Una radio que no se termina.

En la Mezcla, el motor crea un tema tras otro y los cruza en dos decks, como un DJ: baja uno mientras sube el otro, cambia el bajo a mitad del cruce, lleva el tempo de un tema al siguiente y solo junta tonos compatibles (el mismo, la quinta o la cuarta).

La Mezcla en pleno cruce: formas de onda de los decks A y B, portadas, partes de cada tema y el mezclador con sus perillas y el crossfader
La Mezcla cruzando dos temas con el atajo «Viaje del juego». Las portadas salen del mismo motor de portadas del juego.
arco del setOlas que terminan en un jefe

Olas (por defecto): calentamiento, subida, pico con un tema de jefe y respiro, de 4 a 6 temas; cada ola arranca un poco más alta. Subida larga: unos 14 temas subiendo hasta el jefe y 3 de cierre. Parejo: energía estable.

el próximo temaTemas emparentados

Con «Pariente», el próximo tema comparte tono compatible, clima vecino, tempo de la misma familia (sin saltos de más de 12 %), la mitad de los sonidos y un gancho con el mismo ritmo de motivo y otras notas. Medido en 12 temas: se mantienen unos 5 de 8 sonidos y no hay saltos de tempo. «Primo» y «Libre» sueltan más.

simulaciónJugador virtual

La Mezcla puede imaginar a alguien jugando: si avanza, la ola sube; si se traba, la ola no avanza y la energía baja un poco. Es la misma idea que en el juego, donde la música sigue cómo venís jugando.

exporta listo para distribuir

De la idea al archivo para la distribuidora.

Exportar arma un .zip con lo que pide una distribuidora para Spotify y otras plataformas. La canción se procesa fuera de tiempo real, unas 15 veces más rápido que escucharla.

aurora-lights/
  aurora-lights.wav    WAV 24 bits · 44,1 kHz
  aurora-lights.mp3    MP3 320 kbps
  stems/               un WAV por canal prendido
  portada-3000.jpg     portada de 3000 × 3000
  ficha.txt · .json    los datos de la canción
  cancion.json         el proyecto, para editarlo
Volumen
−14 LUFS integrado, medido con el estándar de streaming (ITU BS.1770), y un pico real de −1 dBTP medido entre muestras, como lo miden Spotify y YouTube. Probado: −14,0 LUFS en WAV y en MP3.
Revisión previa
Antes de exportar, y sin cambiar nada, revisa picos, pico real, clipping, compatibilidad en mono, DC y graves o agudos extremos de la mezcla cruda.
Tema de referencia
Con un tema de referencia cargado, el Estudio compara volumen, pico real, ancho estéreo y balance por zonas, y sugiere qué canal tocar. El archivo se analiza en el aparato, sin subirse a ningún lado.
Diagnóstico de balance
Mide la mezcla por tercios de octava contra su propia pendiente, nombra el síntoma (turbio, encajonado, áspero, retumbante, sin cuerpo), escucha cada canal solo para decir cuál lo causa y ofrece un botón por corrección. Se aplican a mano, de a una: es una guía, no una verdad absoluta.
Ficha
Título, artista, colección, compositor, género, tempo, tono, progresión, forma, duración y semilla. Se llena sola.
Pantalla de Exportación: la revisión previa con todos los controles en verde, el destino, los archivos de audio y la ficha de la canción
Exportación con la revisión previa ya corrida y la ficha que se llena sola.
pedir con palabras

Describila y el motor la arma.

En «Pedir una pista con palabras» se escribe lo que se quiere y el Estudio entiende género, tono, modo, tempo, compás, instrumentos y algunos artistas de referencia.

Caja «Pedir una pista con palabras» con un pedido escrito, ejemplos para tocar y lo que entendió el Estudio
«house melódico en la menor a 124 bpm con piano eléctrico». Abajo, lo que entendió: género, tempo, tono y sonido.
  • Lo que escribís gana sobre lo que sugiere una referencia.
  • Si no entiende nada, pregunta en vez de inventar.
  • Una referencia es una aproximación de la receta, no una copia.
  • Funciona sin internet: reconoce palabras clave dentro de la misma página y no manda el texto a ningún lado.

Pedidos que entiende

  • lofi en la menor a 85 bpm con piano
  • cinematográfica triste en 3/4
  • trap oscuro a 140 bpm
  • ambient suave a 60 bpm

También entiende palabras clave en inglés.

en el juego

El mismo motor que suena cuando jugás.

El Estudio parte del motor de música del juego, con las mismas tablas de teoría, y le pone controles. Por eso lo que se prueba acá puede volver al juego.

partidaMúsica que sigue tu nivel

En Asteroid Pong la música arranca en techno y pasa por drum & bass y jungle hasta breakcore, de 124 a 194 BPM, según tu nivel y cómo venís jugando.

jefesUn tema por jefe

Cada jefe tiene su tema, entre 166 y 176 BPM. En el Estudio, «Tema de jefe» es un género más, y en la Mezcla cada ola del set termina en un jefe.

rocolaTres estilos de sonido

La rocola del juego pasa los temas de los jefes en moderno, pocket 4-bit y chiptune: son los mismos tres modos de sonido que se eligen en el Estudio.

comparar«Original del juego»

Un interruptor hace sonar la melodía, el bajo y los sonidos tal como están hoy en el juego, para comparar con lo nuevo.

de vueltaDel Estudio al juego

Lo primero que pasa del Estudio al juego son tres timbres de bajo nuevos (sub, cuerpo y reese), que el motor del juego puede elegir además del original. Melodías, géneros y efectos del juego quedan como están.

cómo está hecho

Un solo archivo, en el navegador.

Todos los sonidos se sintetizan en vivo con WebAudio, la API de audio del navegador. El Estudio entero, con su codificador de MP3, es una sola página web.

Una vista por aparato

PC: rack, lista y mixer, para producir con mouse. iPad: escenas y pad XY, para tocar en vivo con los dedos. Celular: groovebox, para bocetar rápido. El mixer, con corte de graves, ancho y paneo por canal, está en las tres.

Reloj sin tropiezos

Las notas se agendan con al menos 300 ms de anticipación, y más si el aparato es lento: el Estudio mide cuánto tarda en redibujar la pantalla y se adapta. Los efectos caen en el tiempo exacto del paso. En una prueba con el procesador seis veces más lento: cero notas tarde (antes, hasta 161 ms).

Pad XY y automatización

Siete escenas de efectos: filtro, mood + energía, delay, stutter, compuerta, sidechain y eco de reverb. REC graba el pad y las perillas como automatización.

Sonidos votados

Cada sonido pasó por un Laboratorio de sonidos aparte, donde se votó si se queda, se saca o queda solo para elegir a mano.

El Estudio en un celular: pantalla con mood, tono, género y tempo, pads de los 8 canales y el editor de la melodía
Groovebox, la vista de celular.
lo que aprendimos

Lo que dejó el proyecto.

melodíaReglas antes que azar

Las primeras melodías eran caminatas al azar: técnicamente en la escala, pero sin nada que recordar. Lo que las volvió pegadizas fueron reglas simples de oficio: un motivo que vuelve, notas del acorde en los tiempos fuertes y notas de paso que resuelven.

calidadMedir, no adivinar

Cada promesa se volvió una prueba: ningún choque de acordes en 600 pistas, −14,0 LUFS medidos con el estándar de streaming, pico real bajo −1 dBTP. Casi 50 pruebas automáticas renderizan audio y lo miden antes de cada cambio.

tiempoEl reloj no se negocia

Una nota tarde se oye aunque la pantalla se vea perfecta. Separar el dibujo de la interfaz del reloj y hacer que la anticipación se adapte al aparato llevó las notas tarde a cero, aun con el procesador seis veces más lento.

sonidoDecide el oído

Cada sonido pasó por un laboratorio de votación: se queda, se saca o queda solo para elegir a mano. Los números ayudan a encontrar problemas, pero lo que se publica lo decide una persona escuchando.

créditos y transparencia

Un motor propone. Una persona decide.

La música de Asteroid Pong y AP-STUDIO BEATWAVE están compuestos y dirigidos por Daniel J. Campos Lozada, que publica como NoamDan, en Buenos Aires. El motor propone ganchos, formas y sonidos; qué se queda, qué se cambia y qué se publica lo decide una persona.

Por eso cada ficha que exporta el Estudio lo dice así:

«música creada con un motor procedural y dirección humana»

El codificador de MP3 es lamejs (licencia LGPL-3.0).