NØISEDE

Songs mit KI machen

Rezepte

Ein Cover machen, auf einem bestehenden Song aufbauen, und nach Griffen fragen, die du wirklich spielen kannst.

Ein Cover machen

Der Prompt make_song macht das in einem Schritt; die meisten Clients zeigen ihn als Slash-Befehl. Von Hand:

  1. song_format und capabilities, damit das Modell die Form und die Grenzen kennt.
  2. Tonart, Tempo und Teile herausfinden – aus dem, was das Modell von der Aufnahme weiß, oder aus einem Akkordblatt, nie aus Songtexten. Der Prompt sagt es auch: eine Textseite verrät nichts, was ein Akkordblatt nicht verrät, und ein NØISE-Song trägt keinen Text.
  3. check_chords auf die Akkorde, gegen die Tonart.
  4. chord_shapes für die Griffe.
  5. build_song.

Lass das Modell sagen, wie sicher es ist. Der Prompt weist es an, weil eine zugegebene Vermutung nützlich ist und ein selbstsicherer falscher Akkord nicht.

Eine Sache an einem bestehenden Song ändern

Schick den Song als base und nur die Änderung als changes. So muss das Modell nie das ganze Schema neu aufsagen, und genau dabei geht sonst still etwas verloren.

{
  "base": "noise://song?d=…",
  "mode": "direct",
  "changes": [
    { "op": "setSection", "index": 1, "patch": { "fillIn": "crash", "preset": "TIGHT", "energy": "lift" } }
  ]
}

Die Operationen sind setSong, setSection, addSection, removeSection, setBar und transpose. Ein setSection-Patch kann ein einzelnes Feld einer Zeile setzen und den Rest lassen; setSong nimmt den Stil, das Kit und die eigenen Zeilen des Songs. Alles, was auf einen Teil oder Takt zeigt, den es nicht gibt, wird beim Namen abgewiesen statt erraten.

Gib dem Song seine Form

Die Band spielt von sich aus ein gutes Arrangement; die Zeilen sind dafür da, was diesen Song wiedererkennbar macht. Lies den Song wie ein Drummer und fass so wenig wie möglich an:

"style": "rock", "kit": "rock.clean", "preset": "LAID BACK",
"sections": [
  { "name": "INTRO", "energy": "hold", "bars": ["G", "B", "C", "Cm"] },
  { "name": "VERSE", "repeats": 2, "bars": ["G", "B", "C", "Cm"] },
  { "name": "CHORUS", "energy": "lift", "fillIn": "crash", "preset": "DRIVING", "colorLayer": true, "bars": ["G", "B", "C", "Cm"] },
  { "name": "VERSE", "fillIn": "splash", "fillOut": "fill", "bars": ["G", "B", "C", "Cm"] },
  { "name": "CHORUS", "energy": "lift", "fillIn": "crash", "preset": "DRIVING", "colorLayer": true, "bars": ["G", "B", "C", "Cm"] },
  { "name": "BRIDGE", "energy": "groove", "preset": "TIGHT", "fillOut": "none", "bars": ["G", "B", "C", "Cm"] },
  { "name": "OUTRO", "energy": "hold", "drumsOff": true, "bars": ["G", "B", "C", "Cm"] }
]

Sieben Teile, die Zeilen an vier Stellen berührt: die Refrains kommen mit einem Crash und spielen DRIVING, die zweite Strophe landet weich und füllt wieder auf, die Bridge zieht an und geht direkt in den letzten Refrain, das Outro ist die Gitarre allein. Alles andere folgt. Der Guide song_format hat die Regeln dahinter – zuerst die Energie, lass die Strophe folgen, markiere die Ankünfte, der Fill ist der Weg raus, ein Preset pro Art von Teil, Feel-Wechsel sind selten, Drums aus ist echte Stille.

Der neu gebaute Song behält eine sourceId, die auf das Original zeigt, damit die Herkunft erhalten bleibt.

Transponieren

{ "base": "…", "changes": [{ "op": "transpose", "semitones": -2 }] }

Die Tonart wandert, absolute Akkorde wandern mit, und sie werden so geschrieben, wie die neue Tonart es will. Stufen relativ zur Tonart brauchen keine Änderung: sie folgen der Tonart von selbst.

Griffe wandern mit ihrem Akkord den Hals hinauf oder hinunter, außer wo das unmöglich ist: ein Griff mit einer leeren Saite kann nicht wandern (unter dem Sattel gibt es keinen Bund), und einer, der über das Ende des Halses hinausliefe, auch nicht. Die fallen auf den Griff von NØISE selbst zurück, und die Antwort sagt, welche.

Nach Griffen fragen, die du wirklich spielen kannst

{ "song": { … }, "fillGrips": true, "gripCategory": "open" }

Jeder Akkord ohne Griff bekommt einen. Wo die Kategorie für einen Akkord nichts hat – Bm hat keinen offenen Griff, es ist ein Barré-Akkord –, fällt er auf den Standard von NØISE zurück und sagt es dir:

no open grip exists for Bm (easy), so the app's own default was used

Auf einem Song aus der Bibliothek aufbauen

Gib die öffentliche id eines Songs als base an:

{ "base": "d_OxIkOTen", "changes": [{ "op": "setSong", "patch": { "bpm": 96 } }] }

Nur veröffentlichte Songs lassen sich so lesen.

Schreib es wie ein Musiker

Seit 0.71 funktionieren drei Notationen aus dem Schema-Text auch in den Takten von build_song, und die Band spielt alle drei:

  • Eine fallende Basslinie: ["C", "C/B", "Am", "Am/G"] – oder, transponierbar, {"degree": 1}, {"degree": 1, "bass": "7"}, {"degree": 6}, {"degree": 6, "bass": "5"}. Der Bass ist eine Stufe der Tonart; ein Tonname ("bass": "E") geht auch.
  • Ein Refrain, der früh einsetzt: "^G" auf seinem ersten Akkord – die Band schlägt ihn ein Achtel vor dem Takt an und hält ihn. "^^G" ist ein Sechzehntel früh.
  • Ein Wechsel auf der Vier: ["C(3)", "G(1)"] in einem Takt.

Ein Song mit Kapo bekommt "capo": 2 auf dem Song und seine Akkorde so, wie die Hände sie greifen – Wonderwall sind Em-Griffe mit Kapo auf 2, und NØISEs Band lässt es in fis-Moll klingen.