sonilo-cli
Command-line interface for the Sonilo API — generate music and sound effects from text or video.
Install
pip install sonilo-cli
Auth
Set your API key once:
export SONILO_API_KEY=sk-...
or pass --api-key sk-... on any command.
Commands
sonilo account # plan limits and available services
sonilo usage --days 7 # usage summary
sonilo text-to-music --prompt "warm lo-fi piano, rain" --duration 30
sonilo video-to-music --video clip.mp4 --prompt "tense synths" --format wav
sonilo text-to-sfx --prompt "glass shattering on concrete" --duration 3
sonilo video-to-sfx --video clip.mp4 --output whoosh.wav
sonilo video-to-sound --video clip.mp4 \
--music-prompt "uplifting orchestral score" --sfx-prompt "match the on-screen action"
sonilo video-to-video-sound --video clip.mp4 --music-prompt "tense synths"
sonilo tasks get <task-id>
sonilo tasks wait <task-id> --poll-interval 2 --timeout 600
Notes
text-to-music/video-to-musicstream a short.m4aby default.--format wav,--isolate-vocals, and--preserve-speecheach switch to the async submit-and-poll path.text-to-sfx/video-to-sfxare always async;--formatacceptswav|mp3|aac|flac.- Output defaults to
./output.<ext>; override with--output.
Combined soundtracks
video-to-sound and video-to-video-sound score a clip with a music bed and sound effects in one
call (one charge, instead of chaining two requests). Both are async-only and take the same options —
they differ only in what comes back: video-to-sound writes the mixed audio (default
output.wav), video-to-video-sound writes the source video with that audio muxed in (default
output.mp4).
sonilo video-to-sound --video clip.mp4 \
--music-prompt "uplifting orchestral score" \
--sfx-prompt "match the on-screen action" \
--output soundtrack.wav --stem music --stem sfx
--music-prompt/--sfx-promptsteer the two layers separately; both are optional.--preserve-speechkeeps speech from the source video in the mix.- Ducking is on by default (music dips under speech). Pass
--no-duckingto opt out — omitting the flag leaves the server default untouched. --stemis repeatable (music,music_processed,sfx) and saves the individual layers next to the combined output, so you can re-balance the mix yourself. With--output soundtrack.wav, the music stem lands atsoundtrack.music.m4a.music_processedexists only when--preserve-speechor ducking altered the music bed.
Free trial
Accounts created through self-serve signup start with free runs on every endpoint — no card required:
| Free runs | Endpoints |
|---|---|
| 2 each | text-to-music, text-to-sfx, audio-ducking |
| 1 each | video-to-music, video-to-sfx, video-to-video-music, video-to-video-sfx, video-to-sound, video-to-video-sound |
Once an endpoint's free runs are used up, calls to it bill at the normal rate. sonilo account
shows the services available to your key.
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file sonilo_cli-0.1.0.tar.gz.
File metadata
- Download URL: sonilo_cli-0.1.0.tar.gz
- Upload date:
- Size: 8.9 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.14
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
2e93c338c2d6407351ef7e01987f2af62ff915c85619b452679d2e894a14ecb1
|
|
| MD5 |
e4f8a437e6cb24b0c766d68cd94297cc
|
|
| BLAKE2b-256 |
fe79ed1bd02c3c1ac9d4f4387d750a3fc28329f1fe14b49ec04018bb6cb9ef91
|
Provenance
The following attestation bundles were made for sonilo_cli-0.1.0.tar.gz:
Publisher:
publish-cli.yml on sonilo-ai/sonilo-python
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
sonilo_cli-0.1.0.tar.gz -
Subject digest:
2e93c338c2d6407351ef7e01987f2af62ff915c85619b452679d2e894a14ecb1 - Sigstore transparency entry: 2228786294
- Sigstore integration time:
-
Permalink:
sonilo-ai/sonilo-python@df5352b04270df5503265ae2d9d07eff3f14eb60 -
Branch / Tag:
refs/tags/sonilo-cli-v0.1.0 - Owner: https://github.com/sonilo-ai
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish-cli.yml@df5352b04270df5503265ae2d9d07eff3f14eb60 -
Trigger Event:
push
-
Statement type:
File details
Details for the file sonilo_cli-0.1.0-py3-none-any.whl.
File metadata
- Download URL: sonilo_cli-0.1.0-py3-none-any.whl
- Upload date:
- Size: 7.3 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.14
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
29a515493f1e33c31916e63dd5fc3f6153ffbf7de62cef56352f5e1f5b30e5db
|
|
| MD5 |
db52f9fb228df8bffc821dfca7318479
|
|
| BLAKE2b-256 |
71b1097ffa463e198bf69a4e21923f70178b3522ac7519d9831d789224e91420
|
Provenance
The following attestation bundles were made for sonilo_cli-0.1.0-py3-none-any.whl:
Publisher:
publish-cli.yml on sonilo-ai/sonilo-python
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
sonilo_cli-0.1.0-py3-none-any.whl -
Subject digest:
29a515493f1e33c31916e63dd5fc3f6153ffbf7de62cef56352f5e1f5b30e5db - Sigstore transparency entry: 2228786551
- Sigstore integration time:
-
Permalink:
sonilo-ai/sonilo-python@df5352b04270df5503265ae2d9d07eff3f14eb60 -
Branch / Tag:
refs/tags/sonilo-cli-v0.1.0 - Owner: https://github.com/sonilo-ai
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish-cli.yml@df5352b04270df5503265ae2d9d07eff3f14eb60 -
Trigger Event:
push
-
Statement type: