SDKs & Integrationen, nativ für Ihren Stack.
Eine Stem Splitter API in sieben First-party-SDKs und vier No-Code-Integrationen — von npm install @aistemsplitter/sdk bis zu einem einzigen n8n Node — gestützt durch eine OpenAPI-3.1-Spezifikation und Credit-Pakete, die nie verfallen.
Wählen Sie das SDK, das zu Ihrem Stack passt
Job einreichen, einmal pollen, sechs Stems erhalten
Zwölf Zeilen, die die Oberfläche beweisen. Split einreichen, Job-ID erhalten, einmal pollen und Vocals, Drums, Bass, Gitarre, Klavier und Other bekommen — dieselbe htdemucs_ft-Separation, die in jedem SDK läuft. Abrechnung pro Minute Eingabeaudio gegen Credit-Pakete, die nie verfallen ($0.08–$0.14 pro Minute je nach Volumen).
# 1) Submit a split job
curl -X POST https://api.aistemsplitter.org/v1/audio/splits \
-H "Authorization: Bearer $AISTEMSPLITTER_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"input": { "type": "direct_url", "url": "https://example.com/song.mp3" },
"stemModel": "htdemucs_ft"
}'
# → { "id": "split_01J…", "status": "queued" }
# 2) Poll for completion
curl https://api.aistemsplitter.org/v1/audio/splits/split_01J… \
-H "Authorization: Bearer $AISTEMSPLITTER_API_KEY"
# → { "status": "succeeded", "stems": { "vocals": "...", ...x6 } }Dieselbe API, ein No-Code-Weg für den Rest des Teams
Der Engineer ist selten der einzige Nutzer. Setzen Sie dieselbe Stem Splitter API in n8n, GitHub Actions, einem Container oder einem Pipedream-Workflow ein — damit Ops, Content und CI alle auf einem Anbieter laufen.
n8n Community Node
Aus beliebigen Quellen triggern, sechs Stems ausgeben. Self-host oder n8n Cloud.
GitHub Action
Audio in CI/CD in Stems splitten und automatisch an Releases anhängen.
Docker / CLI Image
Ein Einzeilen-Container für Batch-Jobs und lokale Pipelines.
Fragen, die Entwickler vor der Installation stellen
Which SDK should I install — Node, Python, or curl?
Pick the language your service already runs on. Node and Python ship typed clients with one-call helpers (waitForSplit, verify_signature) and full method autocomplete; curl works on the same REST endpoints if you're prototyping or scripting from a shell. The hosted API is identical across all 13 distribution channels — same job ids, same webhooks, same per-minute billing.
Do credits expire if I don't use them?
No. Credit packs never expire — purchase $6.99 / 50 minutes, $15 / 150 minutes, or $39.99 / 500 minutes and the balance stays on your account until you spend it. There is no monthly subscription, no rollover cap, and no auto-renewal. The first 10 minutes are free with no card required, charged at $0.08–$0.14 per minute depending on pack size.
Which model do you use, and can I name it in the request?
The default is htdemucs_ft (Demucs fine-tuned, 4-stem: vocals, drums, bass, other) — the same model variant the open-source community benchmarks at ~8.7 dB SDR. You can switch to htdemucs_6s for guitar and piano stems by passing model='htdemucs_6s' on submit. Models are named explicitly in every SDK so output quality is comparable to local Demucs runs.
Can I self-host the SDK or the inference?
The SDK clients are MIT-licensed and ship to npm, JSR, PyPI, Maven Central, Packagist, LuaRocks, SPM, and CocoaPods — fork or vendor them as you like. Inference itself runs on our managed GPUs against the hosted API at api.aistemsplitter.com — there is no on-prem inference image in v1, but the GHCR Docker image wraps the SDK for self-hosted orchestration.
What's the rate limit, and how do I handle large files?
Concurrent jobs and per-minute request caps live on /developers/api with the current numbers (they age, so they aren't pinned here). For large uploads, call presignUpload (Node) / presign_upload (Python) to get a direct-to-storage URL — the SDK handles retries with exponential backoff out of the box. Files up to 50 MB upload directly; larger files use multipart presigned URLs.
How do I receive the result without polling forever?
Pass webhook_url on createSplit. When the job finishes, the API POSTs an HMAC-SHA256-signed event to your URL with the stem download links inline. Verify the signature with one SDK call (verifyWebhook in Node, verify_signature in Python). The Webhooks section in each per-language quickstart shows runnable Express, Hono, FastAPI, and Flask handlers.
Welches SDK sollte ich installieren — Node, Python oder curl?
Wählen Sie die Sprache, in der Ihr Service bereits läuft. Node und Python liefern typisierte Clients mit One-Call-Helpers (waitForSplit, verify_signature) und vollständiger Methoden-Autovervollständigung; curl nutzt dieselben REST-Endpunkte, wenn Sie aus einer Shell prototypen oder skripten. Die gehostete API ist über alle 13 Distribution Channels identisch — dieselben Job-IDs, dieselben Webhooks, dieselbe Abrechnung pro Minute.
Verfallen Credits, wenn ich sie nicht nutze?
Nein. Credit-Pakete verfallen nie — kaufen Sie $6.99 / 50 Minuten, $15 / 150 Minuten oder $39.99 / 500 Minuten, und das Guthaben bleibt in Ihrem Konto, bis Sie es verbrauchen. Es gibt kein monatliches Abo, kein Rollover-Limit und keine automatische Verlängerung. Die ersten 10 Minuten sind kostenlos und ohne Karte, abgerechnet mit $0.08–$0.14 pro Minute je nach Paketgröße.
Welches Modell nutzen Sie, und kann ich es im Request benennen?
Der Standard ist htdemucs_ft (Demucs fine-tuned, 4-Stem: vocals, drums, bass, other) — dieselbe Modellvariante, die die Open-Source-Community mit ~8.7 dB SDR benchmarked. Sie können zu htdemucs_6s für Gitarren- und Piano-Stems wechseln, indem Sie model='htdemucs_6s' beim Submit übergeben. Modelle werden in jedem SDK explizit benannt, sodass die Ausgabequalität mit lokalen Demucs-Läufen vergleichbar ist.
Kann ich das SDK oder die Inferenz selbst hosten?
Die SDK-Clients sind MIT-lizenziert und werden über npm, JSR, PyPI, Maven Central, Packagist, LuaRocks, SPM und CocoaPods ausgeliefert — forken oder vendorn Sie sie nach Bedarf. Die Inferenz selbst läuft auf unseren verwalteten GPUs gegen die gehostete API unter api.aistemsplitter.com — es gibt in v1 kein On-Prem-Inferenz-Image, aber das GHCR-Docker-Image wrappt das SDK für selbst gehostete Orchestrierung.
Wie hoch ist das Ratenlimit, und wie gehe ich mit großen Dateien um?
Aktuelle Limits für gleichzeitige Jobs und Requests pro Minute stehen auf /developers/api (sie ändern sich, daher werden sie hier nicht fest verdrahtet). Für große Uploads rufen Sie presignUpload (Node) / presign_upload (Python) auf, um eine Direct-to-Storage-URL zu erhalten — das SDK verarbeitet Retries mit exponentiellem Backoff out of the box. Dateien bis 50 MB laden direkt hoch; größere Dateien nutzen multipart presigned URLs.
Wie erhalte ich das Ergebnis, ohne ewig zu pollen?
Übergeben Sie webhook_url bei createSplit. Wenn der Job fertig ist, POSTet die API ein HMAC-SHA256-signiertes Event an Ihre URL, mit den Stem-Download-Links direkt im Payload. Verifizieren Sie die Signatur mit einem SDK-Aufruf (verifyWebhook in Node, verify_signature in Python). Der Webhooks-Abschnitt in jedem sprachspezifischen Quickstart zeigt ausführbare Express-, Hono-, FastAPI- und Flask-Handler.
Bauen Sie heute mit Stem Splitting.
Erstellen Sie einen Key, fügen Sie ihn in den Quickstart ein, und bekommen Sie getrennte Stems innerhalb einer Minute zurück. Zehn kostenlose Minuten gehen aufs Haus — der Rest läuft über Credit-Pakete, die nie verfallen, $0.08–$0.14 pro Minute je nach Paketgröße.