Loading...
Loading...
Livello Veo 3.1 più veloce ed economico, con testo-video, immagine-video, riferimento-video e transizioni tra fotogramma iniziale e finale.
Accedi per eseguire i modelli
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/reference-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)Costo stimato per generazione in base a durata e risoluzione. Paghi solo per ciò che esegui.
Questo è l'endpoint da usare quando lo stesso volto, la stessa giacca o la stessa vetrina devono sopravvivere a un'intera serie di clip. Facciamo girare il Veo 3.1 Fast di Google come google/veo-3.1-fast/reference-to-video, accetta un array image_urls di fino a tre reference image, e fatturiamo al secondo: $0.01 al secondo, ×1,5 con l'audio attivo. Qui ogni clip dura 8 secondi, quindi il prezzo è $0.12 a clip in 720p con il sonoro.
Le basta una sola immagine e Le farebbe comodo una clip più corta? Usi Veo 3.1 Fast image-to-video — anima un singolo fotogramma di partenza e Le dà 4 o 6 secondi. Nulla da caricare, proprio? Veo 3.1 Fast text-to-video gira sul solo prompt.
La misurazione al secondo è universale per questo modello — la fanno Google, fal.ai e Replicate, e la facciamo anche noi. Dato che reference-to-video è fisso a 8 secondi, la tabella qui sotto è l'unica configurazione che conta. Dati verificati il 26 agosto 2026, a 720p con audio:
| Provider API | Fatturazione | Tariffa (720p, audio attivo) | Clip da 8 secondi | vs. noi |
|---|---|---|---|---|
| E2X (attuale) | al secondo | $0.01/s ×1,5 audio | $0.12 | — |
| Google Gemini API | al secondo | $0.10/s | $0.80 | 6,7× il nostro prezzo |
| fal.ai | al secondo | $0.15/s | $1.20 | 10× il nostro prezzo |
| Replicate | al secondo | $0.15/s | $1.20 | 10× il nostro prezzo |
| Listino E2X (pre-sconto) | al secondo | $0.10/s ×1,5 | $1.20 | la nostra tariffa non scontata |
Legga l'ultima riga contro i due marketplace. Il nostro prezzo di listino è $1.20 per una clip da 8 secondi — precisamente quello che fatturano fal.ai e Replicate. Oggi Lei ne paga un decimo, e resta comunque 6,7 volte sotto l'API di Google stessa. Quel divario è uno sconto attivo su un modello identico, non un tier depotenziato.
Tariffi il 1080p con attenzione: fal.ai e Replicate includono il passaggio da 720p a 1080p senza costi aggiuntivi, mentre Google applica una tariffa al secondo più alta. Anche dal nostro lato la risoluzione è un moltiplicatore — il numero aggiornato vive nel llms.txt di questo modello.
I prezzi e le condizioni dei prodotti possono cambiare nel tempo. Verifichi i prezzi aggiornati di ciascun provider prima di prendere una decisione d'acquisto. Il prezzo Google Batch o Flex non è direttamente equivalente a una request API on-demand standard, perché le condizioni di pianificazione, disponibilità ed elaborazione sono diverse; è quindi escluso da questo confronto. Si tratta di un confronto circoscritto a uno scenario d'uso specifico, non dell'affermazione che E2X sia l'opzione più economica al mondo in ogni configurazione.
Il limite di Google è esplicito: "Usare fino a tre reference image per guidare il contenuto", descritte nel loro schema come "Fino a tre immagini da usare come reference di stile e contenuto." Tre. Una quarta sta fuori da ciò che il modello accetta.
Quel budget impone una decisione, ed è la parte interessante di questo endpoint. Spende tre slot su ciò che non deve andare alla deriva. Uno shooting di campagna di solito va così: un ritratto pulito del presentatore, uno scatto a figura intera che mostra il completo, una foto della location. Ogni clip della serie torna poi indietro con la stessa persona, gli stessi abiti, lo stesso luogo — Lei cambia solo il prompt.
Il lavoro su prodotto si divide diversamente: due angolazioni dell'oggetto, un fotogramma del trattamento cromatico del brand. Stesso principio. Le reference portano l'identità, il prompt porta l'azione.
Non è il compito di image-to-video. Lì la Sua immagine è il fotogramma uno. Qui le reference sono una guida e il fotogramma di apertura viene generato a partire da esse. Le serve una clip che parte da un fermo immagine approvato esatto? Quello è l'altro endpoint.
La regola di Google recita: la duration "Deve essere '8' quando si usano l'estensione, le reference image oppure le risoluzioni 1080p e 4k." Le reference image sono in quell'elenco, quindi le opzioni da 4 e 6 secondi offerte dagli altri due endpoint qui non esistono. Il nostro schema mostra comunque l'enum duration; per questa capability l'unico valore valido è "8".
Faccia budget di conseguenza. Una sequenza di sei clip sono 48 secondi di output — $0.72 da noi, $7.20 su fal.ai o Replicate.
Campi obbligatori: prompt e image_urls.
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/reference-to-video",
"input": {
"prompt": "La donna della prima immagine, che indossa il cappotto della seconda immagine, entra nella hall della terza immagine e si scrolla di dosso la pioggia. Alza lo sguardo e dice: \"Hai aspettato.\" Luce calda al tungsteno, eco di marmo.",
"image_urls": [
"https://example.com/talent-portrait.jpg",
"https://example.com/wardrobe-coat.jpg",
"https://example.com/lobby-set.jpg"
],
"aspect_ratio": "16:9",
"resolution": "720p",
"duration": "8",
"has_sound": "true"
}
}'
Il submit restituisce un job ID; faccia polling oppure registri un webhook:
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/reference-to-video",
input: {
prompt:
"La mascotte dell'immagine 1 salta sul bancone dell'immagine 2, rovescia una tazza e si immobilizza. Passi che cigolano, un tintinnio di ceramica, poi silenzio.",
image_urls: [
"https://example.com/mascot-turnaround.png",
"https://example.com/kitchen-set.jpg",
],
aspect_ratio: "9:16",
resolution: "720p",
duration: "8",
has_sound: "true",
seed: 60411,
},
}),
}).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));
}
Lo status passa da pending → processing → completed, oppure finisce su failed / cancelled. Preveda circa quattro minuti per job — la finestra ufficiale di Google è un minimo di 11 secondi e 6 minuti nelle ore di punta. Riusi lo stesso seed su tutta una serie se vuole che le generazioni facciano rima.
Pesi identici, prezzo al secondo identico. È la forma del Suo input a scegliere l'endpoint:
| Endpoint | Opzioni di durata | Clip 8s, 720p + audio | Da scegliere quando |
|---|---|---|---|
| Veo 3.1 Fast reference-to-video | solo 8s | $0.12 | Fino a 3 immagini devono fissare un volto, un completo o un luogo su più clip |
| Veo 3.1 Fast image-to-video | 4 / 6 / 8s | $0.12 | Un fermo immagine deve essere letteralmente il primo fotogramma |
| Veo 3.1 Fast text-to-video | 4 / 6 / 8s | $0.12 | Solo prompt, nulla da caricare |
| Omni Flash reference-to-video | — | $0.80 (configurazione di default) | Un'altra famiglia, quando l'estetica di Veo non è quella che vuole |
Preferiamo che spenda meno. Se una sola immagine basta, image-to-video costa uguale e sblocca le clip da 4 e 6 secondi — una versione da 4 secondi costa $0.06, la metà degli 8 secondi fissi che paga qui. Venga su questo endpoint quando il requisito vero è la coerenza fra più clip, perché è l'unica cosa che gli altri non sanno fare. Il resto della categoria sta sotto reference-to-video; tutto il resto è nel catalogo modelli.
Il modello riceve un array senza etichette. Nulla nel payload dice che lo slot due era il guardaroba e non un secondo personaggio — quindi lo dica nel prompt.
L'indicizzazione funziona: "la donna dell'immagine 1", "il cappotto dell'immagine 2", "la hall dell'immagine 3". Poche parole, e sparisce gran parte dell'ambiguità che produce output mescolati.
Altre tre abitudini:
Dia a ogni reference un solo compito. Una foto affollata che contiene una persona, un prodotto e una stanza chiede al modello di indovinare cosa Le stava a cuore. Ritagli stretto.
Ripeta l'identità a parole. "Stessi capelli corti argento, stessi occhiali tondi" rinforza quello che la reference mostra. Assicurazione a basso costo.
Scriva i dialoghi per esteso. Google genera l'audio in modo nativo senza alcun interruttore di spegnimento nella loro API, quindi il sonoro c'è comunque — parlato, effetti, ambiente. Citi la battuta e atterra sui fotogrammi giusti.
Google supporta pienamente l'inglese e per questo modello non ha valutato nient'altro, quindi tenga in inglese il testo delle istruzioni — il dialogo citato può essere nella lingua che la scena richiede.
Due giorni per scaricare. La conservazione di Google sul video generato è di due giorni — "è necessario scaricare il video entro 2 giorni dalla generazione." Per una campagna di venti clip costruita nell'arco di una settimana, è una decisione architetturale, non una nota a piè di pagina. Copi outputs[0].url nel Suo storage nel momento stesso in cui un job si completa.
SynthID su ogni output. Il watermark impercettibile di Google viene applicato a tutto il video Veo ed è verificabile attraverso la loro piattaforma. Nessun provider può disattivarlo.
La generazione di persone è limitata per regione. Nell'UE, nel Regno Unito, in Svizzera e nell'area MENA, personGeneration è limitato ad allow_adult.
Versioni il Suo set di reference. La coerenza dipende dall'inviare ogni volta reference identiche byte per byte. Un ritratto riesportato e sostituito a metà di un batch si vedrà.
Fatturiamo $0.01 per secondo di output, ×1,5 con l'audio attivo. Questo endpoint è fisso a 8 secondi, quindi una clip in 720p con il sonoro è $0.12. Le risoluzioni più alte portano con sé il proprio moltiplicatore — controlli la pagina del modello aggiornata prima di pianificare un batch in 1080p.
Al massimo tre. La documentazione di Google dice che si possono usare fino a tre reference image per guidare il contenuto, e il loro schema le descrive come reference di stile e contenuto. Meno va bene; due è comune.
Google impone gli 8 secondi ogni volta che sono in gioco delle reference image — la stessa regola che copre il 1080p e il 4k. Le servono 4 o 6 secondi? Usi invece l'endpoint image-to-video o text-to-video: stesso modello, stesso prezzo al secondo.
Image-to-video rende una singola immagine il fotogramma di apertura letterale. Reference-to-video prende fino a tre immagini come guida per identità, guardaroba, stile o luogo, e poi genera un fotogramma di apertura coerente con esse. Usi le reference quando la coerenza fra più clip conta più di un primo fotogramma specifico.
Sì. Google genera dialoghi, effetti sonori e ambiente in modo nativo, senza alcun modo di disattivarlo nella loro stessa API. Esponiamo has_sound con default true, e quell'impostazione applica il moltiplicatore di prezzo ×1,5.
Tutto l'output Veo porta SynthID, il marcatore impercettibile di Google per i contenuti generati dall'IA, verificabile sulla loro piattaforma. Nessun provider — noi compresi — può disattivarlo.
Mettiamo in conto circa quattro minuti. Google pubblica un minimo di 11 secondi e un massimo di 6 minuti nelle ore di punta, quindi per una serie completa di clip usi un webhookUrl invece di tenere aperti loop di polling.