NØISEES

Hacer canciones con IA

Las herramientas

Cada herramienta que ofrece el servidor de canciones de NØISE, qué toma y qué devuelve.

Siete herramientas. Primero song_format, luego lo que pida el trabajo.

song_format

Sin argumentos. Devuelve el formato entero de una vez: la forma que toma build_song, cómo se escriben compases y acordes, cada estilo con sus grooves, sus kits y su género de batería, qué le puede decir una sección a la banda (el carril DRUMS con sus palabras de platillo y de fill y los siete presets, el carril JAM), cómo usar la banda como lo haría un batería, cada energía, color y afinación, la notación de las formas de guitarra y los límites.

También está disponible como el recurso noise://format/guide, así que un cliente que admita recursos puede tenerlo en contexto sin llamar a ninguna herramienta. La mitad legible por máquina es noise://format/vocabulary.

capabilities

Sin argumentos. Lo que NØISE puede y no puede hacer, y qué campos cambian algo de verdad cuando se carga una canción.

check_chords

{ "chords": ["Am", "F", "E7", "Bm7b5"], "key": "Am" }

Por acorde: si NØISE sabe leerlo y dónde se rompe si no, la grafía canónica, si es diatonic, borrowed u outside respecto a la tonalidad, y si existe una forma de guitarra.

Am -> Am (diatonic), grip xxx555
F -> F (diatonic), grip xx3211
E7 -> E7 (borrowed), grip 020100
Bm7b5 -> Bm7b5 (diatonic), no guitar grip

Esa última línea merece leerse con calma: el acorde es perfectamente válido, encaja en la tonalidad y va a sonar. Solo que NØISE no tiene en su biblioteca una forma para un m7b5, así que el mástil no enseña nada a menos que indiques tú una forma.

chord_shapes

{ "chords": ["F"], "category": "easy", "limit": 1 }

Formas reales de la biblioteca de NØISE, dibujadas:

F - EASY - xx3211 - F easy (xx3211)
       1  2  3  4
 e  ·  1  ·  ·  ·
 B  ·  1  ·  ·  ·
 G  ·  ·  2  ·  ·
 D  ·  ·  ·  3  ·
 A  x  ·  ·  ·  ·
 E  x  ·  ·  ·  ·

Cada una viene con una tag que puedes meter tal cual en build_song. Las categorías son easy, open, barre, power y triads; pasa una tuning y las formas se derivan para esa afinación (una afinación abierta no tiene ninguna, y la respuesta lo dice en vez de no devolver nada).

Usa esto en vez de inventar números de traste. Un modelo adivinando trastes es la manera más fácil de producir una canción que parece correcta y no se puede tocar.

build_song

La principal. Toma una canción, o un borrador parcial más un mode, o una canción existente sobre la que construir:

{
  "mode": "direct",
  "song": {
    "name": "What's Up",
    "author": "4 Non Blondes",
    "key": "A",
    "bpm": 132,
    "style": "rock",
    "sections": [
      { "name": "VERSE", "repeats": 2, "bars": ["A", "Bm", "D", "A"] },
      { "name": "CHORUS", "energy": "lift", "fillIn": "crash", "fillOut": "fill", "preset": "DRIVING", "bars": ["A", "Bm", "D", "A"] }
    ]
  }
}

Devuelve el enlace al archivo .noisesong, la página de la canción, un resumen, el documento y los avisos que haya; un enlace noise:// solo con link: true. fillGrips: true pone una forma de la biblioteca en cada acorde que no tenga; añade gripCategory para decir de qué clase.

Todo lo que el servidor no ha podido usar vuelve como aviso con lo que ha usado en su lugar: un groove desconocido, un bpm fuera de 20–300, un kit que no pertenece al estilo, un nombre de preset que no conoce, una palabra de platillo que la app todavía no toca. Nunca cambia tu canción en silencio. Una sección que pone su propio band, jamKit o género de drums queda rechazada, y se le indica el sitio nuevo: una canción es una sola banda con un kit, y una sección dice cómo toca esa banda (feel, fillIn, fillOut, preset, los mandos, drumsOff).

validate_song

Las mismas comprobaciones, sin preguntas y sin enlace. Para iterar hasta que la canción esté bien sin dejar nada atrás.

load_song

{ "source": "noise://song?d=…" }

Lee una canción existente (un documento .noisesong, un enlace noise:// o un id de la biblioteca de la web) en la misma forma que toma build_song. El cifrado sobrevive intacto a la ida y vuelta, así que puedes cambiar una sola cosa y volver a construirla. Mira Recetas.