
AI Text to Image Generator
Create polished images from prompts with leading AI image models, flexible settings, and a fast browser-based workflow.
Free to try Vidu Q3 Reference-to-Video API with up to four reference images, 1080p output, optional sound, flexible duration, and seed control. Designed for creators.
// Step 1: Submit generation request
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: 'viduq3-reference-to-video',
prompt: 'Keep the character from image one and the jacket details from image two while walking through a rainy city',
resolution: '1080p',
duration: 8,
aspect_ratio: '9:16',
images: [
'https://example.com/character-reference.jpg',
'https://example.com/outfit-reference.jpg'
],
sound: true,
seed: 42
})
});
const { data } = await response.json();
const taskId = data.task_id;
// Use the @ (AT) reference feature in prompt through <<<...>>> placeholders.
// Placeholder numbering is 1-based and follows the images array order:
// <<<image_1>>> = images[0], <<<image_2>>> = images[1], <<<image_3>>> = images[2]
const mediaReferenceResponse = 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: 'viduq3-reference-to-video',
prompt: 'Keep the character from <<<image_1>>> wearing the coat from <<<image_2>>> while entering the rainy city shown in <<<image_3>>>, then return to a close-up of <<<image_1>>>',
resolution: '1080p',
duration: 8,
aspect_ratio: '9:16',
images: [
'https://example.com/character-reference.jpg',
'https://example.com/coat-reference.jpg',
'https://example.com/rainy-city-reference.jpg'
],
sound: true,
seed: 42
})
});
const { data: mediaReferenceData } = await mediaReferenceResponse.json();
const mediaReferenceTaskId = mediaReferenceData.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[0].url);
break;
}
if (status === 'failed') {
console.error(pollResultData.data.task_status_msg);
break;
}
await new Promise(resolve => setTimeout(resolve, 10000));
}
# Step 1: Submit generation request
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': 'viduq3-reference-to-video',
'prompt': 'Keep the character from image one and the jacket details from image two while walking through a rainy city',
'resolution': '1080p',
'duration': 8,
'aspect_ratio': '9:16',
'images': [
'https://example.com/character-reference.jpg',
'https://example.com/outfit-reference.jpg'
],
'sound': True,
'seed': 42
}
)
result = response.json()
task_id = result['data']['task_id']
# Use the @ (AT) reference feature in prompt through <<<...>>> placeholders.
# Placeholder numbering is 1-based and follows the images array order:
# <<<image_1>>> = images[0], <<<image_2>>> = images[1], <<<image_3>>> = images[2]
media_reference_response = requests.post(
'https://api.flaq.ai/api/v1/video/task',
headers={
'Content-Type': 'application/json',
'Authorization': 'Bearer YOUR_API_KEY'
},
json={
'model_name': 'viduq3-reference-to-video',
'prompt': 'Keep the character from <<<image_1>>> wearing the coat from <<<image_2>>> while entering the rainy city shown in <<<image_3>>>, then return to a close-up of <<<image_1>>>',
'resolution': '1080p',
'duration': 8,
'aspect_ratio': '9:16',
'images': [
'https://example.com/character-reference.jpg',
'https://example.com/coat-reference.jpg',
'https://example.com/rainy-city-reference.jpg'
],
'sound': True,
'seed': 42
}
)
media_reference_result = media_reference_response.json()
media_reference_task_id = media_reference_result['data']['task_id']
# 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)
# Step 1: Submit generation request
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": "viduq3-reference-to-video",
"prompt": "Keep the character from image one and the jacket details from image two while walking through a rainy city",
"resolution": "1080p",
"duration": 8,
"aspect_ratio": "9:16",
"images": [
"https://example.com/character-reference.jpg",
"https://example.com/outfit-reference.jpg"
],
"sound": true,
"seed": 42
}'
# Use the @ (AT) reference feature in prompt through <<<...>>> placeholders.
# Placeholder numbering is 1-based and follows the images array order:
# <<<image_1>>> = images[0], <<<image_2>>> = images[1], <<<image_3>>> = images[2]
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": "viduq3-reference-to-video",
"prompt": "Keep the character from <<<image_1>>> wearing the coat from <<<image_2>>> while entering the rainy city shown in <<<image_3>>>, then return to a close-up of <<<image_1>>>",
"resolution": "1080p",
"duration": 8,
"aspect_ratio": "9:16",
"images": [
"https://example.com/character-reference.jpg",
"https://example.com/coat-reference.jpg",
"https://example.com/rainy-city-reference.jpg"
],
"sound": true,
"seed": 42
}'
# 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"
| Parameters | Price | Original Price | Discount |
|---|
Vidu Q3 Reference-to-Video API delivers production-ready AI video generation for developers and creative teams that need consistent characters, objects, and scenes. This reference-to-video API integration uses one or more reference images to anchor subject identity while generating coherent multi-shot video with synchronized native audio. Built on Vidu's new-generation Q3 model, it combines intelligent camera switching, strong cross-shot consistency, and flexible output controls for scalable storytelling workflows on Flaq AI.
Note Please ensure your prompts and reference images comply with Vidu's content safety guidelines. If an error occurs, review your input for restricted content, adjust it, and try again.
Vidu Q3 Reference-to-Video vs. Vidu Q3 Image-to-Video Vidu Q3 Image-to-Video animates a starting image. Vidu Q3 Reference-to-Video uses multiple subject references to maintain identity and continuity across richer, multi-shot narrative generation.
Vidu Q3 Reference-to-Video vs. Vidu Q3 Turbo Reference-to-Video Vidu Q3 Turbo prioritizes maximum speed and cost efficiency. Vidu Q3 focuses on stronger consistency across camera positions and balanced production quality for narrative, brand, and character workflows.
Vidu Q3 Reference-to-Video vs. Seedance V2.0 Reference-to-Video Seedance V2.0 supports broad mixed-modality reference input. Vidu Q3 differentiates through multi-image subject grounding, intelligent camera switching, and tightly synchronized native dialogue, effects, and music.
Vidu Q3 Reference-to-Video vs. Wan 2.7 Reference-to-Video Wan 2.7 supports mixed image, video, and optional voice references. Vidu Q3 emphasizes efficient multi-image consistency, native audio-video output, and coherent storytelling across camera changes.
Vidu Q3 Reference-to-Video vs. Kling Video O3 Reference-to-Video Kling Video O3 provides strong reference-guided motion and scene reasoning. Vidu Q3 offers multi-image subject consistency, native multilingual audio, and intelligent shot switching for complete audiovisual stories.
Explore several AI creation tools for quick image and video workflows in your browser, then scale successful ideas with Flaq AI's production-ready model APIs. Flaq AI provides a unified API layer for all models, making it easy to use and scale your workflows.

Create polished images from prompts with leading AI image models, flexible settings, and a fast browser-based workflow.

Upload a reference image, guide edits with prompts, and transform visuals for design, marketing, and creative production.

Turn written scene ideas into short AI videos with model selection, motion prompts, and practical generation controls.

Animate reference images into smooth AI video clips for products, portraits, social posts, and creative concepts.