{
  "id": "9074959a-7f62-4ed0-8ab7-84e391da4a8e",
  "revision": 0,
  "last_node_id": 3,
  "last_link_id": 1,
  "nodes": [
    {
      "id": 1,
      "type": "SaveAudioAdvanced",
      "pos": [
        814.6894252429659,
        212.1324299979529
      ],
      "size": [
        427.35684983322625,
        160
      ],
      "flags": {},
      "order": 2,
      "mode": 0,
      "inputs": [
        {
          "name": "audio",
          "type": "AUDIO",
          "link": 1
        }
      ],
      "outputs": [
        {
          "name": "audio",
          "type": "AUDIO",
          "links": []
        }
      ],
      "properties": {},
      "widgets_values": [
        "audio/sonilo_music_1.5",
        "mp3",
        "V0"
      ],
      "widgets_values_named": {
        "filename_prefix": "audio/sonilo_music_1.5",
        "format": "mp3",
        "format.quality": "V0"
      }
    },
    {
      "id": 2,
      "type": "SoniloMusic15",
      "pos": [
        344.5811705741751,
        210.59330378242527
      ],
      "size": [
        434.258706503139,
        504.5591599513623
      ],
      "flags": {},
      "order": 0,
      "mode": 0,
      "inputs": [],
      "outputs": [
        {
          "name": "AUDIO",
          "type": "AUDIO",
          "links": [
            1
          ]
        }
      ],
      "properties": {
        "Node name for S&R": "SoniloMusic15"
      },
      "widgets_values": [
        "Warm acoustic folk-pop at 96 BPM. Nylon-string guitar, ukulele, brushed drums, upright bass, hand claps, bright male lead with close harmonies on the chorus, rustic kitchen ambience. Feel-good cooking-show energy, clean modern mix, catchy hook.\n\nLyrics:\n[Verse]\nFlour on the wooden board\nMake a well right in the core\nGolden yolks begin to slide\nFork is dancing side to side\nFeel the rhythm in the dough\nEasy movements, steady flow\n\n[Chorus]\nRoll it out, roll it thin\nLet the kitchen groove begin\nStretch the sheet across the light\nEvery ribbon cut just right\nBoiling water, pinch of salt\nPure delight without a fault\n\n[Verse]\nDust the table with semolina\nSmooth and silky like a dream\nFold it gently, slice the strands\nSimple magic from our hands\nAcoustic bounce and rustic strings\nTaste the joy the cooking brings\n\n[Chorus]\nRoll it out, roll it thin\nLet the kitchen groove begin\nStretch the sheet across the light\nEvery ribbon cut just right\nBoiling water, pinch of salt\nPure delight without a fault\n\n[Bridge]\nToss with olive oil and cheese\nFragrant basil on the breeze\nTwo quick minutes in the pot\nServe it steaming, rich and hot\n\n[Chorus]\nRoll it out, roll it thin\nLet the kitchen groove begin\nStretch the sheet across the light\nEvery ribbon cut just right\nBoiling water, pinch of salt\nPure delight without a fault",
        "auto",
        199852650942707,
        "randomize"
      ],
      "widgets_values_named": {
        "prompt": "Warm acoustic folk-pop at 96 BPM. Nylon-string guitar, ukulele, brushed drums, upright bass, hand claps, bright male lead with close harmonies on the chorus, rustic kitchen ambience. Feel-good cooking-show energy, clean modern mix, catchy hook.\n\nLyrics:\n[Verse]\nFlour on the wooden board\nMake a well right in the core\nGolden yolks begin to slide\nFork is dancing side to side\nFeel the rhythm in the dough\nEasy movements, steady flow\n\n[Chorus]\nRoll it out, roll it thin\nLet the kitchen groove begin\nStretch the sheet across the light\nEvery ribbon cut just right\nBoiling water, pinch of salt\nPure delight without a fault\n\n[Verse]\nDust the table with semolina\nSmooth and silky like a dream\nFold it gently, slice the strands\nSimple magic from our hands\nAcoustic bounce and rustic strings\nTaste the joy the cooking brings\n\n[Chorus]\nRoll it out, roll it thin\nLet the kitchen groove begin\nStretch the sheet across the light\nEvery ribbon cut just right\nBoiling water, pinch of salt\nPure delight without a fault\n\n[Bridge]\nToss with olive oil and cheese\nFragrant basil on the breeze\nTwo quick minutes in the pot\nServe it steaming, rich and hot\n\n[Chorus]\nRoll it out, roll it thin\nLet the kitchen groove begin\nStretch the sheet across the light\nEvery ribbon cut just right\nBoiling water, pinch of salt\nPure delight without a fault",
        "duration": "auto",
        "seed": 199852650942707,
        "control_after_generate": "randomize"
      },
      "color": "#432",
      "bgcolor": "#653"
    },
    {
      "id": 3,
      "type": "MarkdownNote",
      "pos": [
        -420.7379310027502,
        209.8551791985588
      ],
      "size": [
        735.3246626699679,
        840.9635784082412
      ],
      "flags": {},
      "order": 1,
      "mode": 0,
      "inputs": [],
      "outputs": [],
      "properties": {},
      "widgets_values": [
        "## Sonilo Music 1.5\n\n**One prompt, one song.** Describe the music, then write the words: the model sings the `Lyrics:` block you give it, or writes its own if you leave that block out.\n\n---\n\n### What this graph does\n\n1. **Sonilo Music 1.5**: turns a single text prompt into a song with sung vocals.\n2. **Duration**: `auto` picks a length from the prompt, or set the seconds yourself.\n3. **Save Audio (Advanced)**: writes the track as an MP3 you can play from the node.\n\n---\n\n### Writing the prompt\n\nTwo parts, in this order: the musical direction first, the lyrics after it.\n\n| Part | What goes in it |\n|------|-----------------|\n| **Direction** | Genre, tempo, mood, instruments, vocal type, how long the track should feel, and where it will be used |\n| **Lyrics** | The line `Lyrics:` on its own line, then the song underneath |\n\n```\nWarm indie folk at 104 BPM, fingerpicked guitar, brushed drums, upright bass,\nmale vocal with light harmonies, written for a cooking video intro.\n\nLyrics:\n[Verse]\nFlour on the wooden board\nMake a well right in the core\n\n[Chorus]\nRoll it out, roll it thin\nLet the kitchen groove begin\n```\n\nWithout a `Lyrics:` block the model writes its own words from the direction alone, which is the faster way to sketch a style. For a music bed instead of a song, say so in the direction: `instrumental`, `no vocals` or `lyric-free`.\n\n### Section tags\n\nPut a bracketed tag on its own line above the section it covers. `[Verse]`, `[Chorus]` and `[Bridge]` cover most songs; write the tag again with its lines every time that section comes back, so a song with three choruses carries `[Chorus]` three times.\n\nKeep the prompt at 2000 characters or less for direction and lyrics together: a six-section song usually lands around 1000 to 1300 characters, including the direction.\n\n### Duration\n\n- **auto**: the song is sized to the lyrics you wrote. The example above, six sections at roughly 1100 characters of lyrics, came back as a 2:30 track.\n- **custom** with `seconds` (10 to 360): forces a fixed length instead. Lyrics that do not fit are cut, lyrics that are too short are repeated.\n\n### Seed\n\nSeed only decides whether the node runs again. It does not make the result repeatable: the same prompt and seed return a different song each run, so re-run to collect variations.\n"
      ],
      "widgets_values_named": {
        "text": "## Sonilo Music 1.5\n\n**One prompt, one song.** Describe the music, then write the words: the model sings the `Lyrics:` block you give it, or writes its own if you leave that block out.\n\n---\n\n### What this graph does\n\n1. **Sonilo Music 1.5**: turns a single text prompt into a song with sung vocals.\n2. **Duration**: `auto` picks a length from the prompt, or set the seconds yourself.\n3. **Save Audio (Advanced)**: writes the track as an MP3 you can play from the node.\n\n---\n\n### Writing the prompt\n\nTwo parts, in this order: the musical direction first, the lyrics after it.\n\n| Part | What goes in it |\n|------|-----------------|\n| **Direction** | Genre, tempo, mood, instruments, vocal type, how long the track should feel, and where it will be used |\n| **Lyrics** | The line `Lyrics:` on its own line, then the song underneath |\n\n```\nWarm indie folk at 104 BPM, fingerpicked guitar, brushed drums, upright bass,\nmale vocal with light harmonies, written for a cooking video intro.\n\nLyrics:\n[Verse]\nFlour on the wooden board\nMake a well right in the core\n\n[Chorus]\nRoll it out, roll it thin\nLet the kitchen groove begin\n```\n\nWithout a `Lyrics:` block the model writes its own words from the direction alone, which is the faster way to sketch a style. For a music bed instead of a song, say so in the direction: `instrumental`, `no vocals` or `lyric-free`.\n\n### Section tags\n\nPut a bracketed tag on its own line above the section it covers. `[Verse]`, `[Chorus]` and `[Bridge]` cover most songs; write the tag again with its lines every time that section comes back, so a song with three choruses carries `[Chorus]` three times.\n\nKeep the prompt at 2000 characters or less for direction and lyrics together: a six-section song usually lands around 1000 to 1300 characters, including the direction.\n\n### Duration\n\n- **auto**: the song is sized to the lyrics you wrote. The example above, six sections at roughly 1100 characters of lyrics, came back as a 2:30 track.\n- **custom** with `seconds` (10 to 360): forces a fixed length instead. Lyrics that do not fit are cut, lyrics that are too short are repeated.\n\n### Seed\n\nSeed only decides whether the node runs again. It does not make the result repeatable: the same prompt and seed return a different song each run, so re-run to collect variations.\n"
      },
      "color": "#222",
      "bgcolor": "#000"
    }
  ],
  "links": [
    [
      1,
      2,
      0,
      1,
      0,
      "AUDIO"
    ]
  ],
  "groups": [],
  "config": {},
  "extra": {
    "ds": {
      "scale": 0.8963757517289446,
      "offset": [
        1057.8195618920117,
        -12.792940492325524
      ]
    },
    "frontendVersion": "1.57.6"
  },
  "version": 0.4
}
