
ข้อความเป็นรูปภาพ
สร้างรูปภาพ AI จากพรอมต์ข้อความ
ทำให้ภาพนิ่งเคลื่อนไหวด้วย Google Gemini Omni 1.2 Flash API ระบุการเคลื่อนไหวและเลือกเพิ่มภาพสุดท้ายเพื่อกำหนดเฟรมจบของคลิป
Gemini Omni 1.2 Flash Image-to-Video API สร้างวิดีโอสั้นจากภาพเริ่มต้นและคำบรรยายการเคลื่อนไหว บน Best Image AI คุณสามารถเพิ่มภาพปิดท้ายเพื่อกำกับว่าฉากจะจบลงอย่างไร ใช้สร้างภาพเคลื่อนไหวจากภาพถ่ายสินค้า ภาพวาด หรือภาพในสตอรีบอร์ดได้ โดยเลือกวิดีโอแนวนอนหรือแนวตั้งได้ตามต้องการ
ทำให้ภาพนิ่งเคลื่อนไหว: สร้างการเคลื่อนไหวจากภาพที่ส่งเข้าไป โดยใช้องค์ประกอบของภาพนั้น เป็นภาพเปิดของคลิปที่สร้างขึ้น
สร้างการเปลี่ยนผ่านระหว่างเฟรม: เมื่อรู้ว่าต้องการให้ฉากจบด้วยภาพแบบใด ให้ใช้ภาพเปิดและภาพปิดท้ายกำกับการเปลี่ยนผ่านระหว่างสองภาพ
กำกับการเคลื่อนไหวด้วยข้อความ: ส่งพรอมต์พร้อมภาพเพื่อบรรยายการกระทำ และลำดับเหตุการณ์ที่ต้องการให้เกิดขึ้นในฉาก
ข้อมูลนำเข้า: ส่งภาพเริ่มต้นและพรอมต์อธิบายการเคลื่อนไหวที่ต้องการ โดยจะเพิ่มภาพปิดท้ายด้วยก็ได้
การตั้งค่าผลลัพธ์: เลือกกรอบภาพแนวนอนหรือแนวตั้ง ความละเอียด และความยาวคลิป การเพิ่มภาพปิดท้ายจะลดความยาวสูงสุดที่รองรับ ดูข้อจำกัดปัจจุบันได้ในเอกสาร API
ผลลัพธ์: รับวิดีโอที่สร้างขึ้นเมื่องานสร้างวิดีโอจากภาพเสร็จสมบูรณ์
การคิดค่าบริการ: คิดค่าบริการเป็นรายวินาทีตามความยาววิดีโอที่ขอและความละเอียดที่เลือก การเพิ่มภาพปิดท้ายไม่มีค่าบริการแยกต่างหาก
สร้างภาพเคลื่อนไหวจากภาพถ่ายสินค้า: ใช้ภาพนิ่งของสินค้าเป็นเฟรมเปิดสำหรับวิดีโอโฆษณาสั้นฉบับร่าง
เชื่อมฉากในสตอรีบอร์ด: ส่งภาพวาดเฟรมเปิดและเฟรมปิดเพื่อทดลองการเคลื่อนไหวที่เชื่อมสองเฟรมตามที่วางแผนไว้
ปรับสื่อสำหรับโซเชียลมีเดีย: ทำภาพแคมเปญหรือภาพประกอบบทความที่มีอยู่ให้เป็นวิดีโอ
ทบทวนแนวทางการเคลื่อนไหว: จับคู่ภาพที่อนุมัติแล้วกับคำบรรยายการเคลื่อนไหวหลายแบบ เพื่อทดลองแนวทางของฉากก่อนเข้าสู่ขั้นตอนการผลิตต่อไป
หมายเหตุ ควรบรรยายการเคลื่อนไหวระหว่างเฟรมที่ส่งเข้าไปด้วย แทนที่จะอธิบายเฉพาะสิ่งที่เห็นในแต่ละภาพ ภาพปิดท้ายช่วยกำกับลักษณะภาพสุดท้ายและทำให้ความยาวคลิปสูงสุดที่รองรับลดลง
เทียบกับ Text-to-Video: Image-to-Video ต้องใช้ภาพเปิด หากต้องการสร้างฉากจากคำบรรยาย โดยไม่มีภาพนำเข้า ให้เลือก Text-to-Video
เทียบกับ Reference-to-Video: Image-to-Video ใช้ภาพเพื่อกำหนดเฟรมเริ่มต้นและเฟรมสุดท้ายหากมีการส่งภาพปิดท้าย ส่วน Reference-to-Video รับทั้งภาพและวิดีโอเป็นสื่ออ้างอิงในการสร้างคลิปใหม่
เทียบกับ Video Edit: Image-to-Video สร้างการเคลื่อนไหวจากภาพนิ่งตามความยาวและแนวภาพที่เลือก ส่วน Video Edit เริ่มจากฟุตเทจที่มีอยู่ ซึ่งเป็นตัวกำหนดจังหวะเวลาและอัตราส่วนภาพของวิดีโอผลลัพธ์
สำรวจเครื่องมือสร้างสรรค์ด้วย AI หลายรายการสำหรับเวิร์กโฟลว์รูปภาพและวิดีโอที่รวดเร็วในเบราว์เซอร์ แล้วขยายแนวคิดที่ประสบความสำเร็จด้วย API โมเดลที่พร้อมใช้งานจริงจาก Best Image AI โดย Best Image AI มีชั้น API แบบรวมสำหรับทุกโมเดล ทำให้ใช้และขยายเวิร์กโฟลว์ได้ง่าย

