✨ Świeża dostawa•nowe kody na kinetyka.pl: Gemini Pro 18 mies. 170 zł•Cursor, ElevenLabs, Lovable i więcej, roczne plany AI w ułamku ceny Zobacz →
Przejdź do treści
Artykuły

Jak zrobić film w FLUX 3 Video przez API: poradnik z gotowym skryptem

Trzy drogi do FLUX 3 Video, sprawdzony skrypt do pobrania, parametry, koszty i zasady pisania poleceń, żeby model mówił po polsku.

8 min czytania
Logo Black Forest Labs i napis FLUX 3 Video - film przez API, poradnik i skrypt

👁 123 przeczytań

FLUX 3 Video nie ma aplikacji z cennikiem dla zwykłego użytkownika - Black Forest Labs sprzedaje go przez API. Brzmi groźnie, ale wystarczy klucz, kilka dolarów na koncie i jeden skrypt. Poniżej pokazuję trzy drogi (fal.ai, OpenRouter, API BFL), gotowy skrypt w Pythonie, który sprawdziłem na czystym folderze, i zasady pisania poleceń, dzięki którym FLUX 3 mówi po polsku i pisze polskie litery. Ranking, ceny i moje testy są w przewodniku FLUX 3 Video.

Co będzie potrzebne

  • Konto na fal.ai (albo OpenRouterze lub w API BFL) i klucz API.
  • Saldo: na pierwsze próby wystarczy 5 USD. Szkic 5 s kosztuje na fal.ai 0,15 USD, pełny klip 5 s w 720p 0,425 USD.
  • Python 3.9+ z biblioteką requests.
  • Czas: 5-sekundowy klip liczył się u mnie od 37 do 98 sekund.

Która droga: fal.ai, OpenRouter czy BFL

Dostawca5 s w 720pSzkicTrybyDla kogo
fal.ai0,425 USDtak, 0,03 USD/stekst, obraz, klatki kluczowe, pierwsza i ostatnia klatka, przedłużanie, edycjanajtaniej, najwięcej trybów
OpenRouter0,85 USDnietekst, pierwsza i ostatnia klatkajeden klucz do LLM i wideo
API BFL0,85 USDtak, 0,06 USD/swszystkie, także QHD i 4Kźródło, pełne możliwości

Stawki z 11 października 2026. Ja zrobiłem 6 klipów przez OpenRouter i 3 przez fal.ai - wyniki są w tekście Co potrafi FLUX 3 Video. Skrypt poniżej korzysta z fal.ai, bo tam jest najtaniej i jest tryb szkicu.

Krok po kroku

  1. Załóż konto na fal.ai, w panelu „Billing” doładuj saldo, a w „Keys” utwórz klucz.
  2. Zainstaluj bibliotekę: pip install requests.
  3. Pobierz skrypt flux3_wideo.py (pełny kod niżej).
  4. Ustaw klucz w zmiennej środowiskowej. W PowerShell: $env:FAL_KEY="twój_klucz", w terminalu macOS/Linux: export FAL_KEY="twój_klucz".
  5. Zrób szkic: python flux3_wideo.py "opis sceny" --szkic. Skrypt pokaże szacunkowy koszt i zapyta o zgodę.
  6. Gdy szkic jest dobry, uruchom to samo polecenie bez --szkic - dostaniesz pełną jakość w 720p albo, z --rozdz 1080p, w 1080p.
  7. Żeby ożywić zdjęcie, dodaj --obraz https://adres/zdjecia.jpg. Obraz musi być dostępny pod publicznym adresem.

Mój test skryptu

Skrypt uruchomiłem 11 października w pustym folderze, w trybie szkicu, z tym poleceniem:

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
Mój szkic FLUX 3 Video ze skryptu: 5 s, 1280×704, z dźwiękiem, 0,15 USD na fal.ai, gotowy po 37 sekundach.

Wynik: plik 4,8 MB, 5 sekund, 1280×704, z dźwiękiem, po 37 sekundach. Tramwaj w czerwono-kremowych barwach przejeżdża przez kadr, ludzie z parasolami czekają na przystanku, światła sklepów odbijają się w mokrym bruku. Napisu „PLAC WOLNICA” w szkicu nie da się przeczytać - tabliczka jest za mała. Gdy napis ma być czytelny, opisz go jako duży element kadru, jak w moim teście z tablicą szkolną.

Gotowy skrypt

Pobierz: flux3_wideo.py (91 linii). Klucz czyta tylko ze zmiennej środowiskowej, przed wysłaniem pokazuje koszt, przy chwilowym braku sieci ponawia zapytania, a wynik zapisuje jako MP4.

