Introduzione
Video Face Swap porta i tratti del volto di una singola immagine di riferimento sulla persona presente in un video, attraverso ogni fotogramma della clip. Viaggiano solo i tratti: pettinatura, silhouette della testa, movimento, abiti, luce, lavoro di camera e sfondo dell'interprete restano come sono stati girati, ed è questo a far leggere il risultato come il girato originale invece che come una sovrapposizione.
Video Face Swap prende una clip video e un'immagine di volto di riferimento e porta soltanto i tratti del viso sulla persona nel girato, conservandone capelli, movimento, inquadratura e sfondo. Due URL e una finitura facoltativa: non c'è nessun campo prompt da scrivere.
Caratteristiche principali
Conserva la performance, cambia l’identità del volto
Face Swap applica alla persona nel filmato l’identità della referenza approvata, mantenendo intatta la performance dal vivo. Scegli un clip in cui soggetto, inquadratura e luce siano già corretti: questo flusso sostituisce un’identità, non ricostruisce una scena.
Valuta la continuità, non una scena sintetica
Esamina il risultato a velocità normale attraverso rotazioni, tagli e movimenti rapidi. Verifica che il trasferimento resti coerente e che capelli, movimento, abiti e sfondo continuino a leggere come il filmato originale.
Parametri della richiesta
| Parametro | Obbligatorio | Nota |
|---|---|---|
video_url | Sì | La clip che viene modificata. Capelli, forma della testa, movimento, abiti e l'intera scena di questa persona vengono conservati: si sostituiscono soltanto i suoi tratti del volto. almeno 1 caratteri |
reference_image_url | Sì | Un'immagine ferma che fornisce i tratti del volto. Viene preso solo il viso, non i capelli né la forma della testa. almeno 1 caratteri |
face_mapping | No | Per le clip con più persone: indica quale volto del riferimento va su quale volto del video, una coppia per voce, con i volti numerati da 0 nell’ordine di rilevamento. al massimo 10 elementi |
face_enhance | No | Applica al volto scambiato un passaggio di miglioramento che lo restituisce a risoluzione più alta. Disattivato per impostazione predefinita. Predefinito: |
style | No | realistic (predefinito) mantiene tono e texture naturali della pelle; beautify leviga e schiarisce la pelle; lossless conserva il massimo dettaglio facciale del riferimento. |
Prezzi
$0.026 / secondo generato
L’addebito avviene a blocchi interi di 10 secondi della clip di origine: una clip da 12 secondi costa quanto 20 secondi. La clip di origine deve durare da 3 a 40 secondi; la stima mostrata prima dell’invio usa la durata reale di una clip caricata, oppure il massimo di 40 secondi per un URL video, e l’eventuale differenza viene rilasciata al conguaglio.
Casi d’uso
Modifica una clip fornita
Video Face Swap porta i tratti del volto di una singola immagine di riferimento sulla persona presente in un video, attraverso ogni fotogramma della clip. Viaggiano solo i tratti: pettinatura, silhouette della testa, movimento, abiti, luce, lavoro di camera e sfondo dell'interprete restano come sono stati girati, ed è questo a far leggere il risultato come il girato originale invece che come una sovrapposizione. Usa questa modalità quando il video sorgente deve restare il punto di partenza di un montaggio. Descrivi con precisione la modifica e verifica continuità, ritmo e dettagli da preservare.
Un volto attraverso una serie generata
Genera una serie di clip con un modello video qualsiasi, poi porta un volto consenziente su tutte quante, così la serie si legge come la stessa persona. Movimento, abiti e scenografia restano quelli di ogni clip, quindi la varietà che hai generato sopravvive alla passata.
Contenuti senza censura con il volto di un interprete consenziente
Sposta un volto che sei autorizzato a usare su girato prodotto da te. Per il materiale senza censura non cambia nulla nella richiesta, ma l'obbligo di autorizzazione descritto qui sotto è vincolante, non una formalità.
Ricambiare l'interprete in una ripresa già buona
Tieni una ripresa la cui luce, messa in scena e movimento di camera sono già stati approvati e mettici un volto diverso, invece di rigenerare l'intera inquadratura e perdere la recitazione che avevi.
Consigli avanzati
Accertati di avere i diritti su entrambi i volti
Prima di qualsiasi cosa tecnica: la clip e il riferimento rappresentano entrambi delle persone, e ti serve l'autorizzazione sia per il volto che stai spostando sia per il girato in cui lo stai spostando. Conserva la liberatoria insieme al record del lavoro.
Ospita la clip e il volto, poi invia la coppia
video_url è il girato che viene modificato; reference_image_url è un fermo immagine che fornisce il volto. Aggiungi style solo quando la finitura realistic predefinita non è quella che vuoi. Non c'è nessun prompt da scrivere.
Check the result before iterating
Il riferimento dovrebbe mostrare un volto ben visibile, ragionevolmente frontale e illuminato bene, e la clip rende meglio con una sola persona il cui volto resta abbastanza grande nell'inquadratura. Angoli di profilo marcati, mosso veloce, mani od oggetti che attraversano il viso e volti molto piccoli sono i punti in cui il trasferimento peggiora o fallisce. Uno scarto forte nella direzione della luce o nel tono della pelle tra riferimento e clip si vede sulla mandibola. Viene gestito un solo volto: quando compaiono più persone non c'è modo di dire quale intendevi. Non ci sono prompt, maschera né seed: se il risultato è sbagliato, il rimedio è un riferimento diverso o un altro taglio del girato, non una richiesta riformulata.
Avvio rapido dell’API
# Generate the idempotency key once; reuse it when retrying after a lost response.
export SPICY_IDEMPOTENCY_KEY="${SPICY_IDEMPOTENCY_KEY:-$(uuidgen)}"
curl -X POST https://api.spicyapi.ai/api/v1/jobs/createTask \
-H "Authorization: Bearer $SPICY_API_KEY" \
-H "Content-Type: application/json" \
-H "Idempotency-Key: $SPICY_IDEMPOTENCY_KEY" \
-d '{
"model": "spicyapi/face-swap-video-v1/video-edit",
"input": {
"reference_image_url": "https://example.com/reference.png",
"style": "realistic",
"video_url": "https://example.com/reference.mp4"
}
}'
# Copy data.taskId from the response into TASK_ID, then poll the status.
TASK_ID="TASK_ID_FROM_RESPONSE"
curl "https://api.spicyapi.ai/api/v1/jobs/recordInfo?taskId=$TASK_ID" \
-H "Authorization: Bearer $SPICY_API_KEY"
Nel riferimento dell’API trovi autenticazione, schema completo, polling e gestione degli errori.










