개발자 API는 현재 베타 단계이며 언제든 변경될 수 있습니다. 현 단계에서는 개인 테스트와 체험에 더 적합하며, 프로덕션 환경에서의 사용은 아직 권장하지 않습니다.
플레이그라운드
대상 동영상에서 추적된 얼굴 하나를 참조 이미지의 얼굴로 교체합니다. 얼굴 감지, 랜드마크 추적, 결과 분석은 자동으로 처리됩니다.
POST /api/v1/video-face-swap/submit → /queryAPI는 구독 사용자만 이용할 수 있습니다. 웹사이트와 API는 동일한 구독 크레딧 잔액을 공유합니다.
요금제 보기교체할 추적 대상 얼굴의 0부터 시작하는 인덱스입니다.
참조 이미지에서 사용할 얼굴의 0부터 시작하는 인덱스입니다.
#!/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