Modelli popolari
La generazione da immagine a video combina la tua immagine di input con la generazione del movimento. L’output mantiene la coerenza visiva con la tua immagine sorgente aggiungendo un movimento realistico.
Passo 1: prepara la tua immagine
Per prima cosa, devi fornire l’immagine di partenza. Puoi caricare un file, referenziare un URL oppure fornire un data URI in base64.
// npm install @krea-ai/sdk
import { openAsBlob } from "node:fs";
import { Krea } from "@krea-ai/sdk";
const krea = new Krea({ apiKey: process.env.KREA_API_KEY });
// Option 1: Upload a local file and use the hosted asset URL
const file = await openAsBlob("./input-image.jpg", { type: "image/jpeg" });
const asset = await krea.assets.upload(file, {
description: "Input image",
});
const imageUrl = asset.image_url;
// Option 2: Using image URL
// const imageUrl = "https://example.com/input-image.jpg";
Passo 2: genera il video
Esegui una richiesta POST verso /generate/video/kling/kling-2.5 con la tua immagine e i parametri di movimento.
// npm install @krea-ai/sdk
import { Krea } from "@krea-ai/sdk";
const krea = new Krea({ apiKey: process.env.KREA_API_KEY });
const job = await krea.video("kling/kling-2.5", {
start_image: imageUrl,
prompt: "gentle camera pan from left to right, subtle depth",
duration: 5,
aspect_ratio: "16:9"
});
console.log(`Job ID: ${job.job_id}`);
Sostituisci con il tuo API TokenPer sostituire il segnaposto YOUR_API_TOKEN negli esempi sopra, devi generare un API token in krea.ai/settings/api-tokens. Segui le istruzioni nella pagina API Keys & Billing se hai bisogno di aiuto.
Esempio di risposta
{
"job_id": "550e8400-e29b-41d4-a716-446655440000",
"status": "queued",
"created_at": "2025-01-15T10:30:00.000Z",
"estimated_time": "60-120 seconds"
}
Passo 3: esegui il polling dei risultati
Esegui il polling di /jobs/{job_id} ogni 5 secondi per verificare l’avanzamento della generazione del video.
// npm install @krea-ai/sdk
import { Krea } from "@krea-ai/sdk";
const krea = new Krea({ apiKey: process.env.KREA_API_KEY });
async function waitForVideo(jobId) {
const completed = await krea.jobs.wait(jobId, { intervalMs: 5000 });
return completed.result.urls[0];
}
const videoUrl = await waitForVideo(job.job_id);
console.log(`Video ready: ${videoUrl}`);
Esempio di risposta completata
{
"job_id": "550e8400-e29b-41d4-a716-446655440000",
"status": "completed",
"created_at": "2025-01-15T10:30:00.000Z",
"completed_at": "2025-01-15T10:31:45.000Z",
"result": {
"urls": ["https://gen.krea.ai/videos/your-video.mp4"]
}
}
Webhook disponibili!Configura i webhook per ricevere notifiche al completamento dei job. Consulta la guida ai webhook per iniziare.
Parametri comuni
Per l’elenco dettagliato dei parametri di tutti i modelli, consulta la pagina Model APIs.
| Parametro | Tipo | Descrizione |
|---|
start_image | string | URL dell’immagine sorgente |
prompt | string | Descrizione del movimento desiderato e del movimento di camera |
duration | number | Durata del video in secondi. I valori supportati dipendono dal modello. |
aspect_ratio | string | Rapporto d’aspetto del video, ad esempio 16:9, 9:16 o 1:1 |
end_image | string | URL opzionale del frame finale per i modelli che lo supportano |
mode | string | Modalità di qualità opzionale per i modelli che la espongono |
Suggerimenti per i prompt di movimento:
- Descrivi i movimenti di camera (pan, zoom, dolly, tilt)
- Specifica direzione e velocità del movimento
- Cita effetti di profondità e parallasse
- Usa un linguaggio di camera misurato per animazioni sottili
- Usa verbi d’azione più forti per effetti drammatici