HiAPI
Blog

Guida all'uso

Kling 3.0 Turbo image-to-video: crea video brevi con l'API hiapi

Aug 6, 2026
Kling 3.0 Turbo image-to-video: crea video brevi con l'API hiapi

Basta una singola foto statica e una chiamata API per generare su hiapi un video breve che invoglia a fermarsi a guardare, usando Kling 3.0 Turbo image-to-video. Niente editor di timeline, niente rigging dei movimenti, niente green screen: invii un'immagine del primo fotogramma e un breve prompt di movimento e dopo pochi minuti ricevi un .mp4 da 8, 10 o 15 secondi. Questo tutorial realizza un video end-to-end con l'API reale /v1/tasks, mostra il dettaglio dei costi effettivi e trasforma lo stesso codice in un ciclo che può puntare a un'intera cartella di immagini statiche, producendo in batch video adatti a TikTok o Reels.

Ecco il video generato in questo articolo a partire da una singola foto del primo fotogramma:

Cosa richiede davvero Kling 3.0 Turbo image-to-video

Lo schema di input del modello è essenziale, e questo è il punto: non devi pensare a setup di camera o keyframe, bastano due campi obbligatori e due opzionali:

  • prompt (stringa, obbligatorio) — descrive il movimento che vuoi, non l'intera scena. Il primo fotogramma definisce già la scena; il prompt dice al modello cosa deve muoversi.
  • image_urls (array, obbligatorio) — un URL pubblico che punta all'immagine del primo fotogramma (JPEG o PNG, massimo 10MB). È l'unica immagine accettata dal modello; qui non esiste una modalità con più immagini di riferimento.
  • duration (intero, opzionale, predefinito 5) — durata del video in secondi, da 3 a 15.
  • resolution (stringa, opzionale, predefinito 720p) — 720p o 1080p.

Un punto da pianificare in anticipo: non esiste il parametro aspect_ratio. Il fotogramma di output eredita sempre la composizione dell'immagine di input — un primo fotogramma 9:16 produce un video 9:16, senza possibilità di override. Se crei contenuti per TikTok o Reels, genera (o ritaglia) il primo fotogramma in 9:16 prima di chiamare l'endpoint video, altrimenti dovrai rieseguire una generazione da $0.65 a $1.60 solo per correggere la composizione. Il riferimento completo dei parametri e il pannello di prova online sono sulla pagina del modello.

Passo 1: parti da un buon primo fotogramma

Prima di generare qualsiasi cosa nuova, controlla se hai già immagini statiche utilizzabili — foto di prodotto, immagini generate in precedenza dall'AI, fotografia di branding. Poiché Kling 3.0 Turbo image-to-video legge solo il primo fotogramma per definire l'intera scena, riutilizzare immagini esistenti non comporta costi aggiuntivi nello step video; paghi solo i secondi di movimento generati.

Se non ne hai, generare il primo fotogramma è una normale chiamata di text-to-image. Il primo fotogramma di questo articolo proviene da gpt-image-2/text-to-image, composto in verticale fin dall'inizio, così il video eredita il rapporto d'aspetto corretto:

import requests

resp = requests.post(
    "https://api.hiapi.ai/v1/tasks",
    headers={"Authorization": f"Bearer {HIAPI_API_KEY}"},
    json={
        "model": "gpt-image-2/text-to-image",
        "input": {
            "prompt": (
                "Vertical smartphone-shot photo of a barista in a small specialty "
                "coffee shop pouring steaming latte art into a white ceramic to-go "
                "cup, warm golden morning light streaming through a large window "
                "behind her, steam curling upward, shallow depth of field, cozy "
                "minimalist cafe aesthetic, natural candid framing typical of a "
                "TikTok food video, photorealistic, high detail, 9:16 vertical composition"
            ),
            "aspect_ratio": "9:16",
            "resolution": "1K",
        },
    },
)
task_id = resp.json()["data"]["taskId"]

Questo è esattamente il primo fotogramma usato qui sotto, generato una volta e poi dato in input allo step video:

Passo 2: trasforma l'immagine statica in video

Ogni modello su hiapi segue lo stesso schema di task asincrono: POST per creare il task, polling con GET finché non è completato, poi download dell'output prima che il link temporaneo scada. Per l'image-to-video l'unica differenza è il payload di input:

curl -s -X POST https://api.hiapi.ai/v1/tasks \
  -H "Authorization: Bearer $HIAPI_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "kling-3.0-turbo/image-to-video",
    "input": {
      "prompt": "The barista continues pouring steamed milk in a slow spiral, latte art rosetta blooming across the surface of the coffee, steam swirling upward and catching the warm morning light, her hand moves the pitcher in a smooth steady motion, camera holds a subtle slow push-in, natural handheld micro-movement, shallow depth of field, cozy cafe ambience, smooth natural motion, stable cinematic camera movement",
      "image_urls": ["https://static.hiapi.ai/blog/kling-3-0-turbo-image-to-video-short-form-video/first-frame.jpg"],
      "duration": 8,
      "resolution": "1080p"
    }
  }'

