Pixverse Lip Sync API

Aligns mouth movement in an existing video to an uploaded audio track or to text spoken by one of fourteen built-in voices.

PixVerseVideo GenerationReleased Jul 14, 2025Proprietary Endpoint

About Pixverse Lip Sync

Aligns mouth movement in an existing video to an uploaded audio track or to text spoken by one of fourteen built-in voices.

lipsyncaudio invideo editing

Pixverse Lip Sync specs

Model ID
pixverse-lipsync
Provider
PixVerse
Category
Video Generation
Released
Jul 14, 2025
Input
TextVideoAudio
Output
Video
Endpoints
POST/v1/videos/generations
Alternate model IDs
pixverse/lipsync

Pixverse Lip Sync API pricing

Live pay-as-you-go rates from the EmpirioLabs catalog. You are billed only for what you use, with no monthly minimum.

Type
Spec
Rate
Speech
per second
$0.08
Compare on the full pricing page

How to call the Pixverse Lip Sync API

Pixverse Lip Sync runs through POST /v1/videos/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: submit the job
curl https://api.empiriolabs.ai/v1/videos/generations \
  -H "Authorization: Bearer $EMPIRIOLABS_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "pixverse-lipsync",
    "prompt": "Describe what you want Pixverse Lip Sync to generate."
  }'
cURL: poll for the result
curl https://api.empiriolabs.ai/v1/jobs/JOB_ID \
  -H "Authorization: Bearer $EMPIRIOLABS_API_KEY"
Python
import requests

response = requests.post(
    "https://api.empiriolabs.ai/v1/videos/generations",
    headers={"Authorization": "Bearer YOUR_EMPIRIOLABS_API_KEY"},
    json={
        "model": "pixverse-lipsync",
        "prompt": "Describe what you want Pixverse Lip Sync 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)
Full Pixverse Lip Sync API reference

Pixverse Lip Sync API parameters

Request parameters supported by the Pixverse Lip Sync API on EmpirioLabs. Defaults apply when a field is omitted.

ParameterTypeDefaultRange / valuesDescription
lip_sync_tts_contentstring--The line to speak. Used when no audio file is attached. Billed in 15-character blocks.
lip_sync_tts_speaker_idenumAutoAuto, Emily, James, Isabella, Liam, Chloe, Adrian, Harper, Av...Voice used for the spoken line. Auto picks one to suit the clip. Ignored when an audio file is attached.
videostring--Source video URL. Required.
audiostring--Audio URL to lip sync to. Takes precedence over the spoken text.

Good to know

Aligns mouth movement in an existing video to speech, either from an audio file you supply or from text spoken by a built-in voice.

Inputs

  • video: the source clip, up to 300 seconds and 250MB.
  • audio: the speech to match, up to 300 seconds and 250MB.
  • Or lip_sync_tts_content with lip_sync_tts_speaker_id to have the model speak your text. Fourteen named voices are available plus Auto, which picks one to suit the clip.

Billing

  • Billed per second of speech. Text-to-speech input is metered in 15-character blocks at the same rate, so the charge tracks the length of the script rather than the length of the source video.

Input limits

  • Video: MP4, MOV or WebM, up to 1920px on the long edge.
  • Audio: MP3, WAV, M4A or AAC.

Pixverse Lip Sync API: common questions

How much does the Pixverse Lip Sync API cost?

On EmpirioLabs, Pixverse Lip Sync is billed pay as you go: Speech $0.08 per second. The live rate card on this page always matches what the API charges.

Which endpoint does Pixverse Lip Sync use?

Pixverse Lip Sync is served through POST /v1/videos/generations on api.empiriolabs.ai with standard bearer-token authentication.

Can I try Pixverse Lip Sync in the browser before integrating?

Yes. The EmpirioLabs playground runs Pixverse Lip Sync in the browser with the same parameters the API exposes, so you can test prompts before writing code.

How do I get a Pixverse Lip Sync API key?

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.

Ready to use better endpoints?

Check out our pricing or reach out if you want your own model deployed on our stack.