Come creare video con FLUX 3 Video via API: guida e script
Guida pratica a FLUX 3 Video via API: configurazione di fal.ai, script Python pronto, modalita bozza a 0,03 USD/s e consigli per i prompt.

👁 112 letture
FLUX 3 Video non ha un’applicazione con piani in abbonamento per l’utente comune: Black Forest Labs lo distribuisce esclusivamente via API. Puo sembrare complicato, ma bastano una chiave API, pochi dollari sul conto e un singolo script. Qui sotto ti presentiamo tre opzioni (fal.ai, OpenRouter, API BFL), uno script Python pronto all’uso che abbiamo verificato in una cartella vuota e le regole per scrivere i prompt, con cui abbiamo testato sia la resa del parlato sia il rendering di testi a schermo. Classifica, prezzi e tutti i test sono raccolti nella nostra guida a FLUX 3 Video.
Gli importi in EUR sono conversioni indicative dei prezzi pubblicati in USD, calcolate al cambio di riferimento BCE del 2026-10-12: 1 EUR = 1.1181 USD. Non sono prezzi locali confermati né importi finali comprensivi di imposte. Il fornitore e la banca possono applicare altri cambi o commissioni. ECB.
Cosa ti serve
- Un account su fal.ai (oppure OpenRouter o API BFL) e una chiave API.
- Credito: per le prime prove bastano 5 USD. Una bozza di 5 s costa su fal.ai 0,15 USD, mentre una clip completa di 5 s a 720p costa 0,425 USD.
- Python 3.9+ con la libreria
requests. - Tempo: nei nostri test una clip da 5 secondi ha richiesto tra 37 e 98 secondi di elaborazione.
fal.ai, OpenRouter o BFL: quale provider scegliere
| Provider | 5 s a 720p | Bozza | Modalita | A chi si rivolge |
|---|---|---|---|---|
| fal.ai | 0,3801 EUR (0,425 USD) | si, 0,0268 EUR (0,03 USD)/s | testo, immagine, keyframe, primo e ultimo frame, estensione, editing | piu economico, massima varieta di modalita |
| OpenRouter | 0,7602 EUR (0,85 USD) | no | testo, primo e ultimo frame | una sola chiave per LLM e video |
| API BFL | 0,7602 EUR (0,85 USD) | si, 0,0537 EUR (0,06 USD)/s | tutte, comprese QHD e 4K | la fonte diretta, funzionalita complete |
Tariffe rilevate l’11 ottobre 2026. Abbiamo realizzato 6 clip tramite OpenRouter e 3 tramite fal.ai: trovi i risultati nell’approfondimento Cosa sa fare FLUX 3 Video. Lo script qui sotto si appoggia a fal.ai perche offre i costi piu bassi e include la modalita bozza.
Come usare FLUX 3 Video via API passo dopo passo
- Crea un account su fal.ai, aggiungi fondi nella sezione “Billing” e genera una chiave nella sezione “Keys”.
- Installa la libreria necessaria:
pip install requests. - Scarica lo script flux3_wideo.py (il codice completo e riportato piu sotto).
- Imposta la chiave nella variabile d’ambiente. In PowerShell:
$env:FAL_KEY="tua_chiave", nel terminale macOS/Linux:export FAL_KEY="tua_chiave". - Genera una bozza rapida:
python flux3_wideo.py "descrizione della scena" --szkic. Lo script mostrera il costo stimato e chiedera conferma prima di procedere. - Se la bozza ti convince, esegui lo stesso comando senza
--szkic: otterrai la clip a piena risoluzione a 720p oppure, specificando--rozdz 1080p, a 1080p. - Per animare un’immagine statica, aggiungi
--obraz https://indirizzo/immagine.jpg. Il file deve essere accessibile pubblicamente tramite URL.
Il nostro test con lo script
Abbiamo eseguito lo script l’11 ottobre in una cartella vuota, in modalita bozza, con questo comando:
python flux3_wideo.py "A red and cream tram passes along a rainy Krakow street at dusk, reflections of shop lights on the wet cobblestones, people with umbrellas wait at the stop. A sign on the tram stop reads "PLAC WOLNICA". Static camera, realistic. Sound: rain, tram bell, wheels on rails." --szkic --plik tramwaj_szkic.mp4 --tak
Risultato: un file da 4,8 MB, durata 5 secondi, risoluzione 1280×704, con traccia audio, pronto dopo 37 secondi. Un tram rosso e crema attraversa l’inquadratura, le persone con gli ombrelli aspettano alla fermata e le luci dei negozi si riflettono sul selciato bagnato. La scritta sul cartello „PLAC WOLNICA” (Piazza Wolnica) nella bozza non e leggibile: le dimensioni sono troppo ridotte. Se vuoi che un testo sia chiaro, descrivilo come elemento centrale e grande dell’inquadratura, come abbiamo fatto nella nostra prova con la lavagna scolastica.
Script Python pronto all’uso
Download: flux3_wideo.py (91 righe). Recupera la chiave solo dalla variabile d’ambiente, calcola la spesa stimata prima dell’invio, gestisce eventuali interruzioni temporanee di rete tramite retry e salva il risultato finale come file MP4.
"""flux3_wideo.py - video con FLUX 3 Video tramite fal.ai (nitidezza.it, 11.10.2026)
Requisiti: Python 3.9+ e libreria requests (pip install requests).
Chiave API: variabile d'ambiente FAL_KEY (fal.ai -> Dashboard -> Keys). Non inserire la chiave nel codice.
Esempi:
python flux3_wideo.py "A red tram passes through a rainy Krakow street at dusk" --szkic
python flux3_wideo.py "The camera slowly dollies forward..." --obraz https://indirizzo/immagine.jpg --czas 6
python flux3_wideo.py "..." --czas 10 --rozdz 1080p --proporcje 9:16 --bez-dzwieku
Costo (listino fal.ai dell'11.10.2026): 0,085 USD al secondo per la qualita completa, 0,03 USD al secondo per la bozza.
Lo script calcola la stima e chiede conferma prima dell'invio (salta la domanda con il parametro --tak).
"""
import argparse, os, sys, time, pathlib
import requests
STAWKA = {'pelna': 0.085, 'szkic': 0.03} # USD al secondo, fal.ai, 11.10.2026
def main():
a = argparse.ArgumentParser(description='FLUX 3 Video tramite fal.ai')
a.add_argument('prompt', help='descrizione in inglese; battute parlate o testi tra virgolette')
a.add_argument('--obraz', help="URL dell'immagine di partenza (image-to-video)")
a.add_argument('--czas', type=int, default=5, help='durata in secondi, da 5 a 20 (predefinito: 5)')
a.add_argument('--rozdz', default='720p', choices=['720p', '1080p'])
a.add_argument('--proporcje', default='16:9', help='16:9, 9:16, 1:1, 4:3, 3:4, 21:9, 2:1 oppure auto')
a.add_argument('--szkic', action='store_true', help='modalita bozza: piu rapida ed economica, per testare le idee')
a.add_argument('--bez-dzwieku', action='store_true')
a.add_argument('--plik', default='', help='nome del file finale (predefinito: flux3_<timestamp>.mp4)')
a.add_argument('--tak', action='store_true', help='non chiedere conferma del costo')
x = a.parse_args()
klucz = os.environ.get('FAL_KEY')
if not klucz:
sys.exit('Variabile FAL_KEY mancante. Impostala, ad es. in PowerShell: $env:FAL_KEY="..."')
if not 5 <= x.czas <= 20:
sys.exit('La durata deve essere compresa tra 5 e 20 secondi.')
tryb = 'image-to-video' if x.obraz else 'text-to-video'
endpoint = f'blackforestlabs/flux-3/{tryb}' + ('/draft' if x.szkic else '')
body = {'prompt': x.prompt, 'duration': x.czas, 'aspect_ratio': x.proporcje, 'generate_audio': not x.bez_dzwieku}
if x.obraz:
body['image_url'] = x.obraz
if not x.szkic:
body['resolution'] = x.rozdz # la bozza e sempre a 720p
koszt = x.czas * STAWKA['szkic' if x.szkic else 'pelna']
print(f'Modello: {endpoint}nDurata: {x.czas} s, costo stimato: {koszt:.3f} USD')
if not x.tak and input('Inviare la richiesta? [s/N] ').strip().lower() != 's':
sys.exit('Operazione annullata.')
H = {'Authorization': 'Key ' + klucz, 'Content-Type': 'application/json'}
r = requests.post('https://queue.fal.run/' + endpoint, headers=H, json=body, timeout=120)
if r.status_code >= 300:
sys.exit(f'Errore {r.status_code}: {r.text[:400]}')
zad = r.json()
print('Richiesta accettata, in attesa del risultato...')
t0 = time.time()
while True:
time.sleep(8)
try:
s = requests.get(zad['status_url'], headers=H, timeout=60).json()
except requests.RequestException:
continue # problema di rete temporaneo: riprova
stan = s.get('status')
print(f' {int(time.time() - t0)} s: {stan}')
if stan == 'COMPLETED':
break
if stan not in ('IN_QUEUE', 'IN_PROGRESS'):
sys.exit(f'Generazione fallita: {s}')
if time.time() - t0 > 1800:
sys.exit('Nessun risultato dopo 30 minuti. Indirizzo per verifica manuale: ' + zad['response_url'])
for _ in range(6):
try:
wynik = requests.get(zad['response_url'], headers=H, timeout=90).json()
break
except requests.RequestException:
time.sleep(10)
else:
sys.exit('Impossibile scaricare il risultato. Indirizzo: ' + zad['response_url'])
url = wynik['video']['url']
plik = pathlib.Path(x.plik or f'flux3_{int(time.time())}.mp4')
plik.write_bytes(requests.get(url, timeout=300).content)
print(f'Completato in {int(time.time() - t0)} s: {plik.resolve()} ({plik.stat().st_size // 1024} KB)')
if __name__ == '__main__':
main()
Come scrivere i prompt per FLUX 3 Video
- Scrivi in inglese e limita la lingua specifica solo alle battute parlate o alle scritte su schermo. Noi abbiamo testato il parlato in polacco usando la struttura:
She says clearly in Polish: "...", ottenendo in entrambi i casi una pronuncia perfetta. - Descrivi il sonoro separatamente dopo la parola chiave “Sound:”. Attenzione: nel nostro packshot per una macchina da caffe il modello ha generato solo cinguettii di sottofondo, omettendo il sibilo della macchina. Spesso e piu sicuro aggiungere i rumori specifici del prodotto in post-produzione.
- Fai in modo che le scritte siano visibili ed evidenti (“the chalkboard clearly shows exactly two lines of text”). I piccoli cartelli sullo sfondo sono risultati del tutto illeggibili.
- Imposta i movimenti di camera in una frase concisa: “The camera slowly dollies forward”, “180-degree orbit at a constant speed”, “static camera”. La rotazione orbitale e stata generata da FLUX 3 senza alcuna deformazione del soggetto.
- Separa inquadrature multiple con i termini “Hard cut. Shot 2:” e ribadisci l’aspetto dei personaggi in ogni stacco.
- Aggiungi le esclusioni in coda: “no subtitles, no on-screen text, no music”, se vuoi evitare elementi indesiderati.
- Configura le proporzioni manualmente se carichi un’immagine di partenza: con l’opzione “auto” il sistema ha tagliato i bordi della nostra foto di una caffetteria.
Parametri dello script
| Parametro | Funzione | Predefinito |
|---|---|---|
prompt |
descrizione della scena (obbligatorio) | - |
--obraz URL |
immagine iniziale: passa alla modalita image-to-video | nessuna (text-to-video) |
--czas |
durata tra 5 e 20 secondi | 5 |
--rozdz |
risoluzione: 720p o 1080p (la bozza e sempre 720p) | 720p |
--proporcje |
16:9, 9:16, 1:1, 4:3, 3:4, 21:9, 2:1, auto | 16:9 |
--szkic |
anteprima veloce a basso costo (0,0268 EUR (0,03 USD)/s) | disattivato |
--bez-dzwieku |
genera una clip priva di traccia audio | audio attivo |
--plik |
nome del file MP4 generato | flux3_<timestamp>.mp4 |
--tak |
ignora la conferma manuale del costo | richiede conferma |
Quanto costa generare video con FLUX 3
| Clip | fal.ai | OpenRouter / BFL |
|---|---|---|
| Bozza 5 s | 0,1342 EUR (0,15 USD) | BFL 0,30 USD, OpenRouter bozza non disponibile |
| 5 s, 720p | 0,3801 EUR (0,425 USD) | 0,7602 EUR (0,85 USD) |
| 10 s, 720p | 0,7602 EUR (0,85 USD) | 1,52 EUR (1,70 USD) |
| 20 s, 720p | 1,52 EUR (1,70 USD) | 3,04 EUR (3,40 USD) |
| 20 s, 1080p | dati non disponibili | 5,19 EUR (5,80 USD) |
La traccia audio non comporta costi extra. Per generare tutte le 9 clip dei nostri test con FLUX 3 abbiamo speso complessivamente 6,10 USD.
Errori frequenti e soluzioni
- “Variabile FAL_KEY mancante”: la variabile d’ambiente e stata impostata in un’altra sessione del terminale. Configurala nella stessa finestra in cui lanci lo script.
- Errore 401 o 403: la chiave e errata o non dispone delle autorizzazioni necessarie. Generane una nuova nella dashboard di fal.ai.
- Errore di credito insufficiente: il credito e esaurito; ricarica il saldo nella sezione Billing del provider.
- L’immagine iniziale non si carica: il file deve trovarsi a un URL pubblico accessibile senza autenticazione e in formato PNG, JPEG o WebP.
- Connessione interrotta durante il salvataggio: ci e capitato una volta; lo script ritenta il download e, qualora fallisca, stampa a schermo l’URL diretto del video per permetterti di scaricarlo a mano senza pagare una seconda volta.
Domande frequenti
Si puo utilizzare FLUX 3 Video senza scrivere codice?
Si, puoi sfruttare i playground web messi a disposizione dai fornitori: sia nella pagina dedicata su fal.ai sia nell’interfaccia chat di OpenRouter e presente un modulo in cui inserire il prompt. Lo script e la soluzione ideale se intendi elaborare molte clip in sequenza o salvarle automaticamente.
Come generare video piu lunghi di 20 secondi?
Tramite l’estensione temporale: su fal.ai puoi sfruttare l’endpoint extend-video, che riprende i frame finali della sequenza precedente per generare altri 5-15 secondi. Con l’API BFL questa operazione ha un costo di 0,3667 EUR (0,41 USD) al secondo a 720p.
I video generati possono essere usati a scopi commerciali?
Le condizioni dipendono dai termini di licenza stabiliti da BFL e dal provider utilizzato per l’elaborazione. Prima di impiegare le clip in ambito commerciale o pubblicitario, consulta i relativi termini d’uso dell’API scelta.
Per ulteriori spunti con i prompt completi: Cosa sa fare FLUX 3 Video. Per un confronto diretto con i concorrenti: FLUX 3 vs Wan 3.0 vs Seedance 2.5. Panoramica del settore: generatori video AI.
Fonti e data di verifica
- fal.ai: FLUX 3 text-to-video (documentazione parametri e prezzi)
- OpenRouter: FLUX.3 Video
- listino API BFL
- BFL: FLUX 3 Video (4.08.2026). Script testato l’11 ottobre 2026 in una cartella vuota (Windows 11
- Python 3.13
- modalita bozza
- costo 0,1342 EUR (0,15 USD))
More on this from NITIDO
guide·Freepik AI Advanced Inpaint: ritocco prodotti senza PhotoshopFreepik AI Advanced Inpaint permette di rimuovere sfondi, regolare le luci e ritoccare foto di prodotto direttamente dal browser, senza usare Photoshop.