Poi esegui il polling per il risultato:

import time, requests

def wait_task(task_id, token, timeout_s=600, poll_interval=5):
    deadline = time.time() + timeout_s
    while time.time() < deadline:
        r = requests.get(
            f"https://api.hiapi.ai/v1/tasks/{task_id}",
            headers={"Authorization": f"Bearer {token}"},
        ).json()
        task = r.get("data") or {}
        if task.get("status") == "success":
            return task
        if task.get("status") == "fail":
            raise RuntimeError(task.get("error"))
        time.sleep(poll_interval)
    raise TimeoutError(task_id)

task = wait_task(task_id, HIAPI_API_KEY)
video_url = task["output"][0]["url"]  # temporary link — download it immediately

Il video 8 secondi in 1080p incorporato sopra proviene direttamente da questa chiamata: dal submit al .mp4 scaricabile sono serviti circa due minuti e mezzo — senza editing manuale, senza post-produzione.

Costi effettivi

Kling 3.0 Turbo image-to-video si fattura al secondo, con prezzi differenziati per risoluzione (confermati ad agosto 2026 in base al listino di hiapi):

Risoluzione Prezzo al secondo Video 5 secondi Video 8 secondi Video 15 secondi
720p $0.13/secondo $0.65 $1.04 $1.95
1080p $0.16/secondo $0.80 $1.28 $2.40

Il video principale dell'articolo — 8 secondi in 1080p — è costato $1.28. Se fai test di prompt o iterazioni sul movimento prima del render finale, usa il 720p per queste prove e passa a "resolution": "1080p" solo dopo che il movimento è come lo vuoi; solo questo riduce il costo delle iterazioni di circa il 20%.

Elaborazione batch: da un singolo video a un calendario editoriale

Poiché non esiste un endpoint "batch" separato — è sempre la stessa chiamata task, ripetuta in un ciclo — trasformarla in una pipeline di contenuti brevi è soprattutto una questione di registrazione dei dati:

clips = [
    {"image_url": "https://your-bucket/product-a.jpg", "prompt": "..."},
    {"image_url": "https://your-bucket/product-b.jpg", "prompt": "..."},
    {"image_url": "https://your-bucket/product-c.jpg", "prompt": "..."},
]

results = []
for clip in clips:
    resp = requests.post(
        "https://api.hiapi.ai/v1/tasks",
        headers={"Authorization": f"Bearer {HIAPI_API_KEY}"},
        json={
            "model": "kling-3.0-turbo/image-to-video",
            "input": {
                "prompt": clip["prompt"],
                "image_urls": [clip["image_url"]],
                "duration": 8,
                "resolution": "1080p",
            },
        },
    )
    task_id = resp.json()["data"]["taskId"]
    results.append(wait_task(task_id, HIAPI_API_KEY))

Esegui questo codice di notte su una cartella di foto di prodotto, ritratti o fotografia di scena e al risveglio avrai una serie di video pronti da pubblicare — il costo di ciascuno è esattamente quello della tabella sopra, senza voci di spesa impreviste. Se preferisci partire da una descrizione testuale invece che da una foto esistente, la guida gemella Kling 3.0 Turbo text-to-video illustra quella modalità usando la stessa API dei task.

Domande frequenti

Quanto tempo impiega Kling 3.0 Turbo image-to-video a renderizzare? In questo test, un video 8 secondi in 1080p ha impiegato circa due minuti e mezzo dal submit del task al file scaricabile. I video più brevi in 720p di solito si completano più rapidamente.

Posso ottenere un output verticale 9:16? Sì, ma in modo indiretto — questo modello non ha il parametro aspect_ratio. L'output corrisponde sempre al rapporto d'aspetto dell'immagine di input, quindi prima di inviare il task video genera o ritaglia il primo fotogramma in 9:16.

Quali formati di immagine sono supportati per il primo fotogramma? JPEG o PNG, massimo 10MB, forniti come URL pubblici nell'array image_urls. L'array di questo modello accetta una sola immagine.

Quanto costa un video 8 secondi in 1080p? $1.28, calcolato sulla tariffa confermata di $0.16 al secondo per il 1080p. Lo stesso video in 720p costa $1.04.

Il prompt supporta dialoghi o lip-sync? Sì — il campo prompt (fino a 2.500 caratteri) supporta dialoghi citati, che il modello può usare per animare in lip-sync il soggetto che parla nel primo fotogramma.

Provalo tu stesso

Tutto quanto sopra è stato eseguito con l'endpoint reale /v1/tasks e una chiave reale — nessuna risposta simulata, nessuna risorsa segnaposto. Se hai una libreria di immagini inutilizzata, il modo più rapido per vedere la qualità del movimento del modello sui tuoi soggetti è provare un video: vai alla pagina del modello Kling 3.0 Turbo image-to-video, inserisci un'immagine del primo fotogramma e ottieni il primo risultato in pochi minuti.

Inizia a creare con artefatti IA persistenti

Ottieni la tua chiave API e chiama modelli di immagini, video e audio tramite un'unica API basata sui task.

Leggi la documentazione API