Loading...
Loading...
Daha hızlı ve daha uygun maliyetli Veo 3.1 katmanı; metinden videoya, görselden videoya, referanstan videoya ve başlangıç-bitiş karesi geçişlerini kapsar.
Modelleri çalıştırmak için giriş yapın
No output yet
Run the model to see generated results.
import requests
result = requests.post(
'https://api.e2x.ai/v1/jobs/submit',
headers={
'Authorization': f'Bearer {API_KEY}',
'Content-Type': 'application/json'
},
json={
'model': 'google/veo-3.1-fast/text-to-video',
'input': {}
}
)import time
job_id = result.json()['jobId']
while True:
response = requests.get(
f'https://api.e2x.ai/v1/jobs/{'{job_id}'}',
headers={'Authorization': f'Bearer {'{API_KEY}'}'}
)
data = response.json()['data']
if data['status'] == 'completed':
print('Done!', data['outputs'][0]['url'])
break
elif data['status'] == 'failed':
raise Exception(f"Job failed: {'{'}data['error']['message']{'}'}")
time.sleep(2)Süre ve çözünürlüğe göre tahmini üretim maliyeti. Yalnızca çalıştırdığınız için ödersiniz.
Veo 3.1 Fast, Google'ın hız için ayarlanmış Veo 3.1'i: aynı çözünürlükler, aynı 4/6/8 saniyelik süreler, aynı her zaman açık native ses — daha hızlı dönüyor, daha ucuza fiyatlanıyor. Biz bunu google/veo-3.1-fast/text-to-video olarak sunuyoruz ve çıktının saniyesi üzerinden faturalıyoruz — saniye başına $0.01, ses açıkken ×1.5. Sesli 8 saniyelik 720p bir klip $0.12 ediyor. Yüklenecek hiçbir şey yok. Girdinin tamamı bir prompt.
Onun yerine elinizde canlandırmak istediğiniz bir fotoğraf mı var? O zaman aradığınız Veo 3.1 Fast image-to-video — aynı model, tek bir başlangıç karesi. Bir dizi çekim boyunca aynı yüzün ve aynı ceketin bozulmadan kalması mı gerekiyor? O da Veo 3.1 Fast reference-to-video.
Bu modeli ciddi biçimde sunan herkes saniye üzerinden faturalıyor, biz de dahil. Dolayısıyla dürüst tek karşılaştırma sabit bir konfigürasyon üzerinden yapılabilir — işte 720p, ses açık hâli, 26 Ağustos 2026'da kontrol edildi:
| API sağlayıcısı | Faturalama | Ücret (720p, ses açık) | 8 saniyelik klip | Bize göre |
|---|---|---|---|---|
| E2X (güncel) | saniye başına | $0.01/s ×1.5 ses | $0.12 | — |
| Google Gemini API | saniye başına | $0.10/s | $0.80 | fiyatımızın 6.7 katı |
| fal.ai | saniye başına | $0.15/s | $1.20 | fiyatımızın 10 katı |
| Replicate | saniye başına | $0.15/s | $1.20 | fiyatımızın 10 katı |
| E2X liste (indirimsiz) | saniye başına | $0.10/s ×1.5 | $1.20 | indirimsiz ücretimiz |
Son satırı fal.ai ve Replicate ile yan yana okuyun. 8 saniyelik klip için liste fiyatımız $1.20 — tam olarak onların aldığı rakam. Bugün ödediğiniz bunun onda biri, üstelik aynı request için Google'ın kendi API'sinin de 6.7 kat altında.
Bütçenizi tek bir nüansa dikkat ederek kurun: 720p → 1080p geçişi fal.ai ve Replicate'te ücretsizken Google saniye başına daha fazlasını alıyor. Bizde de çözünürlük bir çarpan, dolayısıyla 1080p bir pipeline'a bağlanmadan önce güncel rakamı bu modelin llms.txt dosyasından çekin.
Fiyatlar ve ürün koşulları zamanla değişebilir; satın alma kararı öncesinde güncel fiyatları kontrol edin. Google Batch veya Flex fiyatlandırması, zamanlama, kapasite ve işleme koşulları farklı olduğu için standart on-demand API request'iyle birebir eşdeğer değildir ve bu tabloya dahil edilmemiştir. Bu karşılaştırma belirli bir kullanım senaryosuna aittir; E2X'in her koşulda "dünyanın en ucuzu" olduğu iddia edilmemektedir.
Çoğu text-to-video modeli elinize sessiz bir MP4 tutuşturur, sesi size bırakır. Veo 3.1 Fast bunu yapmıyor. Google'ın API'si sesi native olarak üretiyor ve orada kapatma imkânınız yok — senkron diyalog, foley ve oda tonu, görüntüyle birlikte üretiliyor ve karelere kilitleniyor. Google'ın kendi dokümante ettiği örnek prompt konuşma replikleri içeriyor.
Bu, tek bir çağrının değerini değiştiriyor. "Bir balıkçı kasayı yere çarpıyor ve taze geldi, beş dakika önce diye bağırıyor" yazın; çarpmayı ve bağırmayı doğru karelerde alın — sonradan müziklendireceğiniz bir pandomim değil. Sosyal medya kurguları ve animatikler için koca bir post prodüksiyon adımı ortadan kalkıyor.
Sizin seçebilecekleriniz:
has_sound, varsayılanı true, ×1.5 çarpanını tetikleyen alan.Tek klip için tavan sekiz saniye. Sekanslar birden fazla çağrı demek.
Dashboard'dan bir key üretin, sunucu tarafında tutun, job'ı gönderin. Yalnızca prompt zorunlu.
curl -X POST https://api.e2x.ai/v1/jobs/submit \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "google/veo-3.1-fast/text-to-video",
"input": {
"prompt": "Gece, yağmurdan parlayan bir Osaka ara sokağında elde çekim. Bir ramen satıcısı noren'i kaldırıyor, buhar dışarı taşıyor ve geçmekte olan bir bisikletliye sesleniyor: \"Gecenin son kâsesi!\" Neon yansımaları su birikintilerinde titriyor.",
"aspect_ratio": "16:9",
"resolution": "720p",
"duration": "8",
"has_sound": "true"
}
}'
Size bir job ID dönüyoruz. İster polling yapın, ister yapmayın:
const headers = {
Authorization: `Bearer ${process.env.E2X_API_KEY}`,
"Content-Type": "application/json",
};
const submitted = await fetch("https://api.e2x.ai/v1/jobs/submit", {
method: "POST",
headers,
body: JSON.stringify({
model: "google/veo-3.1-fast/text-to-video",
input: {
prompt:
"Deftere not yazan bir deniz feneri bekçisine yavaş push-in. Rüzgâr camı sarsıyor. Kadın mırıldanıyor: \"Üçüncü gece, hâlâ sinyal yok.\" Lamba her dört saniyede bir yüzünü tarayıp geçiyor.",
aspect_ratio: "9:16",
resolution: "720p",
duration: "6",
has_sound: "true",
seed: 41205,
},
}),
}).then((r) => r.json());
const jobId = submitted.data.jobId;
while (true) {
const job = await fetch(`https://api.e2x.ai/v1/jobs/${jobId}`, { headers })
.then((r) => r.json());
if (job.data.status === "completed") {
console.log(job.data.outputs[0].url);
break;
}
if (job.data.status === "failed") {
throw new Error(job.data.error?.message || "Generation failed");
}
await new Promise((r) => setTimeout(r, 5000));
}
Durumlar pending → processing → completed şeklinde ilerliyor ya da failed / cancelled üzerinde duruyor. Bunun yerine bir webhookUrl gönderin, biz size haber verelim. Job başına dört dakika kadar bütçeleyin; Google 11 saniyelik bir taban ve yoğun saatlerde 6 dakikalık bir tavan yayınlıyor, dolayısıyla tavana göre kurgulayın.
Bir schema tuzağı: duration ve resolution string. "8", 8 değil.
Aynı ağırlıklar, aynı saniye fiyatı, üç farklı ön kapı. Kararı elinizde hâlihazırda bulunan girdi veriyor:
| Endpoint | 8s klip, 720p + ses | Şu durumda seçin |
|---|---|---|
| Veo 3.1 Fast text-to-video | $0.12 | Elinizde sadece kelimeler var — ve 4s ya da 6s istiyorsunuz |
| Veo 3.1 Fast image-to-video | $0.12 | Bir fotoğraf var ve ilk kare o olmalı |
| Veo 3.1 Fast reference-to-video | $0.12 | Bir kişi, ürün ya da mekân çekimler boyunca aynı kalmalı |
Fiyat berabereliği bozmayacağı için brief'i takip edin. Müşteri bir key visual'ı zaten onayladıysa, onu başlangıç karesi olarak göndermek metinle yeniden tarif etmekten iyidir. Altı klibin tek bir kampanya gibi görünmesi gerekiyorsa üçe kadar reference yükleyin — yalnız reference-to-video'nun istisnasız 8 saniyeye zorladığını bilin. Bu endpoint kısa süreleri koruyor, bu da onu bir storyboard'u kaba hareketle doldurmanın en ucuz yolu yapıyor. Çalıştırdığımız geri kalan her şey text-to-video kategorisinde ve tüm model kataloğunda.
Prompt'u, ekinde ses miksi olan bir çekim listesi gibi ele alın. Sıfatlardan daha fazla iş gören dört şey var:
Kamera hareketini adlandırın. "Sabit geniş plan", "yavaş dolly in", "elde takip" — model bunlara uyuyor. Muğlak çerçeveleme size savrulan, kararsız bir hareket verir.
Diyaloğu tırnak içinde yazın. Kısa replikler, klip başına bir ya da iki. Sekiz saniye uzun değil. Niyeti aktaran ifadeler ("cesaretlendirici bir şey söylüyor") mırıldanan dolgu üretiyor.
Ambiyansı isteyin. Tenekeye vuran yağmur, buzdolabı uğultusu, uzaktan trafik. Siz adını koymazsanız model kendi ses yatağını uyduruyor ve bu kurgunuzla uyuşmayabilir.
Işığın ne yaptığını söyleyin. Kapalı bir öğle vakti, sodyum sokak lambası, tek bir pratik ışık. Bir Fast seviyesi klibin bilinçli mi yoksa render gibi mi okunacağına ışık karar veriyor.
İngilizce tam olarak destekleniyor; Google burada başka dilleri değerlendirmedi. Diyaloğu hangi dilde konuşulmasını istiyorsanız o dilde yazın, İngilizce dışında daha fazla sapma bekleyin.
48 saat içinde indirin. Google dosyayı iki gün tutuyor — kendi ifadeleriyle, videonuzu üretimden sonraki 2 gün içinde indirmeniz gerekiyor. Her çıktıyı, outputs[0].url alanını okuyan job'ın içinde kendi bucket'ınıza kopyalayın. Bir CDN linki arşiv değildir.
Her kare SynthID taşıyor. Google'ın algılanamayan watermark'ı tüm Veo çıktısına uygulanıyor ve kendi doğrulama platformlarında kontrol edilebiliyor. Kimse bunu kapatamıyor, biz de dahil.
İnsan üretiminde bölge kuralları. AB, Birleşik Krallık, İsviçre ve MENA'da personGeneration yalnızca allow_adult ile sınırlı.
Saniye üzerinden faturalıyoruz: çıktının saniyesi başına $0.01, ses açıkken 1.5 ile çarpılıyor. Sesli 8 saniyelik 720p bir klip $0.12, 6 saniyelik $0.09, 4 saniyelik $0.06. 720p üstü çözünürlüklerin kendi çarpanı var.
Kontrol ettiğimiz konfigürasyon ve tarihte — 8 saniye, 720p, ses açık, 26 Ağustos 2026 — evet: bizde $0.12, orada $1.20. Kendi indirimsiz liste fiyatımız da aynı $1.20. Aradaki fark bir indirim, farklı bir ürün değil.
Schema'mız has_sound alanını sunuyor ve varsayılanını true yapıyoruz. Google'ın kendi Gemini API'si ise hiçbir kapatma anahtarı sunmuyor, dolayısıyla sesi bu modelin doğasının bir parçası saymak en doğrusu — aynısı image-to-video endpoint'imiz için de geçerli. ×1.5 fiyat çarpanının sebebi de bu.
Tek çağrıda sekiz saniye. Bu endpoint'te 4 veya 6 talep edebilirsiniz, ancak 1080p ve 4k tam 8 saniye gerektiriyor. Daha uzun sekanslar, birkaç job'ı kendiniz birleştirmeniz ya da görünümü reference-to-video ile sabit tutmanız demek.
Yalnızca 16:9 ve 9:16, 24fps'te, 720p, 1080p veya 4k olarak. Varsayılanımız 16:9 ve 720p. Kare ya da 4:5 seçeneği yok, ihtiyacınız varsa post prodüksiyonda kırpın.
Evet — her Veo çıktısı, Google'ın algılanamayan köken işareti SynthID ile işaretleniyor ve kendi platformları üzerinden doğrulanabiliyor. Hiçbir sağlayıcı bunu devre dışı bırakacak bir parametre sunmuyor.
Job başına dört dakika kadar bütçeliyoruz. Google minimum 11 saniye, yoğun saatlerde maksimum 6 dakika yayınlıyor, dolayısıyla toplu işlerde sıkı bir polling döngüsü yerine webhook kullanın.