Naar de inhoud
trending

Handleidingen

FLUX 3 Video via API gebruiken: handleiding met Python-script

Genereer video's met FLUX 3 Video via de API van fal.ai. Inclusief kant-en-klaar Python-script, kostenoverzicht en tips voor prompts en gesproken tekst.

Tekst: 9 min leestijd
FLUX 3 Video via API gebruiken: handleiding met Python-script

👁 117 keer gelezen

FLUX 3 Video heeft geen standaard webapp met een eenvoudig abonnement voor consumenten - Black Forest Labs levert het model via een API. Dat klinkt ingewikkelder dan het is: met een API-sleutel, een paar dollar saldo en een compact script ga je meteen aan de slag. Hieronder bespreken we drie opties (fal.ai, OpenRouter en de BFL-API), delen we een kant-en-klaar Python-script dat we in een schone map hebben getest, en geven we richtlijnen voor prompts. Onze vergelijkingen, tarieven en praktijktests vind je in de gids over FLUX 3 Video.

De bedragen in EUR zijn indicatieve omrekeningen van de gepubliceerde USD-prijzen tegen de ECB-referentiekoers van 2026-10-12: 1 EUR = 1.1181 USD. Dit zijn geen bevestigde lokale eindprijzen inclusief belastingen. De aanbieder en de bank kunnen andere koersen of kosten hanteren. ECB.

Wat heb je nodig?

  • Een account bij fal.ai (of OpenRouter of de BFL-API) en een API-sleutel.
  • Saldo: voor je eerste tests is 4,47 EUR (5 USD) al ruim voldoende. Een concept (draft) van 5 seconden kost bij fal.ai 0,15 USD, een volledige 720p-clip van 5 seconden 0,425 USD.
  • Python 3.9+ met de bibliotheek requests.
  • Geduld: het genereren van een 5-secondenclip duurde bij ons tussen de 37 en 98 seconden.

Aanbieders vergelijken: fal.ai, OpenRouter of BFL

Provider 5 s in 720p Draft-modus Ondersteunde modi Geschikt voor
fal.ai 0,3801 EUR (0,425 USD) ja, 0,0268 EUR (0,03 USD)/s tekst, beeld, keyframes, eerste en laatste frame, verlengen, bewerken het voordeligst, meeste functionaliteit
OpenRouter 0,7602 EUR (0,85 USD) nee tekst, eerste en laatste frame één sleutel voor LLM’s en video
BFL-API 0,7602 EUR (0,85 USD) ja, 0,0537 EUR (0,06 USD)/s alle opties, inclusief QHD en 4K direct bij de bron, maximale controle

Tarieven gecontroleerd op 11 oktober 2026. We genereerden zelf zes clips via OpenRouter en drie via fal.ai; alle details lees je in ons artikel over wat FLUX 3 Video kan. Het onderstaande script maakt gebruik van fal.ai, omdat dit platform het goedkoopst is en een voordelige draft-modus biedt.

Stappenplan: aan de slag met de API

  1. Maak een account aan op fal.ai, waardeer je saldo op onder “Billing” en genereer een sleutel onder “Keys”.
  2. Installeer de benodigde package: pip install requests.
  3. Download het script flux3_wideo.py (de volledige code staat hieronder).
  4. Sla je API-sleutel op in een omgevingsvariabele. In PowerShell: $env:FAL_KEY="jouw_sleutel", in de macOS/Linux-terminal: export FAL_KEY="jouw_sleutel".
  5. Maak een eerste draft: python flux3_wideo.py "beschrijving van de scene" --szkic. Het script toont de geschatte kosten en vraagt om bevestiging.
  6. Bevalt het resultaat? Voer hetzelfde commando uit zonder --szkic om de video in volledige 720p-kwaliteit te genereren, of voeg --rozdz 1080p toe voor 1080p.
  7. Wil je een bestaande foto animeren? Voeg dan --obraz https://voorbeeld.nl/afbeelding.jpg toe. De afbeelding moet publiek toegankelijk zijn via een URL.

Onze praktijktest van het script

We draaiden het script op 11 oktober 2026 in een lege map, in draft-modus, met deze prompt:

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
Onze FLUX 3 Video-draft gegenereerd met het script: 5 s, 1280×704, met audio, 0,1342 EUR (0,15 USD) op fal.ai, klaar na 37 seconden.

Het resultaat: een bestand van 4,8 MB, 5 seconden lang, 1280×704 pixels, inclusief audio, geleverd na 37 seconden. De rood-crème tram rijdt door het beeld, wachtenden met paraplu’s staan bij de halte en winkelverlichting weerspiegelt op de natte kasseien. De tekst PLAC WOLNICA (“Wolnicaplein”) op het haltebordje is in de draft-versie onleesbaar omdat het bord te klein in beeld staat. Wil je tekst scherp in beeld krijgen, beschrijf deze dan expliciet als een prominent onderdeel van het shot, zoals we deden bij een test met een schoolbord.

Het volledige Python-script

