# Veed Lipsync v2 - Core.Today AI API > Veed Lipsync v2 via Fal.AI. Replaces a source video's mouth movements to articulate a new audio track — takes any source video + a new audio track and produces a lip-synced output video. - **Provider**: Veed - **Model ID**: veed/lipsync/v2 - **Category**: Video Generation - **Credits**: 2440 per video (flat rate, regardless of length) - **Speed**: Medium - **Quality**: High ## Features - Re-syncs mouth movements in a source video to a new audio track - Works with any source video + audio track pairing - Output video length automatically matches the input video/audio - Simple two-input workflow — no duration or resolution parameters to configure ## Use Cases - Localizing a video into a new language by swapping in a translated audio track - Re-recording or fixing narration without reshooting the original footage - Dubbing presenter or influencer videos for different markets - Updating a video's voiceover while keeping the original visual performance ## API Endpoint Base URL: https://api.core.today/v1 Create Prediction: POST /predictions Get Status: GET /predictions/{job_id} ## Authentication Header: X-API-Key: YOUR_API_KEY ## Input Parameters ### Required - **video_url**: string - Source video to lipsync - **audio_url**: string - New audio track to articulate ## Examples ### Dubbing a presenter video into a new language Swap a talking-head video's audio for a translated voiceover and get realistic lip movement matching the new track. ```json { "model": "veed/lipsync/v2", "input": { "video_url": "https://v3.fal.media/files/monkey/q1fDPhrpfjfsaRmbhTed4_influencer.mp4", "audio_url": "https://v3.fal.media/files/rabbit/Ql3ade3wEKlZXRQLRbhxm_tts.mp3" } } ``` ### Fixing narration without a reshoot Re-record a corrected narration track and apply it to the existing footage instead of reshooting. ```json { "model": "veed/lipsync/v2", "input": { "video_url": "https://example.com/product-demo-source.mp4", "audio_url": "https://example.com/product-demo-narration-v2.mp3" } } ``` ## Response Format ```json { "job_id": "abc123", "status": "pending | processing | completed | failed", "result": "URL or data (when completed)" } ``` ## Usage Flow 1. POST /predictions with model and input -> receive job_id 2. GET /predictions/{job_id} -> poll until status is completed or failed 3. Result contains output URL(s) ## Tips - Works best when the source video's mouth is clearly visible and front-facing throughout. - The output length always matches the source video/audio, so trim both to the segment you actually want dubbed. - Use TTS or professionally recorded audio for the new track — cleaner audio produces more accurate lip movement. - This is a redub tool, not a full talking-head generator — it only replaces mouth articulation on existing footage. ## Documentation https://fal.ai/models/veed/lipsync/v2