สร้างรูปภาพ AI จากพรอมต์ข้อความ

สร้างรูปภาพ AI จากรูปภาพและพรอมต์ข้อความ

สร้างวิดีโอ AI จากพรอมต์ข้อความ

ทำให้รูปภาพเคลื่อนไหวเป็นวิดีโอ AI

สร้างรูปภาพและวิดีโอ AI ในพื้นที่ทำงานเดียว

สร้างวิดีโอที่สอดคล้องกันจากสื่ออ้างอิง

สร้างเวิร์กโฟลว์ภาพและวิดีโอ AI แบบภาพบนแคนวาสไร้ขอบเขต
const response = await fetch('https://api.flaq.ai/api/v1/video/task', {
method: 'POST',
headers: {
'Content-Type': 'application/json',
'Authorization': 'Bearer YOUR_API_KEY'
},
body: JSON.stringify({
model_name: 'gemini-omni-1.2-flash-image-to-video',
prompt: 'The girl walks toward the camera while the city lights shimmer behind her',
image_url: 'https://example.com/start-frame.jpg',
image_end_url: 'https://example.com/end-frame.jpg',
aspect_ratio: '9:16',
resolution: '1080p',
duration: 8
})
});
const { data } = await response.json();
const taskId = data.task_id;
// Step 2: Poll for results
const taskId = data.task_id;
const pollResult = async (taskId) => {
const res = await fetch(`https://api.flaq.ai/api/v1/video/${taskId}`, {
headers: { 'Authorization': 'Bearer YOUR_API_KEY' }
});
return res.json();
};
while (true) {
const pollResultData = await pollResult(taskId);
const status = pollResultData.data.task_status;
if (status === 'succeed') {
console.log(pollResultData.data.task_result.videos[].);
;
}
(status === ) {
.(pollResultData..);
;
}
( (resolve, ));
}
import requests
response = requests.post(
'https://api.flaq.ai/api/v1/video/task',
headers={
'Content-Type': 'application/json',
'Authorization': 'Bearer YOUR_API_KEY'
},
json={
'model_name': 'gemini-omni-1.2-flash-image-to-video',
'prompt': 'The girl walks toward the camera while the city lights shimmer behind her',
'image_url': 'https://example.com/start-frame.jpg',
'image_end_url': 'https://example.com/end-frame.jpg',
'aspect_ratio': '9:16',
'resolution': '1080p',
'duration': 8
}
)
result = response.json()
task_id = result['data']['task_id']
curl -X POST https://api.flaq.ai/api/v1/video/task \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_API_KEY" \
-d '{
"model_name": "gemini-omni-1.2-flash-image-to-video",
"prompt": "The girl walks toward the camera while the city lights shimmer behind her",
"image_url": "https://example.com/start-frame.jpg",
"image_end_url": "https://example.com/end-frame.jpg",
"aspect_ratio": "9:16",
"resolution": "1080p",
"duration": 8
}'
# Step 2: Poll for results
# Replace {task_id} with the task_id returned from the submit response
curl -X GET "https://api.flaq.ai/api/v1/video/{task_id}" \
-H "Authorization: Bearer YOUR_API_KEY"
# Step 2: Poll for results
task_id = response.json()['data']['task_id']
poll_url = f"https://api.flaq.ai/api/v1/video/{task_id}"
while True:
poll_result = requests.get(poll_url, headers={'Authorization': 'Bearer YOUR_API_KEY'}).json()
status = poll_result['data']['task_status']
if status == 'succeed':
print(poll_result['data']['task_result']['videos'][0]['url'])
break
if status == 'failed':
print(poll_result['data']['task_status_msg'])
break
time.sleep(10)