Download: flux3_wideo.py (91 regels). Het script leest je sleutel veilig uit de omgevingsvariabele, toont vooraf de kosten, probeert het opnieuw bij een tijdelijke netwerkstoring en slaat de video lokaal op als MP4.

Aanbiedingbij Kinetyra
Synthesia Starter - 12 maanden
87,94 € in plaats van 240,45 € -63%
Bekijk de aanbieding →
"""flux3_wideo.py - video genereren met FLUX 3 Video via fal.ai (helderte.nl, 11.10.2026)

Vereisten: Python 3.9+ en de library requests (pip install requests).
Sleutel: omgevingsvariabele FAL_KEY (fal.ai -> Dashboard -> Keys). Zet je sleutel nooit hardcoded in de code.

Voorbeelden:
  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://domein.nl/afbeelding.jpg --czas 6
  python flux3_wideo.py "..." --czas 10 --rozdz 1080p --proporcje 9:16 --bez-dzwieku

Tarieven (fal.ai op 11.10.2026): 0,085 USD per seconde voor volledige kwaliteit, 0,03 USD per seconde voor draft.
Het script toont vooraf een kostenraming en vraagt akkoord (sla dit over met de vlag --tak).
"""
import argparse, os, sys, time, pathlib
import requests

STAWKA = {'pelna': 0.085, 'szkic': 0.03}  # USD per seconde, fal.ai, 11.10.2026


