API Happy Horse 1.1
Referensi API lengkap untuk model pembuatan video Happy Horse 1.1 dari Alibaba.
Varian Model
API ini mendukung tiga varian model:
Perbandingan Singkat
Rasio Aspek yang Didukung (Teks ke Video & Referensi ke Video)
Happy Horse 1.1 Text to Video
Titik akhir
POST /api/v1/video/task
Parameter Permintaan
Wajib
Opsional
Contoh Permintaan
const response = await fetch('https://api.flaq.ai/api/v1/video/task', {
method: 'POST',
headers: {
Authorization: 'Bearer YOUR_API_KEY',
'Content-Type': 'application/json',
},
body: JSON.stringify({
model_name: 'happyhorse-1.1-text-to-video',
prompt: 'A cat playing with a ball of yarn on a sunny windowsill',
duration: 5,
resolution: '1080p',
aspect_ratio: '16:9',
seed: 42,
}),
});
const { data } = await response.json();
const taskId = data.task_id;
Happy Horse 1.1 Image to Video
Parameter Permintaan
Wajib
Opsional
Catatan: aspect_ratio tidak didukung untuk image-to-video. Framing output mengikuti gambar frame pertama yang diunggah.
Contoh Permintaan
const response = await fetch('https://api.flaq.ai/api/v1/video/task', {
method: 'POST',
headers: {
Authorization: 'Bearer YOUR_API_KEY',
'Content-Type': 'application/json',
},
body: JSON.stringify({
model_name: 'happyhorse-1.1-image-to-video',
image_url: 'https://example.com/first-frame.jpg',
prompt: 'Gentle motion; cinematic lighting',
duration: 5,
resolution: '1080p',
seed: 42,
}),
});
const { data } = await response.json();
const taskId = data.task_id;
Happy Horse 1.1 Reference to Video
Parameter Permintaan
Wajib
Placeholder Referensi @ (AT)
Fitur referensi @ (AT) menghubungkan gambar referensi ke prompt melalui placeholder <<<image_N>>> bernomor. Penomoran dimulai dari 1 dan mengikuti urutan array images.
Opsional
Persyaratan Gambar Referensi
- Format yang didukung:
JPEG, JPG, PNG, WEBP
- Ukuran file maksimum: 20 MB per gambar
- Sisi pendek minimum: 400 px
- Jumlah: setidaknya 1, hingga 9 gambar
Contoh Permintaan
const response = await fetch('https://api.flaq.ai/api/v1/video/task', {
method: 'POST',
headers: {
Authorization: 'Bearer YOUR_API_KEY',
'Content-Type': 'application/json',
},
body: JSON.stringify({
model_name: 'happyhorse-1.1-reference-to-video',
prompt: 'Subject moves naturally while preserving reference style and appearance',
duration: 5,
resolution: '1080p',
aspect_ratio: '16:9',
images: [
'https://example.com/ref-1.jpg',
'https://example.com/ref-2.jpg',
],
seed: 42,
}),
});
const { data } = await response.json();
const taskId = data.task_id;
Contoh Permintaan Reference-to-Video @ (AT)
const response = await fetch('https://api.flaq.ai/api/v1/video/task', {
method: 'POST',
headers: {
Authorization: 'Bearer YOUR_API_KEY',
'Content-Type': 'application/json',
},
body: JSON.stringify({
model_name: 'happyhorse-1.1-reference-to-video',
prompt: 'Show the person from <<<image_1>>> walking beside the bicycle from <<<image_2>>> through the street in <<<image_3>>>, preserving all reference details',
duration: 5,
resolution: '1080p',
aspect_ratio: '16:9',
images: [
'https://example.com/person-reference.jpg',
'https://example.com/bicycle-reference.jpg',
'https://example.com/street-reference.jpg',
],
seed: 42,
}),
});
const { data } = await response.json();
const taskId = data.task_id;
Respons Awal
{
"code": 0,
"message": "success",
"data": {
"task_id": "{task_id}",
"response_url": "https://api.flaq.ai/api/v1/video/{task_id}",
"task_status": "submitted"
}
}
Respons Polling
Polling GET /api/v1/video/{taskId} untuk memeriksa status:
{
"code": 0,
"message": "success",
"data": {
"task_id": "{task_id}",
"response_url": "https://api.flaq.ai/api/v1/video/{task_id}",
"task_status": "succeed",
"task_status_msg": null,
"task_result": {
"videos": [
{
"url": "https://example.com/generated-video.mp4"
}
]
}
}
}
Nilai Status
submitted: Tugas diterima dan menunggu untuk diproses
processing: Pembuatan video sedang berlangsung
succeed: Pembuatan video selesai
failed: Pembuatan video gagal
Waktu Pemrosesan
Waktu pemrosesan umum: 2-5 menit tergantung durasi dan beban antrean.
Praktik Terbaik
- Jelaskan Gerakan dengan Jelas: Tambahkan gerakan subjek, gerakan kamera, dan perkembangan adegan untuk meningkatkan dinamika video.
- Gunakan Iterasi Pendek Terlebih Dahulu: Mulai dengan generasi 3-5 detik untuk memvalidasi arah prompt sebelum menjalankan klip yang lebih panjang.
- Pilih Gambar Input yang Tepat: Untuk image-to-video, gunakan gambar frame pertama yang jelas dan cukup terang dengan fokus subjek yang kuat.
- Kurasi Gambar Referensi: Untuk reference-to-video, berikan gambar referensi yang konsisten dan berkualitas tinggi yang jelas merepresentasikan subjek atau gaya yang ingin Anda pertahankan.
- Gunakan Ulang Seed untuk Varian: Pertahankan
seed yang sama saat menguji penyempurnaan prompt untuk membandingkan output dengan lebih konsisten.
- Sesuaikan Rasio dengan Kanal Distribusi: Gunakan
16:9 untuk video lanskap, 9:16 untuk shorts dan reels, serta 1:1 untuk penempatan persegi.