Veo 3.1 Fast è il livello velocità-costo della generazione Veo 3.1 di Google, tarato per latenza e prezzo inferiori pur mantenendo l'insieme di capacità del modello di punta.
- Input
- testo immagine
- Output
- video
- Prezzo
- $0.15/s
Il prezzo a confronto
Dove si colloca il prezzo tra 5 modelli confrontabili
La barra mostra dove si colloca il prezzo di questo modello tra tutti i modelli dello stesso tipo su Synthorai. Alle due estremità sono indicati il più economico e il più caro. Sono tariffe base; gli sconti per batch, regione e scrittura in cache sono nella pagina dei prezzi.
Specifiche e limiti
Video
| Risoluzione | 720p / 1080p Un insieme fisso di opzioni, non un intervallo. |
|---|---|
| Durata della clip | 4 / 6 / 8 s Un insieme fisso di opzioni, non un intervallo. |
| Frame rate | 24 fps |
| Proporzioni | 16:9 · 9:16 |
| Input video | text-to-video · image-to-video con primo fotogramma e con primo/ultimo fotogramma (fino a 2 immagini guida) |
| Audio nativo | Sì, genera audio |
| Formato | .mp4 |
Modello
| Modalità | testo + immagine → video |
|---|
- Livello velocità/costo della generazione Veo 3.1 di Google: lo stesso insieme di capacità di Veo 3.1 con latenza e prezzo inferiori, ovvero text-to-video, image-to-video con primo fotogramma e interpolazione tra primo e ultimo fotogramma (fino a due immagini guida), tutti con audio sincronizzato nativo
- 720p/1080p, 24 fps, 4/6/8 s, 16:9 e 9:16
- un interruttore generateAudio seleziona l'output con audio o muto. Synthorai lo serve tramite l'API di job asincrona /v1/videos e lo fattura per secondo di output a tariffe distinte per output con audio e muto
Un solo prompt, misurato attraverso il gateway
Veo 3.1 Fast
Restituito dal modello 1280×720 Durata 8s latenza 63 s
Un prompt, una richiesta per modello, nessun nuovo tentativo e nessuna selezione: è il primo risultato restituito da ciascun modello. Non abbiamo fissato né le dimensioni né la durata: ogni modello ha usato il proprio default, perché una richiesta costruita per andare bene a tutti non avrebbe valorizzato nessuno. I file sono stati ricodificati per il web, quindi valuta la composizione e l'aderenza al prompt, non la compressione.
Usa Veo 3.1 Fast in 30 secondi
API asincrona a job: crei un task e fai polling, oppure tieni aperta la richiesta con Prefer: wait. POST /v1/videos
import time
import requests
BASE = "https://synthorai.io/v1"
HEADERS = {"Authorization": "Bearer sk-syn-..."}
# 1) create the video generation job (POST /v1/videos)
task = requests.post(
f"{BASE}/videos",
headers=HEADERS,
json={
"model": "veo-3.1-fast-generate-001",
"prompt": "a watercolor lighthouse at dawn, waves rolling in, camera pulling back",
"resolution": "720p",
"duration": 5,
},
).json()
# 2) poll the job until it reaches a terminal state
while task["status"] in ("queued", "in_progress"):
time.sleep(5)
task = requests.get(f"{BASE}/videos/{task['id']}", headers=HEADERS).json()
# 3) completed → signed video URL (valid ~24h - download and store it promptly)
if task["status"] == "completed":
print(task["data"][0]["url"])
else:
print(task["error"])const HEADERS = {
Authorization: "Bearer sk-syn-...",
"Content-Type": "application/json",
};
interface VideoTask {
id: string;
status: "queued" | "in_progress" | "completed" | "failed" | "cancelled";
data?: Array<{ url: string }>;
error?: { code: string; message: string };
}
// 1) create the video generation job (POST /v1/videos)
const created = await fetch("https://synthorai.io/v1/videos", {
method: "POST",
headers: HEADERS,
body: JSON.stringify({
model: "veo-3.1-fast-generate-001",
prompt: "a watercolor lighthouse at dawn, waves rolling in, camera pulling back",
resolution: "720p",
duration: 5,
}),
});
let task = (await created.json()) as VideoTask;
// 2) poll the job until it reaches a terminal state
while (task.status === "queued" || task.status === "in_progress") {
await new Promise((r) => setTimeout(r, 5000));
const res = await fetch(`https://synthorai.io/v1/videos/${task.id}`, { headers: HEADERS });
task = (await res.json()) as VideoTask;
}
// 3) completed → signed video URL (valid ~24h — download and store it promptly)
if (task.status === "completed") console.log(task.data?.[0]?.url);
else console.error(task.error);# Create the job; "Prefer: wait" holds the request up to 60s and returns the
# completed task when generation finishes in time (else the queued task).
curl https://synthorai.io/v1/videos \
-H "Authorization: Bearer sk-syn-..." \
-H "Content-Type: application/json" \
-H "Prefer: wait=60" \
-d '{
"model": "veo-3.1-fast-generate-001",
"prompt": "a watercolor lighthouse at dawn, waves rolling in, camera pulling back",
"resolution": "720p",
"duration": 5
}'
# Still queued / in_progress? Poll until completed → data[0].url (valid ~24h).
curl https://synthorai.io/v1/videos/vid_9f2e8c1a4b7d \
-H "Authorization: Bearer sk-syn-..."package main
import (
"bytes"
"encoding/json"
"fmt"
"net/http"
"time"
)
const base = "https://synthorai.io/v1"
type videoTask struct {
ID string `json:"id"`
Status string `json:"status"`
Data []struct {
URL string `json:"url"`
} `json:"data"`
}
func call(method, url string, body []byte) (t videoTask) {
req, _ := http.NewRequest(method, url, bytes.NewReader(body))
req.Header.Set("Authorization", "Bearer sk-syn-...")
req.Header.Set("Content-Type", "application/json")
resp, _ := http.DefaultClient.Do(req)
defer resp.Body.Close()
json.NewDecoder(resp.Body).Decode(&t)
return t
}
func main() {
// 1) create the video generation job (POST /v1/videos)
payload, _ := json.Marshal(map[string]any{
"model": "veo-3.1-fast-generate-001",
"prompt": "a watercolor lighthouse at dawn, waves rolling in, camera pulling back",
"resolution": "720p",
"duration": 5,
})
task := call("POST", base+"/videos", payload)
// 2) poll the job until it reaches a terminal state
for task.Status == "queued" || task.Status == "in_progress" {
time.Sleep(5 * time.Second)
task = call("GET", base+"/videos/"+task.ID, nil)
}
// 3) completed → signed video URL (valid ~24h — download and store promptly)
if task.Status == "completed" {
fmt.Println(task.Data[0].URL)
}
}import java.net.URI;
import java.net.http.HttpClient;
import java.net.http.HttpRequest;
import java.net.http.HttpResponse;
// JDK built-in HttpClient — no extra dependency needed.
HttpClient http = HttpClient.newHttpClient();
// 1) create the job; "Prefer: wait=60" holds the request up to 60s and
// returns the completed task when generation finishes in time
HttpRequest create = HttpRequest.newBuilder(URI.create("https://synthorai.io/v1/videos"))
.header("Authorization", "Bearer sk-syn-...")
.header("Content-Type", "application/json")
.header("Prefer", "wait=60")
.POST(HttpRequest.BodyPublishers.ofString("""
{"model": "veo-3.1-fast-generate-001",
"prompt": "a watercolor lighthouse at dawn, waves rolling in, camera pulling back",
"resolution": "720p", "duration": 5}"""))
.build();
String task = http.send(create, HttpResponse.BodyHandlers.ofString()).body();
System.out.println(task); // {"id":"vid_…","status":…} — completed → data[0].url
// 2) still queued / in_progress? Poll GET https://synthorai.io/v1/videos/{id} until the
// status turns completed, then download data[0].url (valid ~24h).Informazioni su Veo 3.1 Fast
- Supporta text-to-video, image-to-video con primo fotogramma, interpolazione primo-e-ultimo fotogramma tra due immagini guida, fino a tre immagini di riferimento degli asset ed estensione video che prosegue una clip esistente di 7 secondi per chiamata, ciascuno con audio nativo sincronizzato, producendo clip .mp4 a 24 fps, lunghe 4, 6 o 8 secondi, in 16:9 o 9:16.
- Un interruttore generateAudio seleziona output sonoro o silenzioso.
- L'unica differenza di capacità documentata rispetto al livello 3.1 standard è il tetto di risoluzione: Fast si ferma a 1080p, mentre il modello di punta offre anche il 4K.
- Tutto il resto che Google pubblica sulla model card, dalle durate e proporzioni ai video per richiesta, al seed, al prompt negativo, al controllo del movimento di camera e alle Content Credentials sull'output, è identico, quindi la scelta tra i due riguarda risoluzione, velocità e prezzo anziché funzionalità.
- Questo profilo si adatta a varianti pubblicitarie, clip social e cicli di iterazione in cui la rapidità conta di più.
- Synthorai lo serve tramite l'API di job asincrona /v1/videos, quindi crei un task e lo interroghi, oppure usi Prefer: wait per i job brevi, e la fatturazione è al secondo di output a tariffe separate per sonoro e silenzioso.
FAQ
L'API di Veo 3.1 Fast si può provare gratis?
Sì: i nuovi account ricevono 10 chiamate di prova e fino a $1 di credito gratuito, senza bisogno di carta. Abbastanza per provare Veo 3.1 Fast sul tuo carico di lavoro reale prima di aggiungere un metodo di pagamento.
In cosa eccelle Veo 3.1 Fast?
Fascia Veo 3.1 più veloce ed economica; audio nativo + image-to-video primo/ultimo fotogramma; output sonoro o silenzioso a tariffe separate. Il quadro completo è nella sezione «Informazioni», ripreso dalle note di rilascio ufficiali del provider.
Quanto costa Veo 3.1 Fast?
Su Synthorai Veo 3.1 Fast costa $0.15 al secondo di video generato. Si pagano solo le generazioni riuscite: a consumo, senza sovrapprezzo di piattaforma e senza abbonamento.
Come genero video con l'API di Veo 3.1 Fast?
Invia una POST a /v1/videos su Synthorai con model="veo-3.1-fast-generate-001" per creare un job asincrono, poi fai polling sul task (o tieni aperta la richiesta con l'header Prefer: wait) finché l'URL del video non è pronto. Non serve alcun SDK del provider.
Come ottengo l'accesso a Veo 3.1 Fast?
Fai puntare l'SDK OpenAI che usi già a base_url="https://synthorai.io/v1", imposta model="veo-3.1-fast-generate-001" e hai finito: una sola chiave API vale per tutti i modelli del gateway.
Modelli correlati
Confronta
Ogni valore di questa pagina è ripreso dalla documentazione del provider (il link è qui sopra) e riporta la data dell'ultima verifica. I prezzi sono confrontati sull'intero catalogo; per le specifiche che ogni provider definisce a modo suo indichiamo la differenza invece di metterle in un grafico. Qui non c'è nulla di misurato da noi e non assegniamo punteggi.