
Frame-accurate sound effects placed on the action in a video, or generated from a text description, with per-segment direction.
Frame-accurate sound effects placed on the action in a video, or generated from a text description, with per-segment direction.
Also known as Sonilo Sound Effects
sonilo-sound-effects-1-0/v1/audio/generationssonilo-sound-effects-1.0sonilo-sfxsonilo/sonilo-sound-effects-1-0Live pay-as-you-go rates from the EmpirioLabs catalog. You are billed only for what you use, with no monthly minimum.
Sonilo Sound Effects 1.0 runs through POST /v1/audio/generations. The request returns a job_id right away; poll GET /v1/jobs/{job_id} until the job completes and read the output URLs from the result. Get an API key from the EmpirioLabs dashboard.
curl https://api.empiriolabs.ai/v1/audio/generations \
-H "Authorization: Bearer $EMPIRIOLABS_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "sonilo-sound-effects-1-0",
"prompt": "Describe what you want Sonilo Sound Effects 1.0 to generate."
}'curl https://api.empiriolabs.ai/v1/jobs/JOB_ID \
-H "Authorization: Bearer $EMPIRIOLABS_API_KEY"import requests
response = requests.post(
"https://api.empiriolabs.ai/v1/audio/generations",
headers={"Authorization": "Bearer YOUR_EMPIRIOLABS_API_KEY"},
json={
"model": "sonilo-sound-effects-1-0",
"prompt": "Describe what you want Sonilo Sound Effects 1.0 to generate.",
},
)
job = response.json()
# Generation runs as an async job. Poll until it completes.
import time
while True:
status = requests.get(
f"https://api.empiriolabs.ai/v1/jobs/{job['job_id']}",
headers={"Authorization": "Bearer YOUR_EMPIRIOLABS_API_KEY"},
).json()
if status.get("status") in ("completed", "failed"):
print(status)
break
time.sleep(5)Request parameters supported by the Sonilo Sound Effects 1.0 API on EmpirioLabs. Defaults apply when a field is omitted.
| Parameter | Type | Default | Range / values | Description |
|---|---|---|---|---|
| prompt | string | - | - | Description of the sound to generate. Required when generating from text alone. Optional when working from a video, where the footage leads. |
| mode | enum | auto | auto, text, video, music_and_effects | auto places effects on an attached video and falls back to text to sound effect when there is no video. music_and_effects scores the video with music AND effects as... |
| duration | number | 8 | 0.5 to 180 | Effect length in seconds. Text mode only. Video and sound modes follow the timing of the source video. |
| music_prompt | string | - | - | Direction for the music bed that sits under the effects. |
| sfx_prompt | string | - | - | Direction for the sound effects placed on the action. |
| output_format | enum | wav | wav, m4a, mp3 | Format of the combined track. wav is 16-bit PCM, m4a is AAC, mp3 is 320 kbps. |
| preserve_speech | boolean | false | - | Keep the speech from the source video and carry it into the finished mix. |
| ducking | boolean | false | - | Dip the generated music under the speech so dialogue stays intelligible. |
| segments | string | - | - | JSON array of timed segment prompts for directed beats. Each entry takes start, end and prompt in seconds. |
| video_url | string | - | - | Source video to sync effects to, as a publicly reachable URL. Up to 300MB and 8 minutes. Uploading a video in the playground sets this for you. |
Supports prompt, mode, source video, 0.5 to 180 second duration in text mode, separate music and effects prompts in sound mode, wav, m4a or mp3 output in sound mode, speech preservation, ducking, and JSON segment prompts.
On EmpirioLabs, Sonilo Sound Effects 1.0 is billed pay as you go: Text to sound effect $0.0036 per generated second; Video to sound effect $0.018 per generated second; Music and effects $0.0288 per generated second. The live rate card on this page always matches what the API charges.
Sonilo Sound Effects 1.0 is served through POST /v1/audio/generations on api.empiriolabs.ai with standard bearer-token authentication.
Yes. The EmpirioLabs playground runs Sonilo Sound Effects 1.0 in the browser with the same parameters the API exposes, so you can test prompts before writing code.
Create an EmpirioLabs account, then generate a key under API Keys in the dashboard. Billing is pay-as-you-go credits, so you only pay for the requests you make.
Check out our pricing or reach out if you want your own model deployed on our stack.