def main():
    a = argparse.ArgumentParser(description='FLUX 3 Video via fal.ai')
    a.add_argument('prompt', help='prompt in het Engels; gesproken zinnen tussen aanhalingstekens')
    a.add_argument('--obraz', help='URL van startafbeelding (image-to-video)')
    a.add_argument('--czas', type=int, default=5, help='lengte in seconden, 5-20 (standaard 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 of auto')
    a.add_argument('--szkic', action='store_true', help='draft-modus: sneller en goedkoper om ideeen te testen')
    a.add_argument('--bez-dzwieku', action='store_true', help='clip zonder geluidsspoor genereren')
    a.add_argument('--plik', default='', help='naam van uitvoerbestand (standaard flux3_<timestamp>.mp4)')
    a.add_argument('--tak', action='store_true', help='kostenbevestiging overslaan')
    x = a.parse_args()

    klucz = os.environ.get('FAL_KEY')
    if not klucz:
        sys.exit('Omgevingsvariabele FAL_KEY ontbreekt. Stel deze in, bijv. in PowerShell: $env:FAL_KEY="..."')
    if not 5 <= x.czas <= 20:
        sys.exit('Lengte moet tussen de 5 en 20 seconden liggen.')

    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  # draft is altijd in 720p

    koszt = x.czas * STAWKA['szkic' if x.szkic else 'pelna']
    print(f'Model: {endpoint}nDuur: {x.czas} s, geschatte kosten: {koszt:.3f} USD')
    if not x.tak and input('Verzenden? [j/N] ').strip().lower() not in ('j', 'y', 't'):
        sys.exit('Geannuleerd.')

    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'Fout {r.status_code}: {r.text[:400]}')
    zad = r.json()
    print('Taak geaccepteerd, wachten op resultaat...')

    t0 = time.time()
    while True:
        time.sleep(8)
        try:
            s = requests.get(zad['status_url'], headers=H, timeout=60).json()
        except requests.RequestException:
            continue  # tijdelijke netwerkstoring, we blijven pollen
        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'Taak mislukt: {s}')
        if time.time() - t0 > 1800:
            sys.exit('Geen resultaat na 30 minuten. Handmatige controle via URL: ' + 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('Kon resultaat niet downloaden. URL: ' + 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'Klaar in {int(time.time() - t0)} s: {plik.resolve()} ({plik.stat().st_size // 1024} KB)')


if __name__ == '__main__':
    main()

Tips voor betere prompts in FLUX 3 Video

  • Houd de basis in het Engels: schrijf de scenebeschrijving in het Engels. Wil je gesproken tekst of tekst in beeld genereren, zet dat gedeelte dan tussen aanhalingstekens. We testten dit in het Pools met: She says clearly in Polish: "...". Dat leverde in beide tests vlekkeloze Poolse spraak op.
  • Specificeer geluid expliciet: voeg achteraan “Sound:” toe. Let wel op: bij onze packshot van een koffiezetapparaat genereerde het model enkel vogelgeluiden op de achtergrond en geen stoomgeluid. Voor specifieke productgeluiden is nabewerking in een montageprogramma vaak veiliger.
  • Maak tekst prominent: gebruik zinnen zoals “the chalkboard clearly shows exactly two lines of text”. Kleine uithangborden of bordjes op de achtergrond blijven wazig.
  • Beschrijf camerabewegingen kort en bondig: gebruik “The camera slowly dollies forward”, “180-degree orbit at a constant speed” of “static camera”. Een orbit-beweging voerde FLUX 3 bij ons uit zonder dat het object vervormde.
  • Meerdere shots combineren: splits opeenvolgende acties met “Hard cut. Shot 2:” en herhaal daarin de uiterlijke kenmerken van je personage.
  • Negatieve instructies aan het eind: sluit desgewenst af met “no subtitles, no on-screen text, no music”.
  • Stel de beeldverhouding handmatig in bij image-to-video. Bij de stand “auto” sneed het model onze bronfoto van een café deels af.

Overzicht van scriptparameters

Parameter Functie Standaardwaarde
prompt scènebeschrijving (verplicht) -
--obraz URL startafbeelding voor image-to-video geen (text-to-video)
--czas videoduur van 5 tot 20 seconden 5
--rozdz resolutie: 720p of 1080p (draft altijd 720p) 720p
--proporcje 16:9, 9:16, 1:1, 4:3, 3:4, 21:9, 2:1 of auto 16:9
--szkic snelle en voordelige draft (0,0268 EUR (0,03 USD)/s) uitgeschakeld
--bez-dzwieku video zonder geluidsspoor genereren audio ingeschakeld
--plik bestandsnaam voor de MP4 flux3_<timestamp>.mp4
--tak sla de kostenbevestiging over vraagt bevestiging

Wat kost het genereren via API?

Type clip fal.ai OpenRouter / BFL
Draft 5 s 0,1342 EUR (0,15 USD) BFL: 0,30 USD, OpenRouter: geen draft
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 geen data 5,19 EUR (5,80 USD)

Voor gegenereerde audio wordt geen meerprijs gerekend. Onze totale kosten voor alle negen geteste FLUX 3-clips kwamen uit op 6,10 USD.

Veelvoorkomende foutmeldingen oplossen

  • “Omgevingsvariabele FAL_KEY ontbreekt”: je hebt de variabele waarschijnlijk in een ander terminalvenster ingesteld. Zorg dat je de variabele activeert in hetzelfde sessievenster waarin je het script draait.
  • Fout 401 of 403: ongeldige sleutel of onvoldoende rechten. Maak een nieuwe sleutel aan in het dashboard van fal.ai.
  • Foutmelding over saldo: je account heeft geen tegoed meer; waardeer je saldo op onder het tabblad Billing.
  • Startafbeelding laadt niet: de URL moet direct publiek toegankelijk zijn (zonder login) en verwijzen naar een PNG-, JPEG- of WebP-bestand.
  • Verbroken verbinding tijdens het downloaden: dit overkwam ons eenmaal; het script probeert het bestand opnieuw op te halen en toont uiteindelijk de URL van het resultaat. Je hoeft dus niet opnieuw te betalen om de video handmatig op te halen.

Veelgestelde vragen

Kan ik FLUX 3 Video gebruiken zonder code te schrijven?

Ja, via de online playgrounds van de aanbieders. Zowel op de modelpagina van fal.ai als in de webinterface van OpenRouter kun je prompts invoeren via een formulier. Ons script is vooral handig wanneer je meerdere clips geautomatiseerd wilt aanmaken en direct lokaal wilt opslaan.

Hoe maak ik een video die langer is dan 20 seconden?

Door clips te verlengen. fal.ai biedt hiervoor de modus extend-video, waarmee het einde van een eerdere clip als basis dient om er nog eens 5 tot 15 seconden aan vast te plakken. Bij BFL kost deze verlengingsoptie 0,3667 EUR (0,41 USD) per seconde in 720p.

Mag ik de gegenereerde videoclips commercieel inzetten?

De commerciële voorwaarden worden bepaald door BFL en de tussenpartij (de API-host) via wie je genereert. Raadpleeg voor commerciële producties of advertenties altijd de actuele licentievoorwaarden van het betreffende API-platform.

Meer video’s en promptvoorbeelden vind je in ons overzicht over de mogelijkheden van FLUX 3 Video. Benieuwd naar de concurrentie? Bekijk onze vergelijking FLUX 3 vs Wan 3.0 vs Seedance 2.5 en het overzicht van actuele AI-videogeneratoren.

Google · Jouw bronnenHoger in Google - met één klikToevoegen aan voorkeursbronnen →

Bronnen en verificatiedatum

// read next

More on this from HELDER

Helder

Helder

ADMINISTRATOR
lees ookFreepik AI Advanced Inpaint: productfoto’s bewerken zonder PhotoshophandleidingenFreepik AI Advanced Inpaint: productfoto’s bewerken zonder PhotoshopMet Freepik AI Advanced Inpaint verwijder je storende achtergronden en pas je belichting aan zonder Photoshop. Bekijk hoe deze workflow werkt.

Meest gelezen

  1. 1Anthropics biolab ontdekt nieuw enzym via bijna 950 Claude-agents
  2. 2Meta onthult sleutelhanger-apparaatje met AI-assistent Muse
  3. 3OpenAI richt wiskundeadviesgroep op na oplossen van meer dan 100 open problemen
// sitemap

Deze pagina in andere talen6

helder in cijfers 0teksten in archief0nieuwsberichten van de afgelopen 7 dagen0videomodellen in observatorium
× ‹ vergroting ›