Score-Studio / app /api /split /route.ts
Reubencf's picture
Retry rate-limited engine connections and connect by Space URL
a63c2c0 verified
Raw History Blame Contribute Delete
544 Bytes
import {audioJob} from '@/lib/studio-route';
import {ENGINE} from '@/lib/kiku';
import type {StemsResult} from '@/lib/types';
export const runtime='nodejs';
/** Separate a clip into vocals, drums, bass and everything else. */
export async function POST(req:Request){
return audioJob(req,{
endpoint:'/split',fixed:ENGINE,limits:{min:3,max:360},
build:()=>({args:audio=>[audio]}),
shape:(data,file)=>({status:String(data[0]??''),vocals:file(data[1]),drums:file(data[2]),
bass:file(data[3]),other:file(data[4])}) as StemsResult,
});
}