"""flux3_wideo.py - film z FLUX 3 Video przez fal.ai (promptowy.com, 11.10.2026)

Wymaga: Python 3.9+ i biblioteki requests (pip install requests).
Klucz: zmienna środowiskowa FAL_KEY (fal.ai -> Dashboard -> Keys). Klucza nie wpisuj w kod.

Przykłady:
  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://adres/obraz.jpg --czas 6
  python flux3_wideo.py "..." --czas 10 --rozdz 1080p --proporcje 9:16 --bez-dzwieku

Koszt (cennik fal.ai z 11.10.2026): 0,085 USD za sekundę pełnej jakości, 0,03 USD za sekundę szkicu.
Skrypt przed wysłaniem pokazuje szacunek i pyta o zgodę (pomiń pytanie flagą --tak).
"""
import argparse, os, sys, time, pathlib
import requests

STAWKA = {'pelna': 0.085, 'szkic': 0.03}  # USD za sekundę, fal.ai, 11.10.2026


def main():
    a = argparse.ArgumentParser(description='FLUX 3 Video przez fal.ai')
    a.add_argument('prompt', help='polecenie po angielsku; kwestie po polsku w cudzysłowie')
    a.add_argument('--obraz', help='adres URL obrazu startowego (obraz na wideo)')
    a.add_argument('--czas', type=int, default=5, help='długość w sekundach, 5-20 (domyślnie 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 albo auto')
    a.add_argument('--szkic', action='store_true', help='tryb szkicu: szybciej i taniej, do przeglądania pomysłów')
    a.add_argument('--bez-dzwieku', action='store_true')
    a.add_argument('--plik', default='', help='nazwa pliku wynikowego (domyślnie flux3_<czas>.mp4)')
    a.add_argument('--tak', action='store_true', help='nie pytaj o potwierdzenie kosztu')
    x = a.parse_args()

    klucz = os.environ.get('FAL_KEY')
    if not klucz:
        sys.exit('Brak zmiennej FAL_KEY. Ustaw ją, np. w PowerShell: $env:FAL_KEY="..."')
    if not 5 <= x.czas <= 20:
        sys.exit('Długość musi mieć od 5 do 20 sekund.')

    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  # szkic jest zawsze w 720p

    koszt = x.czas * STAWKA['szkic' if x.szkic else 'pelna']
    print(f'Model: {endpoint}\nDługość: {x.czas} s, szacunkowy koszt: {koszt:.3f} USD')
    if not x.tak and input('Wysłać? [t/N] ').strip().lower() != 't':
        sys.exit('Przerwane.')

    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'Błąd {r.status_code}: {r.text[:400]}')
    zad = r.json()
    print('Zadanie przyjęte, czekam na wynik...')

    t0 = time.time()
    while True:
        time.sleep(8)
        try:
            s = requests.get(zad['status_url'], headers=H, timeout=60).json()
        except requests.RequestException:
            continue  # chwilowy problem z siecią - pytamy dalej
        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'Zadanie się nie udało: {s}')
        if time.time() - t0 > 1800:
            sys.exit('Brak wyniku po 30 minutach. Adres do ręcznego sprawdzenia: ' + 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('Nie udało się pobrać wyniku. Adres: ' + 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'Gotowe w {int(time.time() - t0)} s: {plik.resolve()} ({plik.stat().st_size // 1024} KB)')


if __name__ == '__main__':
    main()

Jak pisać polecenia do FLUX 3 Video

Mam to spisane w całości

Zebrałem te rzeczy w ebookach, które możesz pobrać za darmo - bez zapisu na listę, bez haczyka.

Pobierz ebooki

  • Pisz po angielsku, a po polsku tylko to, co ma paść z ust albo pojawić się w napisie. Wzór: She says clearly in Polish: "...". Tak powstały oba moje klipy z bezbłędną polską mową.
  • Opisz dźwięk osobno po słowie „Sound:”. Uwaga: w moim packshocie ekspresu model dał tylko ptaki w tle, bez syku urządzenia. Dźwięk produktu bywa bezpieczniej dołożyć w montażu.
  • Napis rób dużym elementem kadru („the chalkboard clearly shows exactly two lines of text”). Mała tabliczka w tle wyszła nieczytelna.
  • Kamera jednym zdaniem: „The camera slowly dollies forward”, „180-degree orbit at a constant speed”, „static camera”. Orbitę FLUX 3 zrobił mi bez deformacji obiektu.
  • Kilka ujęć rozdzielaj słowami „Hard cut. Shot 2:” i powtarzaj wygląd postaci w każdym ujęciu.
  • Na końcu zakazy: „no subtitles, no on-screen text, no music”, jeśli ich nie chcesz.
  • Proporcje ustaw ręcznie przy obrazie startowym. Przy „auto” model przyciął mi zdjęcie kawiarni.

Parametry skryptu

ParametrCo robiDomyślnie
promptopis sceny (wymagany)-
--obraz URLobraz startowy - tryb obraz na wideobrak (tekst na wideo)
--czasdługość 5-20 s5
--rozdz720p albo 1080p (w szkicu zawsze 720p)720p
--proporcje16:9, 9:16, 1:1, 4:3, 3:4, 21:9, 2:1, auto16:9
--szkicszybki i tani podgląd (0,03 USD/s)wyłączony
--bez-dzwiekuklip bez ścieżki dźwiękowejdźwięk włączony
--pliknazwa pliku MP4flux3_<czas>.mp4
--takpomija pytanie o kosztpyta

Ile zapłacisz

Klipfal.aiOpenRouter / BFL
Szkic 5 s0,15 USDBFL 0,30 USD, OpenRouter brak szkicu
5 s, 720p0,425 USD0,85 USD
10 s, 720p0,85 USD1,70 USD
20 s, 720p1,70 USD3,40 USD
20 s, 1080pbez danych5,80 USD

Dźwięk nie kosztuje dodatkowo. Moje wydatki na wszystkie klipy FLUX 3 do tego klastra: 6,10 USD (9 klipów).

Najczęstsze błędy

  • „Brak zmiennej FAL_KEY” - zmienna ustawiona w innym oknie terminala. Ustaw ją w tym samym oknie, w którym uruchamiasz skrypt.
  • Błąd 401 lub 403 - zły klucz albo klucz bez uprawnień. Utwórz nowy w panelu fal.ai.
  • Błąd o saldzie - konto bez środków; doładuj saldo w zakładce Billing.
  • Obraz startowy się nie wczytuje - adres musi być publiczny (bez logowania) i prowadzić do pliku PNG, JPEG albo WebP.
  • Zerwane połączenie przy pobieraniu - zdarzyło mi się raz; skrypt ponawia pobranie, a w ostateczności wypisuje adres wyniku do ręcznego sprawdzenia, więc nie płacisz drugi raz.

Najczęstsze pytania

Czy da się użyć FLUX 3 Video bez programowania?

Tak, w piaskownicach dostawców: na stronie modelu w fal.ai i w czacie OpenRoutera wpisujesz polecenie w formularzu. Skrypt przydaje się, gdy robisz wiele klipów albo chcesz je zapisywać automatycznie.

Jak zrobić dłuższy film niż 20 sekund?

Przedłużaniem: na fal.ai jest tryb extend-video, który bierze koniec poprzedniego klipu i dokłada kolejne 5-15 sekund. W BFL kosztuje to 0,41 USD/s w 720p.

Czy mogę używać klipów komercyjnie?

Zasady określają regulaminy BFL i dostawcy, przez którego generujesz. Przed użyciem w reklamie przeczytaj warunki API, z którego korzystasz.

Więcej przykładów z poleceniami: Co potrafi FLUX 3 Video. Porównanie z rywalami: FLUX 3 vs Wan 3.0 vs Seedance 2.5. Inne generatory: generatory wideo AI.

Google · Twoje źródłaPromptowy wyżej w Twoim Google - jednym kliknięciemDodaj do preferowanych źródeł →

Źródła i data sprawdzenia

// Newsletter

Cały tydzień w AI, w jednym mailu

Wybrane premiery, narzędzia i analizy. Raz w tygodniu, prosto do skrzynki.

Zapisz się za darmo →
Za darmo. Wypisujesz się jednym kliknięciem.
// czytaj też

Podobne tematy na Promptowym

Piotr Olszewski

Piotr Olszewski

AUTOR I WYDAWCA

Piotr Olszewski - twórca i autor Promptowego, polskiego serwisu o sztucznej inteligencji. Codziennie śledzi premiery modeli, narzędzia i regulacje AI, i tłumaczy je prostym, konkretnym językiem.

// mapa strony

🛒 Sklep Kinetyka Google AI Gemini Pro 170 zł CapCut Pro 460 zł/rok Lovable Pro 450 zł/rok Zobacz wszystko →
promptowy w liczbach 0tekstów w archiwum0newsów z ostatnich 7 dni0modeli wideo w obserwatorium0zagadek w grach
× ‹ powiększenie ›