API Pembangun masih dalam peringkat beta dan boleh berubah pada bila-bila masa. Pada peringkat ini, API lebih sesuai untuk ujian dan percubaan peribadi dan belum disyorkan untuk kegunaan produksi.
Playground
Gantikan satu wajah yang dijejak dalam video sasaran dengan wajah daripada foto rujukan. Pengesanan, penjejakan titik wajah dan pentafsiran hasil dikendalikan secara automatik.
POST /api/v1/video-face-swap/submit → /queryAkses API hanya tersedia kepada pelanggan. Kredit langganan anda dikongsi antara laman web dan API.
Lihat pelanIndeks berasaskan sifar bagi wajah sasaran dijejak yang hendak digantikan.
Indeks berasaskan sifar bagi wajah dikesan yang hendak digunakan daripada foto rujukan.
#!/usr/bin/env bash
set -euo pipefail
SUBMIT_RESPONSE="$(curl --fail-with-body --silent --show-error -X POST "https://vidmage.ai/api/v1/video-face-swap/submit" \
-H "Authorization: Bearer ${VIDMAGE_API_KEY}" \
-H "Content-Type: application/json" \
--data-raw '{
"targetVideoUrl": "https://vidmage.ai/assets/models/hailuo-ai-video-generator/skincare-ad.mp4",
"referenceFaceImageUrl": "https://vidmage.ai/assets/images/samples/smiling-man-sweater.webp"
}')"
TASK_ID="$(printf '%s' "$SUBMIT_RESPONSE" | jq -er '.["taskId"]')"
while true; do
QUERY_RESPONSE="$(curl --fail-with-body --silent --show-error -X POST "https://vidmage.ai/api/v1/video-face-swap/query" \
-H "Authorization: Bearer ${VIDMAGE_API_KEY}" \
-H "Content-Type: application/json" \
--data-raw "{\"taskId\":\"${TASK_ID}\"}")"
STATUS="$(printf '%s' "$QUERY_RESPONSE" | jq -r '(.status // .data.status // "") | ascii_downcase')"
case "$STATUS" in
success|succeeded|completed)
printf '%s' "$QUERY_RESPONSE" | jq -r '(.result // .["videoUrl"] // .data["videoUrl"] // empty)'
break
;;
failed|error)
printf '%s' "$QUERY_RESPONSE" | jq -r '(.message // .error // .data.error // "Task failed")' >&2
exit 1
;;
esac
sleep 5
done