ویدیو و لیپسینک
ساخت ویدیوی لیپسینک
یک عکس یا ویدیوی چهره را با یک فایل صوتی همگام میکند. پاسخ ۲۰۲ با شناسهی کار است و هزینه به طول نتیجه بستگی دارد.
/v1/lipsyncدقیقاً یکی از video و image را همراه audio بفرستید. هر کدام را میتوان به صورت فایل در multipart/form-data (حداکثر ۲۵ مگابایت برای هر فایل)، یا در JSON به صورت URL یا data URL با base64 داد. URLها با محافظ SSRF دریافت میشوند (حداکثر ۵۰ مگابایت). نوع هر فایل از روی بایتها تشخیص داده میشود.
درخواست بلافاصله با 202 و status: queued جواب میگیرد؛ بعد GET /v1/lipsync/{id} را با فاصله صدا بزنید تا کار به completed، failed یا cancelled برسد و فایل را با /content بردارید.
طول صدا و هزینه
هزینه به ثانیه است، پس مدت را از شما نمیپرسیم: فیلد seconds در این مسیر پذیرفته نمیشود و طول audio را خودمان میخوانیم. فقط فایل WAV و MP3 خوانده میشود؛ قالب دیگر audio_unreadable است. صدای بلندتر از ۳۰۰ ثانیه audio_too_long میدهد. اعتبار پیش از اجرا بر اساس همین طول رزرو میشود، اما صورتحساب نهایی طول خودِ نتیجه است و ممکن است از رزرو بیشتر یا کمتر باشد.
عکس یا ویدیو
بعضی مدلها فقط عکس چهره میگیرند. اگر به چنین مدلی video بدهید، media_input_unsupported میگیرید و باید image بفرستید.
اگر کار شکست بخورد یا لغو شود، اعتبار رزروشده برمیگردد. فایلهای ورودی شما هنگام پایان کار یا رد درخواست از سیستم برداشته میشوند، و این کارها در استودیو و گالری حساب شما دیده نمیشوند.
نمونهها
curl https://1ai.ir/v1/lipsync \
-H "Authorization: Bearer $ONEAI_API_KEY" \
-F 'model=heygen/avatar-iv' \
-F "image=@presenter.jpg" \
-F "audio=@speech.mp3"{
"id": "job_6Nc7pYvB2mTxKq4WeHr9Sd",
"object": "lipsync",
"model": "heygen/avatar-iv",
"status": "queued",
"progress": 0,
"created_at": 1793923500,
"completed_at": null,
"seconds": 12,
"estimated_credits": 15,
"credits": 0,
"output": null,
"error": null
}بدنهی درخواست
modelstringالزامیشناسهی مدل لیپسینک، برای نمونه
heygen/avatar-iv.imagefileعکس چهره: فایل در multipart، یا در JSON یک URL یا data URL. دقیقاً یکی از
imageوvideoلازم است.videofileویدیوی چهره: فایل در multipart، یا در JSON یک URL یا data URL. مدلهایی که فقط عکس میگیرند آن را رد میکنند.
audiofileالزامیفایل صوتی WAV یا MP3 با حداکثر ۳۰۰ ثانیه. فایل در multipart، یا در JSON یک URL یا data URL.
خطاها
invalid_request400هر دو یا هیچکدام از
videoوimageنیامده،audioنیامده، یا فیلد ناشناخته (مثلseconds) فرستاده شده است.media_input_unsupported400مدل فقط عکس میپذیرد و
videoداده شده است.audio_unreadable400طول صدا خوانده نشد؛ آن را به صورت WAV یا MP3 بفرستید.
audio_too_long400صدا از ۳۰۰ ثانیه بلندتر است.
input_fetch_failed400فایلی از روی URL دریافت نشد.
model_kind_mismatch400مدل دادهشده مدل لیپسینک نیست.
insufficient_credits402اعتبار برای رزرو هزینه کافی نیست.
model_not_found404مدل وجود ندارد یا کلید شما به آن دسترسی ندارد.
file_too_large413یکی از فایلهای آپلودشده از ۲۵ مگابایت بزرگتر است.
صفحههای مرتبط
- وضعیت کار لیپسینکوضعیت، پیشرفت و در صورت پایان، مشخصات فایل خروجی یک کار لیپسینک را برمیگرداند. پرسیدن وضعیت رایگان است.
- دریافت فایل لیپسینکبرای کار تمامشده، با ریدایرکت ۳۰۲ به یک لینک امضاشدهی ویدیوی نتیجه میفرستد. لینک یک ساعت معتبر است.
- لغو یا حذف کار لیپسینککار در حال اجرا را لغو میکند و اعتبار رزروشده را برمیگرداند؛ برای کار تمامشده فایلهای آن را پاک میکند.
- تبدیل متن به گفتارمتن را به فایل صوتی تبدیل میکند. پاسخ خودِ فایل صوتی است، نه JSON، و هزینهاش بر اساس تعداد نویسههای متن حساب میشود.
- ساخت ویدیویک کار تولید ویدیو از روی توصیف و در صورت نیاز تصویر مرجع میسازد. پاسخ ۲۰۲ با شناسهی کار است؛ وضعیت را پیگیری و فایل را بعداً دریافت میکنید.