generate_music
Make instrumental background music (BGM), including ambient music, for an app or game; for environmental sounds use generate_ambience. Makes 30-second CC0 WAV takes and attempts to extract repeating musical loops. Needs an SFXMint API key and credits or a plan; sound-effect free tries do not apply. Missing access returns website_url for Studio BGM; payment_required also returns buy_url. Returns order_id, files and loop_url when available; if pending after about 25 seconds, poll get_generation. Supports instrumental music, not intelligible vocals or lyrics; clarify a vocal request with the user instead of silently substituting. Listen in context before use.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| prompt | Yes | With enhance=false, write a plain English instrumental music description, at most 400 characters, usually 1-3 sentences. State the genre, instruments and what they play, mood, energy and tempo (BPM if specified). Preserve named genres, instruments and pace; choose compatible instrumentation only when the brief leaves it open. Describe a repeating motif and steady accompaniment suitable for a background loop. Example: 'A calm fantasy instrumental loop at 80 BPM, with gentle harp arpeggios, warm sustained strings and a simple flute melody, keeping a steady, hopeful mood.' Use positive audible terms; omit unwanted sources instead of naming them in exclusions. Avoid artist, song or game names, lyrics and the 'TrackType: SFX' tag. With enhance=true, give the musical brief in any language and the music writer adapts it. | |
| enhance | No | Default false. Write final English using this tool's prompt guidance to skip server AI rewriting. True asks the corresponding ambience or music writer to adapt a brief in any language; enhanced_prompt reports the result. Non-Latin input may still require server translation with false. | |
| duration_s | No | Take length, fixed at 30 seconds; omit or pass 30. A returned loop may be shorter. A loop is not guaranteed: inspect loop_cut and loop_url. | |
| variations | No | How many takes to make (default 4; one generation either way) |