ReelStudio, část 1: Chtěl jsem sestříhat pět Reels. Nakonec vznikl vlastní video editor
*Na začátku bylo několik záběrů z dronu a jednoduchý cíl: vytvořit z nich přibližně pět dynamických Instagram Reels. Z jednorázového střihu ale postupně vznikl lokální nástroj, který videa analyzuje, navrhne shot list a umožní každý vybraný záběr vizuálně upravit.*

Od jednoho sestřihu k vlastnímu nástroji
Celý projekt začal poměrně obyčejně. Měl jsem několik videí z dronu a chtěl jsem z nich vytvořit sérii krátkých vertikálních videí pro Instagram. Potřeboval jsem svižný střih, změny rychlosti, filmové barvy a několik efektů, které by pomohly záběrům lépe fungovat v krátkém formátu.
První myšlenka byla jednoduchá. Vybrat nejlepší části konkrétních videí a automaticky je sestříhat. Během práce se ale objevila širší otázka.
Co kdyby nešlo pouze o jednorázové zpracování několika souborů? Co kdyby vznikl nástroj, do kterého nahraju nová videa, zvolím styl a následně upravím automaticky navržený střih?
V ten moment se z jednoho výstupu začal stávat produktový prototyp.
Vznikla myšlenka ReelStudia, lokální aplikace, která nejprve vytvoří vlastní návrh střihu a potom uživateli umožní zasahovat do každého vybraného záběru. Nejen pomocí několika globálních nastavení, ale přímo na úrovni konkrétních částí videa.
Produkt nevznikl z jednoho promptu
ReelStudio nevzniklo na základě jednoho dokonale připraveného zadání. Na začátku neexistoval kompletní seznam funkcí, hotový návrh rozhraní ani přesně definovaná technická architektura.
Vývoj probíhal postupně přes rozhovor s AI. Místo dlouhého technického dokumentu jsem popisoval, co mi na aktuálním výsledku vadí, co působí nepřirozeně a jak bych chtěl, aby se nástroj choval.
Jedním z prvních požadavků byl vertikální formát pro Instagram Reels. K němu se přidal dynamičtější střih, slow motion, zrychlené pasáže ze záběrů natočených v 60 fps a speed ramp efekty, tedy plynulé přechody mezi různými rychlostmi.
Později přišly motion blur, punch zoom, bílé záblesky, filmové barvy, zrno a jemná vinětace. Každá nová funkce ale zároveň odhalila další problém.
Digitální shake například vypadal příliš agresivně. Výsledek nepřipomínal pohyb kamery v ruce, ale spíše náhodné třesení obrazu. Proto ho nahradil pomalejší a nepravidelný handheld pohyb, který působí přirozeněji.
Podobně vznikla potřeba pracovat s titulky. Nestačilo pouze vložit text přes video. Bylo potřeba měnit font, barvu, pozici a celkový vizuální styl.
Vývoj tak neprobíhal způsobem: „Napiš prompt a získej hotovou aplikaci.“ Připomínal spíše klasickou produktovou práci, pouze s tím rozdílem, že technickým partnerem byla AI.
Tři styly podle referenčních videí
Důležitou součástí zadání byly referenční Instagram Reels a YouTube Shorts. Nešlo o jejich přesné kopírování, ale o rozebrání prvků, díky kterým konkrétní styl funguje.
Na základě referencí vznikly tři vizuální presety.
Runner Tracking
Runner Tracking používá teplejší filmový grading, nižší vedení kamery a delší záběry. Pohyb není extrémně rychlý a změny rychlosti zůstávají jemné. Výsledkem má být pocit, že kamera běžce přirozeně sleduje a nepřebíjí samotný pohyb.
Gym Trailer
Gym Trailer pracuje se studenějším a kontrastnějším obrazem. Důležitý je výrazný úvod, krátké detaily, punch zoomy a rychlé záblesky. Styl připomíná krátký sportovní trailer, ve kterém každý záběr podporuje energii a fyzický výkon.
Runner Story
Runner Story je emotivnější. Začíná černobílým build-upem, používá krátké mikro střihy a postupně přechází do barevného závěru. Nejde pouze o dynamiku, ale také o jednoduchou vizuální dramaturgii.
Presety přitom nejsou jen filtry. Ovlivňují délku záběrů, rytmus střihu, práci s rychlostí i výběr efektů.
Jak ReelStudio funguje
ReelStudio vzniklo jako lokální webová aplikace. Uživatel ji otevře v prohlížeči, ale veškeré zpracování probíhá přímo na jeho počítači. Zdrojová videa se neposílají do cloudu.
Python funguje jako lokální server a zajišťuje aplikační logiku. FFmpeg a FFprobe analyzují videa, stříhají je a vytvářejí finální export. Pillow generuje grafické titulky. Uživatelské rozhraní je vytvořené pomocí HTML, CSS a JavaScriptu.
Aplikace byla postupně přepracována na dvojkrokový editor.
Na první obrazovce uživatel vybere nebo nahraje zdrojová videa. Nemusí řešit konkrétní střih, pouze připraví materiál a pokračuje do editoru.
Na druhé obrazovce ReelStudio automaticky vytvoří shot list. Pokud uživatel nahraje například čtyři zdrojová videa, aplikace z nich může vybrat osm konkrétních úseků pro výsledný Reel.
Pod hlavním náhledem se zobrazí horizontální pás obrázkových karet. Každá karta reprezentuje jeden záběr ve výsledném videu. Uživatel okamžitě vidí pořadí klipů i části zdrojových videí, které aplikace vybrala.
Po kliknutí na konkrétní kartu se otevře vizuální timeline. Vybraný úsek zdrojového videa je na ní označený oranžovým oknem. Tažením za střed lze celý výběr posunout. Tažením za okraje lze záběr zkrátit nebo prodloužit.
Uživatel nemusí ručně zapisovat začátek a konec záběru v sekundách. Pracuje přímo s vizuálním časovým úsekem podobně jako v běžném video editoru.
U každého záběru může změnit zdrojové video, rychlost a lokální efekty. Záběry lze přesouvat, odstranit nebo nahradit.
Automatický návrh tedy není konečným výsledkem. Je prvním střihem, který může uživatel dále formovat.
Od automatizace ke skutečnému editoru
Právě možnost upravit každý automaticky vybraný záběr změnila charakter celého projektu.
Původní nástroj měl vytvořit několik hotových Reels. ReelStudio ale postupně začalo fungovat spíše jako spolupráce mezi automatickým návrhem a lidským rozhodnutím.
Aplikace připraví první verzi, vybere konkrétní časová okna a sestaví jejich pořadí. Uživatel následně rozhodne, zda je záběr příliš dlouhý, zda má začínat o několik sekund později nebo zda se má ve výsledku objevit úplně jiná část zdrojového videa.
Tím vznikl základní princip ReelStudia:
Automatizace vytvoří výchozí bod. Člověk si ponechá kontrolu nad výsledkem.
V první části case study jsme se dostali od několika videí z dronu k editoru s automatickým shot listem a vizuální timeline. Ve druhé části se podíváme na největší problém celého prototypu: jak umožnit okamžité úpravy bez čekání na nový render po každé změně.
