
Aligns mouth movement in an existing video to an uploaded audio track or to text spoken by one of fourteen built-in voices.
Aligns mouth movement in an existing video to an uploaded audio track or to text spoken by one of fourteen built-in voices.
pixverse-lipsync/v1/videos/generationspixverse/lipsyncLive pay-as-you-go rates from the EmpirioLabs catalog. You are billed only for what you use, with no monthly minimum.
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 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 https://api.empiriolabs.ai/v1/jobs/JOB_ID \
-H "Authorization: Bearer $EMPIRIOLABS_API_KEY"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)Request parameters supported by the Pixverse Lip Sync API on EmpirioLabs. Defaults apply when a field is omitted.
| Parameter | Type | Default | Range / values | Description |
|---|---|---|---|---|
| lip_sync_tts_content | string | - | - | The line to speak. Used when no audio file is attached. Billed in 15-character blocks. |
| lip_sync_tts_speaker_id | enum | Auto | Auto, 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. |
| video | string | - | - | Source video URL. Required. |
| audio | string | - | - | Audio URL to lip sync to. Takes precedence over the spoken text. |
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.
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.
Pixverse Lip Sync is served through POST /v1/videos/generations on api.empiriolabs.ai with standard bearer-token authentication.
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.
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.
Check out our pricing or reach out if you want your own model deployed on our stack.