Browse ModelsSoniloSonilo Video To Music

Sonilo Video To Music

Sonilo Video To Music

Playground

Try it on WavespeedAI!

Sonilo Video-to-Music is a fast AI music generation model that creates background music synced to an input video’s mood, pacing, and scene transitions. Ready-to-use REST inference API for video soundtracks, social media content, advertising creatives, cinematic clips, product videos, creator workflows, and professional video-to-music generation with simple integration, no coldstarts, and affordable pricing.

Features

Sonilo Video-to-Music

Sonilo Video-to-Music generates music from a video input, with an optional style prompt to guide the soundtrack. It is designed for turning visual content into matching background music for short films, ads, social content, trailers, highlight clips, and other video-driven audio workflows.


Why Choose This?

  • Video-driven music generation
    Generate music that fits the pacing and feel of an uploaded video.

  • Optional style guidance
    Add a prompt to steer the mood, genre, instrumentation, or production style of the generated music.

  • Simple workflow
    Upload one video, optionally add a style prompt, and generate a matching music track.

  • Supports longer inputs
    Works with videos up to 360 seconds.

  • Production-ready API
    Suitable for trailers, branded content, social videos, cinematic edits, and background scoring workflows.


Parameters

ParameterRequiredDescription
videoYesInput video URL. Maximum supported video length is 360 seconds.
promptNoOptional style prompt for the generated music.

How to Use

  1. Upload your video — provide the source video you want to score with music.
  2. Add a style prompt (optional) — describe the mood, genre, instrumentation, or production feel you want.
  3. Submit — run the model and download the generated music.

Example Prompt

Cinematic emotional orchestral score with soft piano, warm strings, slow build, inspiring and modern trailer mood


Pricing

Pricing is based on the uploaded video duration.

Billing Rules

  • Pricing is $0.009 per billed second
  • Billing is based on the uploaded video duration
  • Billed duration is rounded up to the next whole second
  • Minimum billed duration is 1 second
  • Maximum billed duration is 360 seconds
  • prompt does not affect pricing

Example Costs

Video DurationCost
1s$0.009
5s$0.045
10s$0.090
30s$0.270
60s$0.540
120s$1.080
360s$3.240

Best Use Cases

  • Social media videos — Generate music beds for short-form clips.
  • Ads and promos — Create matching soundtrack material for branded content.
  • Trailers and highlights — Add cinematic or energetic music to visual edits.
  • Creator workflows — Quickly generate background music for uploaded video content.
  • Prototype scoring — Explore soundtrack directions before final post-production.

Pro Tips

  • Use a style prompt when you want stronger control over genre, mood, or instrumentation.
  • Keep the prompt focused and specific for more predictable results.
  • Shorter videos are useful for quickly testing soundtrack direction before scoring longer content.
  • Upload the cleanest final or near-final edit possible so the music better matches pacing and structure.

Notes

  • video is required.
  • Maximum supported video length is 360 seconds.
  • Pricing depends only on billed video duration.
  • Video duration is rounded up to the next whole second for billing.

  • Sonilo audio generation workflows — Useful when you need prompt-first music generation instead of video-driven scoring.
  • Background music generation workflows — Useful when you need standalone music without a video input.
  • Video sound design workflows — Useful when you want synchronized effects instead of generated music.


<ApiPage model={model}>
  ## Authentication

  For authentication details, please refer to the [Authentication Guide](/docs-authentication).

  ## API Endpoints

  ### Submit Task & Query Result

  ## Parameters

  ### Task Submission Parameters

  #### Request Parameters

  #### Response Parameters

  <SubmitResponse />

  #### 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. |
  | 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 |

</ApiPage>

  
© 2025 WaveSpeedAI. All rights reserved.