Minimax Music V1.5
Playground
Try it on WavespeedAI!MiniMax Music v1.5 turns text prompts into high-quality, diverse music (Text-to-Audio) using advanced AI for versatile tracks. Ready-to-use REST inference API, best performance, no coldstarts, affordable pricing.
Features
MiniMax Music v1.5 — AI Music & Lyric Generator
minimax/music-v1.5 is an end-to-end music generator that creates catchy songs from short style cues and structured lyrics. Provide a lyrics_prompt for mood/genre guidance and a prompt with sectioned lyrics, and the model returns a complete track with vocals and instrumental backing.
What It Does
- Genre & mood control via lyrics_prompt (e.g., “pop, upbeat, inspirational, feel-good”).
- Structured songwriting from your prompt using labeled sections like [verse], [chorus], [bridge].
- Full mix output with lead vocal + accompaniment rendered as a single track.
Parameters
| Parameter | Required | Description |
|---|---|---|
| lyrics_prompt | Yes | Short style tags and mood descriptors. |
| prompt | Yes | Your lyrics with explicit section markers (max 600 characters). |
lyrics_prompt Examples
- pop, upbeat, summer vibes
- indie folk, intimate, acoustic
- EDM, energetic, festival drop
Supported Section Tags
[intro], [verse], [pre-chorus], [chorus], [post-chorus], [bridge], [outro], [build]
Format Example
[verse] Radio static, hadn’t smiled in a while. A forgotten song came on, and blew away my care.
[chorus] That one song changed it all. The hope a simple melody can bring. Lifts you up and makes you strong, three minutes where you belong.
How to Use
- Set lyrics_prompt — list genre, tempo/energy, mood (comma-separated).
- Compose prompt — paste your lyrics using section tags (up to 600 characters).
- Keep sections short (2–4 lines) for cleaner phrasing and hooks.
- Click Run — receive a mixed audio track ready to preview and download.
Best Use Cases
- Original Music Creation — Generate complete songs for personal projects or demos.
- Content Creators — Create custom background music and jingles for videos.
- Songwriting Inspiration — Explore melodies and arrangements for your lyrics.
- Marketing & Advertising — Produce catchy tunes for campaigns and ads.
- Learning & Experimentation — Explore different genres and song structures.
Pricing
| Output | Price |
|---|---|
| Per song | $0.03 |
Ready-to-Copy Templates
Pop / Feel-Good
lyrics_prompt: pop, upbeat, catchy, summer, feel-good
prompt: [intro] Sun on my face, wheels on the road. [verse] Left all my worries in the rearview mirror, chasing the light as the skyline gets nearer. [pre-chorus] Heart on the beat, road under my feet. [chorus] We’re wide awake tonight—sing it out, lights are in our eyes. Every mile feels right—turn it up, let the world go by.
Indie Folk / Intimate
lyrics_prompt: indie folk, acoustic, warm, reflective
prompt: [verse] Coffee steam and open windows, morning writes across the floor. [chorus] If home is where the quiet grows, I’ll find it in your voice once more.
EDM / Festival
lyrics_prompt: EDM, energetic, anthemic, festival drop
prompt: [verse] Hands up, heartbeat running wild, neon rivers in the night. [build] Count it down—4, 3, 2— [chorus] We break like thunder, we’re lightning undercover; let the sky remember our names tonight!
Notes
- Avoid overly long paragraphs; 2–4 lines per section yields cleaner melodies.
- If an error occurs, simplify the prompt (fewer tags, clearer mood) and try again.
- Ensure the prompt length has at most 600 characters.
Authentication
For authentication details, please refer to the Authentication Guide.
API Endpoints
Submit Task & Query Result
# Submit the task
curl --location --request POST "https://api.wavespeed.ai/api/v3/minimax/music-v1.5" \
--header "Content-Type: application/json" \
--header "Authorization: Bearer ${WAVESPEED_API_KEY}" \
--data-raw '{
"lyrics_prompt": "blues, melancholic, raw, lonely bar, heartbreak.",
"enable_sync_mode": false
}'
# Get the result
curl --location --request GET "https://api.wavespeed.ai/api/v3/predictions/${requestId}/result" \
--header "Authorization: Bearer ${WAVESPEED_API_KEY}"
Parameters
Task Submission Parameters
Request Parameters
| Parameter | Type | Required | Default | Range | Description |
|---|---|---|---|---|---|
| lyrics_prompt | string | Yes | blues, melancholic, raw, lonely bar, heartbreak. | - | Control music generation by inputting a text prompt. Valid input: 10-300 characters. |
| prompt | string | Yes | - | The positive prompt for the generation. | |
| enable_sync_mode | boolean | No | false | - | If set to true, the function will wait for the result to be generated and uploaded before returning the response. It allows you to get the result directly in the response. This property is only available through the API. |
Response Parameters
| Parameter | Type | Description |
|---|---|---|
| code | integer | HTTP status code (e.g., 200 for success) |
| message | string | Status message (e.g., “success”) |
| data.id | string | Unique identifier for the prediction, Task Id |
| data.model | string | Model ID used for the prediction |
| data.outputs | array | Array of URLs to the generated content (empty when status is not completed) |
| data.urls | object | Object containing related API endpoints |
| data.urls.get | string | URL to retrieve the prediction result |
| data.has_nsfw_contents | array | Array of boolean values indicating NSFW detection for each output |
| data.status | string | Status of the task: created, processing, completed, or failed |
| data.created_at | string | ISO timestamp of when the request was created (e.g., “2023-04-01T12:34:56.789Z”) |
| data.error | string | Error message (empty if no error occurred) |
| data.timings | object | Object containing timing details |
| data.timings.inference | integer | Inference time in milliseconds |
Result Request Parameters
| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
| id | string | Yes | - | Task ID |
Result Response Parameters
| Parameter | Type | Description |
|---|---|---|
| code | integer | HTTP status code (e.g., 200 for success) |
| message | string | Status message (e.g., “success”) |
| data | object | The prediction data object containing all details |
| data.id | string | Unique identifier for the prediction, the ID of the prediction to get |
| data.model | string | Model ID used for the prediction |
| data.outputs | string | Array of URLs to the generated content (empty when status is not completed). |
| data.urls | object | Object containing related API endpoints |
| data.urls.get | string | URL to retrieve the prediction result |
| data.status | string | Status of the task: created, processing, completed, or failed |
| data.created_at | string | ISO timestamp of when the request was created (e.g., “2023-04-01T12:34:56.789Z”) |
| data.error | string | Error message (empty if no error occurred) |
| data.timings | object | Object containing timing details |
| data.timings.inference | integer | Inference time in milliseconds |