
Văn bản thành hình ảnh
Tạo hình ảnh AI từ câu lệnh văn bản
Tạo chuyển động cho ảnh tĩnh với API Google Gemini Omni 1.2 Flash. Mô tả chuyển động và tùy chọn thêm ảnh cuối để định hướng khung hình kết thúc clip. Xuất video đến 4K.
API Gemini Omni 1.2 Flash Image-to-Video tạo video ngắn từ một ảnh mở đầu và phần mô tả chuyển động bằng văn bản. Trên Best Image AI, bạn có thể thêm ảnh kết thúc để định hướng cảnh cuối của chuỗi chuyển động. Hãy dùng API để tạo chuyển động từ ảnh sản phẩm, tranh minh họa hoặc khung hình trong kịch bản phân cảnh, với tùy chọn video ngang hoặc dọc.
Tạo chuyển động cho ảnh tĩnh: Tạo chuyển động từ ảnh đầu vào, sử dụng bố cục của ảnh làm khung hình mở đầu cho đoạn video được tạo.
Chuyển tiếp giữa các khung hình: Dùng ảnh mở đầu và ảnh kết thúc để định hướng diễn biến của cảnh khi bạn đã xác định được hình ảnh cần thể hiện ở cuối cảnh.
Chỉ dẫn chuyển động bằng văn bản: Gửi kèm hình ảnh một câu lệnh mô tả hành động và cách bạn muốn cảnh diễn tiến.
Đầu vào: Cung cấp ảnh mở đầu và câu lệnh giải thích chuyển động mong muốn. Có thể thêm ảnh kết thúc.
Cài đặt đầu ra: Chọn khung hình ngang hoặc dọc, độ phân giải và thời lượng. Khi thêm ảnh kết thúc, thời lượng tối đa được hỗ trợ sẽ ngắn hơn. Xem tài liệu API để biết giới hạn hiện hành.
Đầu ra: Nhận video được tạo sau khi tác vụ chuyển ảnh thành video hoàn tất.
Tính phí: Phí được tính theo từng giây của thời lượng đầu ra yêu cầu ở độ phân giải đã chọn. Việc thêm ảnh kết thúc không phát sinh khoản phí riêng.
Tạo chuyển động cho ảnh sản phẩm: Dùng ảnh tĩnh của sản phẩm làm khung hình đầu cho bản phác thảo video quảng bá ngắn.
Chuyển tiếp trong kịch bản phân cảnh: Cung cấp tranh mở đầu và kết thúc để thử chuyển động nối hai khung hình đã lên kế hoạch.
Điều chỉnh tư liệu cho mạng xã hội: Tạo phiên bản video từ hình ảnh chiến dịch hoặc tranh minh họa bài viết có sẵn.
Duyệt phương án chuyển động: Kết hợp hình ảnh đã duyệt với các mô tả chuyển động khác nhau để khám phá cách thể hiện cảnh trước khi tiếp tục sản xuất.
Lưu ý Hãy mô tả chuyển động giữa các khung hình đầu vào thay vì chỉ mô tả nội dung từng ảnh. Ảnh kết thúc định hướng hình ảnh cuối cùng và cũng làm giảm thời lượng tối đa của video.
So với Text-to-Video: Image-to-Video yêu cầu ảnh mở đầu. Chọn Text-to-Video nếu muốn tạo cảnh từ mô tả bằng văn bản mà không có ảnh đầu vào.
So với Reference-to-Video: Image-to-Video dùng ảnh cho các vai trò cụ thể: ảnh mở đầu và ảnh kết thúc tùy chọn. Reference-to-Video nhận hình ảnh và video làm tư liệu tham chiếu để tạo đoạn video mới.
So với Video Edit: Image-to-Video tạo chuyển động từ ảnh tĩnh theo thời lượng và hướng khung hình đã chọn. Video Edit bắt đầu từ cảnh quay có sẵn, với nhịp thời gian và tỷ lệ khung hình đầu ra do cảnh quay gốc quyết định.
Khám phá nhiều công cụ sáng tạo AI cho quy trình hình ảnh và video nhanh ngay trong trình duyệt, sau đó mở rộng các ý tưởng thành công bằng API mô hình sẵn sàng cho sản xuất của Best Image AI. Best Image AI cung cấp một lớp API thống nhất cho mọi mô hình, giúp bạn dễ dàng sử dụng và mở rộng quy trình.

Tạo hình ảnh AI từ câu lệnh văn bản

Tạo hình ảnh AI từ hình ảnh và câu lệnh văn bản

Tạo video AI từ câu lệnh văn bản

Biến hình ảnh thành video AI

Tạo hình ảnh và video AI trong một không gian làm việc hợp nhất

Tạo video nhất quán từ phương tiện tham chiếu

Xây dựng quy trình hình ảnh và video AI trực quan trên canvas vô hạn
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)