Z tych klipów zrobiliśmy zaproszenie
Cztery abstrakcyjne animacje, bez napisów i dźwięku. Po montażu: burgundowe tło, różowe figury, duża kursywa i rytm 120 BPM. Tak powstała nasza 16-sekundowa zapowiedź Cookie Sessions. W podglądzie możecie zestawić materiał wejściowy z gotowym filmem, a potem przełączyć się na wersję pionową.
Cookie Sessions jest fikcyjnym wieczorem muzyki i obrazu. Nazwa, miejsce i data w filmie należą do przykładu. Sam montaż jest rzeczywisty: przygotowaliśmy go w Codexie z użyciem FFmpeg, narzędzia do obróbki obrazu i dźwięku. W paczce dostajecie klipy, ustawienia montażu i skrypt do ponownego renderowania. Na początek wystarczy podmienić napisy.
Jak 32 sekundy zmieniły się w 16
Każdy z czterech źródłowych klipów ma osiem sekund, rozdzielczość 1280 × 720 i 24 klatki na sekundę. Są nieme i bez napisów. Narysowaliśmy animacje programowo jako SVG, a klatki przygotowaliśmy z użyciem Node.js i Sharp. Nie pochodzą z modelu generującego wideo. W before.mp4 pełne klipy idą po kolei: 01, 02, 03, 04. Razem dają 32 sekundy.
Do zwiastuna wybraliśmy kolejność 03, 01, 02, 04. Z pierwszych trzech klipów zostawiliśmy po 4,5 sekundy, z ostatniego cztery. To 17,5 sekundy materiału, ale trzy półsekundowe przenikania nakładają końce i początki ujęć. Gotowy film trwa więc 16 sekund. Części Światło, Dźwięk, Ruch i Spotkajmy się zaczynają się w sekundach 0, 4, 8 i 12.
Oba eksporty mają 24 klatki na sekundę. Poziomy ma 1280 × 720, pionowy 720 × 1280. Zapisujemy je jako MP4 z obrazem H.264 i dźwiękiem AAC.
Litery mają swoje miejsce, muzyka swoje tempo
W każdej części daliśmy dwa duże wiersze i krótkie dopowiedzenie. Napisy mają czas na wejście i zniknięcie. Wybraliśmy Georgia Italic: miękka kursywa dobrze układa się przy geometrycznych figurach, a ciemne pole pod spodem pomaga czytać tekst mimo ruchu w tle.
Muzykę również przygotowuje skrypt. Z fal dźwiękowych buduje stopę, bas, krótkie nuty, szum i akordy — nasz autorski podkład w tempie 120 BPM. W pionowym filmie osobno ustawiliśmy kadrowanie obrazu i pozycje napisów. Samo zmniejszenie poziomej kompozycji dałoby na telefonie za małe litery. Dopowiedzenie ostatniej sceny dzieli się tu na dwa wiersze przy separatorze „ · ”.
Co będzie wam potrzebne do uruchomienia
Na komputerze muszą być Python 3, FFmpeg i ffprobe, dostępne w terminalu. FFmpeg potrzebuje obsługi filtrów drawtext, xfade i loudnorm — odpowiadają za napisy, przenikania i wyrównanie głośności. Nie instalujecie dodatkowych pakietów Pythona. Node.js i Sharp też nie są potrzebne do tego etapu: gotowe klipy MP4 już znajdują się w paczce.
Skrypt szuka na komputerze Georgii i Arial albo fontów DejaVu. Samych fontów nie dołączamy. Własne pliki TTF możecie wskazać opcjami --serif-font i --sans-font. Po zmianie kroju obejrzyjcie napisy w obu formatach, bo litery mogą mieć inną szerokość.
Nasz skrypt obsługuje cztery sceny, 24 klatki na sekundę, półsekundowe przejścia i wynik długości 16 sekund. Sprawdza, czy wybrane fragmenty mieszczą się w klipach, ale nie dopasowuje automatycznie długich napisów. Dlatego zacznijcie od krótkich słów. Jeśli chcecie dołożyć kolejne sceny, potrzebna będzie też zmiana kodu.
Podmieniamy napis i składamy film jeszcze raz
Pobierzcie ZIP i rozpakujcie go. W edytorze tekstu otwórzcie edit.json, czyli plik z ustawieniami montażu. W pierwszej pozycji tablicy scenes wpiszcie „Noc” w line1, „koloru.” w line2 i „Widzimy się po zmroku.” w caption. Zachowajcie pozostałe pola i przecinki. Pole title na początku pliku tylko opisuje projekt; nie pojawia się w filmie.
Po zapisaniu zmian otwórzcie terminal w rozpakowanym katalogu i uruchomcie polecenie poniżej. Na Windows użyjcie py -3 render.py. Skrypt przygotuje oba formaty: final-16x9.mp4 i final-9x16.mp4 w folderze output. Zapisze również before.mp4 i miniatury. Kolejne uruchomienie nadpisuje te wyniki, więc wcześniejszy montaż przenieście, jeśli chcecie go zachować.
Teraz oglądamy i słuchamy
Codex może przełożyć pomysł na ustawienia i kod, a FFmpeg złoży z nich film. Nam zostaje obejrzenie i odsłuchanie całości. Sprawdźcie, czy zdążyliście przeczytać napisy, czy przejścia pasują i czy muzyka nie jest za głośna. Z taką obserwacją łatwo wrócić do agenta: „Zwiększ odstęp między tytułem a dopowiedzeniem w pionie” daje znacznie konkretniejszą poprawkę niż „Zrób to lepiej”.
Te same pliki możecie rozwijać w Claude Code, który również edytuje kod i uruchamia polecenia. Inną drogą jest Remotion, jeśli chcecie składać film z komponentów React; udostępnia skille i pluginy dla Codexa oraz Claude Code. Do ponownego renderowania naszego przykładu wystarczą jednak źródłowe klipy i skrypt z paczki.
Źródła i dalsza lektura
Materiały, na których opiera się ten tekst. Instrukcje i przykładowe scenariusze są propozycjami redakcji.
- Cookie Analytics: demonstracja montażu Cookie Sessions (otwiera nową kartę)qkianalytics.pl
- Cookie Analytics: projekt do pobrania — klipy, edit.json i render.py (otwiera nową kartę)qkianalytics.pl
- FFmpeg: przetwarzanie obrazu i dźwięku oraz eksport (otwiera nową kartę)ffmpeg.org
- Remotion: Agent Skills dla agentów programujących (otwiera nową kartę)remotion.dev
- Remotion: pluginy dla Codexa i Claude Code (otwiera nową kartę)remotion.dev
- Anthropic: Claude Code — pliki i polecenia (otwiera nową kartę)code.claude.com