Skip to main content
ArtEmotion
Video

Sync Lipsync 3.0

Credit-based pricing. Supports reference video.

Output
video

Inputs

  • Reference audio (required)
  • Reference video (required)

Example prompt

Upload a portrait video and an audio track — Sync 3.0 delivers the sharpest phoneme accuracy yet
Try this prompt →
LLM-ready

API & LLM schema

Exact request contract for this model. Agents can fetch it from /api/v1/models?id=fal-ai/sync-lipsync/v3.

POST/api/v1/generate13 fields · 3 required
FieldTypeRequirementContract
model_idconstantRequiredArtEmotion model identifier.
extraobjectOptionalModel-specific settings may also be nested here.
max_creditsnumberOptionalReject before submission if the estimated list price exceeds this cap. · Range: 1–…
webhook_urlstringOptionalFormat: uri
webhook_secretstringOptionalOptional model input.
folder_idstringOptionalOptional model input.
promptstringOptionalOptional model input.
sync_modestringOptionalHow to handle duration mismatch between audio and video. · Allowed: cut_off, loop, bounce, silence, remap · Default: cut_off
model_modestringOptionalWhich region of the face to animate. 'Lips only' for minimal edits; 'Talking Head' for full head movement. · Allowed: , lips, face, head, lipsync, emotion, talking_head · Default:
emotionstringOptionalDrive an emotional expression on the face alongside the lipsync. · Allowed: , happy, sad, angry, disgusted, surprised, neutral · Default:
temperaturenumberOptionalHow expressive the lipsync can be — 0 is least, 1 is most. Sync 3.0 also tunes this automatically. · Default: 0.5 · Range: 0–1
video_urlstringRequiredFormat: uri
audio_urlstringRequiredFormat: uri
Minimal request example
{
  "model_id": "fal-ai/sync-lipsync/v3",
  "video_url": "https://example.com/video",
  "audio_url": "https://example.com/audio"
}
Raw JSON Schema
{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://www.artemotion.ai/api/v1/models?id=fal-ai%2Fsync-lipsync%2Fv3",
  "title": "Sync Lipsync 3.0 generation request",
  "description": "Request body accepted by POST /api/v1/generate for fal-ai/sync-lipsync/v3.",
  "type": "object",
  "properties": {
    "model_id": {
      "type": "string",
      "const": "fal-ai/sync-lipsync/v3",
      "description": "ArtEmotion model identifier."
    },
    "extra": {
      "type": "object",
      "additionalProperties": true,
      "description": "Model-specific settings may also be nested here."
    },
    "max_credits": {
      "type": "number",
      "minimum": 1,
      "description": "Reject before submission if the estimated list price exceeds this cap."
    },
    "webhook_url": {
      "type": "string",
      "format": "uri",
      "maxLength": 2048
    },
    "webhook_secret": {
      "type": "string",
      "maxLength": 512
    },
    "folder_id": {
      "type": "string"
    },
    "prompt": {
      "type": "string"
    },
    "sync_mode": {
      "title": "Sync Mode",
      "description": "How to handle duration mismatch between audio and video.",
      "default": "cut_off",
      "type": "string",
      "enum": [
        "cut_off",
        "loop",
        "bounce",
        "silence",
        "remap"
      ]
    },
    "model_mode": {
      "title": "Edit Region",
      "description": "Which region of the face to animate. 'Lips only' for minimal edits; 'Talking Head' for full head movement.",
      "default": "",
      "type": "string",
      "enum": [
        "",
        "lips",
        "face",
        "head",
        "lipsync",
        "emotion",
        "talking_head"
      ]
    },
    "emotion": {
      "title": "Emotion",
      "description": "Drive an emotional expression on the face alongside the lipsync.",
      "default": "",
      "type": "string",
      "enum": [
        "",
        "happy",
        "sad",
        "angry",
        "disgusted",
        "surprised",
        "neutral"
      ]
    },
    "temperature": {
      "title": "Expressiveness",
      "description": "How expressive the lipsync can be — 0 is least, 1 is most. Sync 3.0 also tunes this automatically.",
      "default": 0.5,
      "type": "number",
      "minimum": 0,
      "maximum": 1,
      "multipleOf": 0.05
    },
    "video_url": {
      "type": "string",
      "format": "uri"
    },
    "audio_url": {
      "type": "string",
      "format": "uri"
    }
  },
  "required": [
    "model_id",
    "video_url",
    "audio_url"
  ],
  "additionalProperties": false
}

FAQ

How much does Sync Lipsync 3.0 cost on ArtEmotion?

Credit-based pricing. You pay in ArtEmotion credits — every plan and top-up converts USD to credits at a fixed rate.

Do I get my credits back if Sync Lipsync 3.0 fails?

Yes — failed generations are never charged. The credits are released back to your balance automatically.

Can I call Sync Lipsync 3.0 from the API?

Yes. Use POST /api/v1/generate with model_id: "fal-ai/sync-lipsync/v3". See the API reference for the full schema.

Where are my generations stored?

Every output is saved to your personal Library. You can export or delete everything any time from Privacy & deletion.

Ready to generate with Sync Lipsync 3.0?

Start now →

No commitment. New accounts get 50 free credits on signup. See pricing.