ReelStudio, část 2: Jak živý náhled změnil prototyp ve skutečně použitelný editor
*Automaticky vytvořit první střih nestačilo. ReelStudio potřebovalo umožnit rychlé úpravy bez čekání na nový export. Právě řešení pomalého náhledu, černých obrazovek mezi klipy a rozdílů mezi editorem a finálním videem posunulo prototyp nejdál.*
Největší problém: čekání na nový render
První verze editoru měla zásadní nevýhodu. Po každé úpravě bylo potřeba znovu vyrenderovat celý náhled.
Pokud uživatel změnil délku jednoho záběru, musel počkat na vytvoření nového MP4. Když následně upravil rychlost dalšího klipu, celý proces se opakoval. U několika drobných změn se práce rychle zpomalovala.
To bylo v přímém rozporu s hlavní myšlenkou nástroje. ReelStudio mělo střih urychlit, ne vytvářet další čekání mezi jednotlivými rozhodnutími.
Řešením se stal živý náhled.
Místo generování nového videa po každé změně přehrává prohlížeč jednotlivé části přímo ze zdrojových souborů. Řídí se aktuálním shot listem, zvolenými časovými okny a nastavenými rychlostmi.
Když uživatel změní pořadí záběrů, jejich délku nebo rychlost, náhled se aktualizuje bez vytvoření nového MP4 souboru.
Náročnější efekty, které přesně vytváří FFmpeg, jsou v živém náhledu pouze přibližné. Uživatel ale okamžitě vidí rytmus střihu, délku klipů a základní práci s rychlostí. Přesná podoba efektů vznikne až při finálním exportu.
Jak odstranit černou obrazovku mezi klipy
Živý náhled přinesl další technický problém. Pokud se v jednom HTML video přehrávači změnil zdrojový soubor, mezi dvěma záběry se objevila krátká pauza nebo černá obrazovka.
U pomalého videa by podobná prodleva možná nebyla zásadní. U dynamického Reelu ale několik desetin sekundy okamžitě naruší rytmus střihu.
Řešením bylo dvojité přehrávání.
ReelStudio používá dva video prvky. Zatímco se aktuální záběr přehrává v prvním, následující klip se mezitím načítá ve druhém skrytém přehrávači. Současně se nastaví na správný čas podle aktuálního shot listu.
Ve chvíli střihu se oba přehrávače pouze vymění. Druhý se stane viditelným a první začne připravovat následující klip.
Pokud se další video nestihne načíst včas, aplikace místo černé plochy ponechá zobrazenou poslední snímku předchozího záběru. Náhled tak působí plynuleji, i když se stále nejedná o přesnou podobu finálního renderu.
Drobné chyby, které měnily celý produkt
Během vývoje se objevila řada problémů, které na první pohled nevypadaly zásadně, ale výrazně ovlivňovaly používání aplikace.
Jedním z nich bylo rozdílné chování rychlosti v náhledu a při exportu. Pokud uživatel globálně vypnul zrychlení, finální export nastavení respektoval. Živý náhled ale stále používal dříve uloženou hodnotu 1,85×.
Náhled tedy ukazoval něco jiného než výsledné video. Logiku rychlosti bylo potřeba sjednotit tak, aby náhled i export vždy vycházely ze stejného nastavení.
Další problém způsobovaly chybějící složky pro nahraná a exportovaná videa. Pokud adresáře uploads a outputs neexistovaly, nahrávání skončilo chybou 400. Aplikace si je proto začala při spuštění automaticky vytvářet.
Samostatnou otázkou bylo oddělení automatických návrhů od manuálních úprav. Jakmile uživatel změnil délku nebo pozici konkrétního záběru, systém nesměl jeho rozhodnutí při dalším přepočtu jednoduše přepsat.
Bylo potřeba rozlišit, co navrhla aplikace a co už vědomě upravil člověk.
Právě podobné detaily často rozhodují o tom, zda prototyp pouze funguje, nebo se dá skutečně používat.
Zpětná vazba jako produktové zadání
V případě ReelStudia nebyla AI pouze generátorem jednorázového kódu. Pomáhala analyzovat referenční videa, rozkládat jejich styl na konkrétní prvky, navrhovat architekturu prototypu, upravovat FFmpeg příkazy a reagovat na chyby v exportech.
Nejdůležitější ale byla schopnost reagovat na konkrétní připomínky:
„Shake je příliš agresivní.“
„Chci upravovat konkrétních osm vybraných záběrů.“
„Nechci psát časy, chci posouvat okno na timeline.“
„Nechci po každé změně čekat na nový render.“
„Mezi klipy zůstává černá obrazovka.“
Každá věta se změnila v nový produktový nebo technický úkol.
Agresivní shake vedl k přirozenějšímu handheld pohybu. Požadavek na úpravu osmi vybraných záběrů vytvořil thumbnail karty a shot list. Odmítnutí ručního zadávání časů vedlo k vizuální timeline. Pomalé renderování přineslo živý náhled. Černá obrazovka mezi klipy vedla ke dvojitému přehrávači.
Výsledný produkt tedy nevznikal pouze psaním kódu. Vznikal překládáním uživatelských připomínek do konkrétního chování aplikace.
Co dnes ReelStudio dokáže
Aktuální verze umožňuje nahrát více zdrojových videí, automaticky vytvořit shot list a každý vybraný záběr upravit pomocí vizuální timeline.
Uživatel může měnit délku záběrů, jejich pořadí, rychlost i zdroj. Jednotlivé klipy lze odstranit nebo přesouvat. Každý záběr může mít vlastní efekty a nastavení.
Aplikace podporuje slow motion, zrychlení, speed ramp, handheld pohyb, motion blur, punch zoom a white flash. Součástí jsou také různé typy gradingu, filmové zrno, vinětace a vlastní titulky s výběrem fontu, barvy, pozice a stylu.
Rychlý náhled funguje bez kompletního renderování. Finální export následně vytvoří vertikální video v rozlišení 1080 × 1920.
Veškeré zpracování probíhá lokálně bez odesílání zdrojových souborů do cloudu.
ReelStudio je ale stále funkční prototyp, ne hotový komerční produkt. Některé složité FFmpeg efekty živý náhled pouze přibližuje. Přesný obraz vzniká až při exportu. Rozhraní i automatický výběr záběrů mají stále prostor pro další vývoj.
Co by mohlo následovat
Dalším krokem by mohlo být lepší automatické hodnocení materiálu. Aplikace by mohla přesněji rozpoznávat pohyb, kompozici, výrazné momenty nebo části vhodné pro změnu rychlosti.
Smysl by dávalo také ukládání vlastních stylů. Uživatel by si mohl vytvořit preset podle svého vizuálního rukopisu a používat ho opakovaně na nových videích.
Další možností je práce s hudbou a automatickým střihem podle rytmu. V současnosti se ReelStudio soustředí hlavně na vizuální stránku a logiku shot listu. Synchronizace střihu s beatem by mohla být samostatnou vrstvou.
Vývoj prototypu ale ukázal, že největší přínos často nevzniká přidáním dalšího efektu. Vzniká odstraněním konkrétní překážky, která uživateli brání pokračovat v práci.
AI jako technický partner
ReelStudio začalo jako potřeba sestříhat několik videí z dronu. Postupně se změnilo v lokální editor, který automaticky navrhne strukturu videa a následně umožní každý záběr vizuálně upravit.
Nevzniklo z dokonalého zadání ani z jednoho promptu. Vzniklo z konkrétních připomínek, které se postupně měnily ve funkce, změny rozhraní a technická řešení.
AI v tomto procesu nenahradila přemýšlení o produktu. Pomáhala převádět problémy do prototypu, hledat technická řešení, testovat exporty a rychle reagovat na zpětnou vazbu.
K vytvoření vlastního nástroje dnes nemusí člověk začínat kompletní specifikací. Může začít jedním konkrétním problémem, popsat, co mu na současném řešení vadí, a postupně se přes jednotlivé iterace dostat k funkčnímu prototypu.
Nejdůležitější není napsat dokonalý prompt.
Nejdůležitější je umět přesně říct, co nefunguje a jak by se měl produkt chovat místo toho.
