Tutorial · Python · ~10 min
Make a Karaoke Version of a Song
The instrumental track, minus the vocal, with the timing you need to sync lyrics.
Why this matters
Karaoke needs the instrumental plus timed lyrics. Source separation gives you the instrumental cleanly; OCR/speech timing (or manual sync) handles the lyrics.
Model-based separation beats old center-channel tricks — the backing track keeps its bass and stereo image.
How it works
Submit the song with stems=[vocals, instrumental]; the API returns both stems, and you build the karaoke session around the instrumental.
Submit a job with an input URL (S3, GCS or HTTPS), poll the job URL, and download the rendered output. No GPU, no queues, no ffmpeg builds to babysit.
Code
import requests, time
API = "https://api.mlslabs.io/v1/source-separation/jobs"
headers = {"X-API-Key": "YOUR_API_KEY"}
payload = {"input": "s3://bucket/song.wav", "stems": ["vocals", "instrumental"]}
resp = requests.post(API, json=payload, headers=headers)
job = resp.json()
while job["status"] not in ("succeeded", "failed"):
time.sleep(3)
job = requests.get(job["url"], headers=headers).json()
print("Output:", job["output_url"])Pro tips
- Use the acapella stem to auto-generate lyric timing if your tool supports it.
- Normalize the instrumental to -14 LUFS for club/bar playback.
- For party use, export MP3 320kbps — WAV is for the editor, MP3 for the room.
Pricing note
Usage is metered per minute of media processed; the first tier is free each month. Volume discounts kick in automatically.
FAQ
Common questions
Can I get just the instrumental?
Yes — request stems=[instrumental] only; it is cheaper than requesting both.
Will the instrumental sound full?
Yes — the bass and drums survive; that is the difference from center-channel removal.
What if the song has backing vocals?
Backing vocals split with the vocal stem by default; options exist to isolate the lead only.
Keep exploring
Related guides
Source Separation API
Separate any mix into clean stems — including environmental sound.
Learn moreVocal Separator API
Isolate vocals or instrumentals from speech and music mixes.
Learn moreRemove Vocals From A Song In Python
Remove vocals from a song to get a clean instrumental: AI source separation, no phasing artifacts, WAV/FLAC export...
Read guide