Een model dat zingt leest twee dingen: een beschrijving van het geluid, en de tekst met labels die zeggen waar elk deel staat. De meeste slechte resultaten komen doordat die twee elkaar tegenspreken, of door regels die nooit bedoeld waren om gezongen te worden.
ACE-Step 1.5 is open source. Op een computer met een recente NVIDIA-kaart en Python geeft de eigen app je elk checkpoint, adapters en meerdere nummers tegelijk. Installeer het vanuit de ACE-Step 1.5-repository en volg de README. Wij hebben die installatie niet op onze eigen machine gedraaid, dus we linken ernaar in plaats van opdrachten te herhalen die we niet gecontroleerd hebben.
Schrijf regels die een model kan zingen
Teksten die voor papier geschreven zijn, mislukken vaak als ze gezongen worden. Het model moet elke lettergreep in de melodie passen die het schrijft, dus geef het regels die passen.
- Eén gezongen zin per regel. Een regeleinde is waar de zanger ademhaalt.
- 6 tot 10 lettergrepen per regel werkt het best. Houd de eerste regel van elk couplet ongeveer even lang als die van de andere.
- Een lege regel tussen de delen, en een label boven elk deel.
- Haakjes voor achtergrondzang:
(ooh, ooh)wordt als samenzang behandeld, niet als de hoofdregel. - Hoofdletters voor intensiteit, spaarzaam: een uitgeschreeuwde laatste regel van een refrein, niet een heel couplet.
De labels zijn de structuur van het nummer. Dit zijn de labels waarop het model getraind is:
| Label | Wat het doet |
|---|---|
[Intro], [Outro] |
Opening en einde, meestal zonder zang |
[Verse], [Pre-Chorus], [Chorus], [Bridge] |
De gezongen delen |
[Build], [Drop], [Breakdown] |
Energie die opbouwt, loskomt, terugvalt |
[Instrumental], [Guitar Solo], [Piano Interlude] |
Delen zonder zang |
[Fade Out], [Silence] |
Eindes en stiltes |
De labels blijven Engels, ook bij een Nederlandse tekst. Een label mag één korte
omschrijving hebben: [Chorus - anthemic]. Stapel je er meer, dan kan het model
ze gaan zingen.
[Verse]
Ochtendlicht over de vloer
Koffie koud, ik ben te loom
[Chorus - anthemic]
Zing het hard, zing het zacht
(zing het zacht)
Laat de stille stad maar weten
Beschrijf het geluid, niet de tekst
De prompt zegt hoe het moet klinken: genre, sfeer, instrumenten, wat voor stem en hoe het geproduceerd is. "Warme akoestische pop, zachte mannenstem, getokkelde gitaar, dichtbij en intiem" geeft het model vier dingen om vast te houden. "Een mooi nummer" geeft het niets.
Twee regels schelen de meeste herkansingen:
- Houd tempo en toonsoort uit de prompt. Zet ze in de velden voor tempo en toonsoort. Een getal in de prompt en een ander in de velden is een tegenstrijdigheid die het model slecht oplost.
- Laat prompt en tekst overeenkomen. Een prompt die "instrumentaal ambient" zegt boven vier coupletten tekst levert geen van beide op.
Stem de lengte af op de tekst
Het model bepaalt hoe lang elk deel duurt, maar de totale lengte kies jij. Een handige vuistregel is ongeveer twee maten per gezongen regel. Op 120 BPM in 4/4 duurt een maat twee seconden, dus acht regels couplet en refrein hebben ongeveer 32 seconden nodig, zonder intro en outro. Te kort en regels worden afgeraffeld of weggelaten; te lang en het model vult het gat met herhalingen.
- Open AI-muziek genereren. Nummer met zang (ACE-Step 1.5 Turbo) is de standaard als je browser het kan draaien.
- Typ de beschrijving in de promptbalk.
- Open Songtekst, plak de tekst met labels, en kies de taal van de tekst.
- Stel Lengte in zodat de tekst past, en een tempo onder Geavanceerd als je er een in gedachten hebt.
- Druk op Genereren. Het eerste nummer downloadt ook de delen van het model die het nodig heeft, dus dat duurt het langst.
- Luister. Houd de seed vast als je de stem goed vindt en alleen de woorden wilt veranderen.
Als één deel mislukt
Je hoeft niet opnieuw te beginnen. Schakel naar de Studio, selecteer op de golfvorm het stuk dat niet goed is (van 3 tot 90 seconden), en genereer alleen dat deel opnieuw. De rest van het nummer blijft zoals het was, en de bewerking wordt bewaard als een nieuwe versie naast de oude, zodat je kunt vergelijken.
Moeten de woorden zelf veranderen, pas dan eerst de tekst van dat deel aan: het model leest de tekst van het hele nummer als het een deel invult.