Sing lyrics in a reference voice
text2voxSynthesize a sung vocal and matching MIDI from lyrics, a melody, and a reference voice clip, with per-note lyric alignment for precise control over how words map to notes.
Instructions
Synthesize a sung vocal (and MIDI) from lyrics, a melody and a reference voice.
Needs both a reference clip of the voice and a melody, as MIDI or audio. lyrics_mode decides how the lyrics are lined up with the melody's notes; "per_note" is the one that gives exact control. See the lyrics_mode and lyrics descriptions. Takes a few minutes and counts as one run. Audio and MIDI go to a new results folder.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| seed | No | Seed for reproducible output. | |
| lyrics | Yes | Lyrics to sing. With lyrics_mode 'per_note' this is pipe-delimited, one token per MIDI note, e.g. 'amazing|-|-|grace|-|how|sweet|the|sound'; otherwise it is ordinary text. | |
| midi_file | No | MIDI melody (.mid). Give this or melody_audio_file. | |
| nfe_steps | No | Synthesis steps; more is slower and cleaner. | |
| lyrics_mode | No | How the lyrics line up with the melody. 'auto' (default): ordinary text, one word per MIDI note, aligned for you (word_timestamps_file helps). '1to1': the text is passed to the synthesizer untouched. 'per_note': exact control -- the lyrics are pipe-delimited with one token per MIDI note, in order. In per_note mode a token is either a syllable sung on that note ('grace') or a HOLD, which keeps the previous syllable going through this note: write a hold as '-' (preferred), '+', or an empty token (a double pipe). So 'amazing|-|-|grace|-|how|sweet|the|sound' sings 'amazing' across notes 1-3 and 'grace' across notes 4-5, and needs a MIDI file with exactly 9 notes. There is no rest token: a note that should be silent must not be in the MIDI. The token count has to equal the note count and the first token has to be a syllable, never a hold. | auto |
| pitch_shift | No | Semitones to shift the melody. | |
| cfg_strength | No | Guidance strength. | |
| strict_pitch | No | Force exact pitch to the melody. | |
| no_pitch_bends | No | Disable pitch bends. | |
| reference_file | Yes | Short clip of the reference voice (timbre). | |
| reference_text | No | Transcript of the reference clip, if known. | |
| bend_smoothing_ms | No | Pitch-bend smoothing window in ms. | |
| leading_silence_s | No | Silence before the first note, seconds. | |
| melody_audio_file | No | Audio whose melody is transcribed and followed, if no MIDI. | |
| word_timestamps_file | No | Optional JSON word timings. |
Output Schema
| Name | Required | Description | Default |
|---|---|---|---|
| tool | Yes | ||
| files | Yes | ||
| summary | Yes | ||
| metadata | Yes | ||
| output_dir | Yes | ||
| execution_id | Yes |