VoiceStudioDocs

Dubbing and batch jobs

The native API behind VoiceStudio's timed, multi-speaker dubbing.

Dubbing is a pipeline of jobs, not one request. Transcription, translation, voice assignment, timing, generation, quality checks and export are separate stages, so a client can review or retry any of them.

The flow

  1. POST /dub/upload with video or audio.
  2. Follow /tasks/stream/{task_id} until preparation is ready.
  3. Transcribe with /dub/transcribe-stream/{job_id}, or the synchronous /dub/transcribe/{job_id}.
  4. Translate and edit the segments.
  5. Assign profiles, then POST /dub/generate/{job_id}.
  6. Review QC, previews, stems and subtitles, or download the result.

Upload returns a job_id for the media and a task_id for preparation progress. Keep both: they track different things.

What is preserved

  • Segment start and end times
  • Multiple speakers, each with their own voice
  • Imported or generated SRT and VTT subtitles
  • Audio-only and video jobs
  • Preview, QC, stems and final export

For a folder of videos, use /batch/enqueue and /batch/jobs, with per-job status, cancel and download routes.

Local workflow

These routes belong to the desktop API. The unreleased Cloud contract stages source media as an Artifact and runs versioned asynchronous stages, and it doesn't promise these paths or payloads.

Each stage has its own request body. Use the API reference as the source of truth when building a client.

On this page