AvatarDirector
AI LAB

AvatarDirector

Autonomiczny system zamieniający materiał z folderu w spektakl z animowanym avatarem 3D.

PROJECT
AI-037
JĘZYK
PYTHON 3.10
ASR
FASTER-WHISPER + CUDA
BACKEND 3D
BLENDER 5.1 (FALLBACK)
LLM
OLLAMA QWEN2.5:14B
STATUS
W TRAKCIE
DATA
26 sierpnia 2026

Wrzucasz plik wideo lub audio do folderu In/, a system zwraca w Out/ gotowy, zsynchronizowany film z animowanym avatarem, napisami, transkrypcją i partyturą występu. Zasada reżyserii: audio wyznacza czas, semantyka wyznacza gest, obraz wyznacza kompozycję.

AVATAR / PARTYTURA WYSTĘPUAUDIO → SEMANTYKA → GEST
RENDER

Kursor idzie po ścieżce dźwiękowej, a wszystko poniżej jest do niej przywiązane: usta awatara otwierają się w rytm mowy, znaczniki gestów zapalają się w miejscach, w których model semantyczny znalazł powód do gestu, a pasek ujęć pokazuje zmiany kompozycji kadru. To jest właśnie „audio wyznacza czas, semantyka wyznacza gest, obraz wyznacza kompozycję”.

ŚCIEŻKA DŹWIĘKOWA · TRANSKRYPCJA WHISPERAWATARWIZEMYGESTY Z ANALIZY SEMANTYCZNEJpowitaniewskazaniewyliczaniepodkreśleniezamknięcieKOMPOZYCJA KADRUSZEROKOŚREDNIOBLISKOŚREDNIOFOLDER OUT/film mp4awatar z alfą webmnapisy srttranskrypcja txtpartytura jsonraport json
PARTYTURA JEST ZAPISYWANA JAKO OSOBNY PLIK — RENDER MOŻNA POWTÓRZYĆ INNYM AWATAREM BEZ PONOWNEJ TRANSKRYPCJI
AVATAR.DIRECTORIN → ANALIZA → REŻYSERIA → OUT
WATCHFOLDER
WEJŚCIENARZĘDZIEPRZETWARZANIEDECYZJAMAGAZYNKONTROLAWYJŚCIE01FOLDER IN/wideo + audio02ANALIZA MEDIÓWffprobe03TRANSKRYPCJAwhisper + CUDA04SEMANTYKAlokalny LLM05REŻYSERIAgest do treści06PARTYTURAperformance/v207ANIMACJAAVATARA08RENDER09KONTROLAsukces / Failed/10FOLDER OUT/mp4 · srt · json
AUDIO WYZNACZA CZAS · SEMANTYKA WYZNACZA GEST · OBRAZ WYZNACZA KOMPOZYCJĘ
01

PROBLEM

Przygotowanie materiału z mówiącym avatarem to zwykle kilka narzędzi i kilka godzin: transkrypcja, synchronizacja ust, dobór gestów, render, montaż, napisy. Przy powtarzalnych materiałach ta praca jest identyczna za każdym razem — czyli jest to praca do zautomatyzowania.

02

POMYSŁ

Watchfolder zamiast interfejsu. Materiał wrzucony do In/ uruchamia cały łańcuch bez udziału człowieka, a wynik ląduje w Out/. Materiał, który spowodował błąd, trafia do Failed/ razem z raportem i pełnym tracebackiem — nic nie ginie po cichu.

03

PROJEKT

Przepływ: IN → ANALIZA → REŻYSERIA → WYSTĘP → RENDER → OUT. Para plików o tej samej nazwie bazowej (film.mp4 + film.wav) jest traktowana jako jeden materiał, przy czym osobne audio jest wtedy ścieżką nadrzędną. Samo audio przełącza avatara w tryb pełnoekranowy na neutralnym tle.

Watchfolder ma jeszcze jedną zaletę, której nie planowałem: staje się kolejką. Można wrzucić dwadzieścia plików wieczorem i rano odebrać dwadzieścia gotowych materiałów, bez pilnowania kolejnych uruchomień i bez interfejsu, który trzeba obsługiwać.

Centralnym artefaktem jest partytura występu w formacie performance/v2 — pośredni kontrakt między analizą a renderem, dzięki któremu render da się powtórzyć bez ponownej analizy.

Kolejność w zasadzie reżyserii nie jest przypadkowa. Audio wyznacza czas, bo synchronizacja ust i gestu musi trzymać się ścieżki dźwiękowej co do klatki. Semantyka wyznacza gest, bo gest wynika z treści, nie z amplitudy. Obraz wyznacza kompozycję, bo avatar musi znaleźć w kadrze miejsce, którego nie zasłania.

04

REALIZACJA

Transkrypcja działa na faster-whisper z akceleracją CUDA, semantykę dostarcza lokalny model przez Ollamę. Backendem docelowym animacji jest Unreal Engine z MetaHumanem — na tej maszynie niezainstalowany, więc pracuje ścieżka zapasowa oparta na Blenderze 5.1.

Wynik to komplet: gotowy film, sam avatar z kanałem alfa do ponownego użycia, napisy SRT, transkrypcja, partytura i raport techniczny.

Osobny plik z avatarem na przezroczystym tle to decyzja praktyczna: pozwala złożyć inny montaż bez powtarzania najdroższego etapu. Diagnostyka środowiska (run.bat --check) sprawdza GPU, whisper i backend avatara, zanim cokolwiek ruszy — to reakcja na przebiegi kończące się błędem po czterdziestu minutach renderu.

05

EFEKT

W katalogach Processing/ i Out/ leżą przetworzone materiały — pełne przebiegi od audio po zmontowany plik końcowy. Po sukcesie oryginały trafiają automatycznie do Archive/.

06

GALERIA

01 ZDJĘĆ
  • AvatarDirector — klatka z gotowego materiału z folderu Out/ · zrzut z projektu

07

WNIOSKI

Rozdzielenie analizy od renderu partyturą pośrednią było najlepszą decyzją w tym projekcie. Render można powtórzyć z innym avatarem albo w innej rozdzielczości, nie uruchamiając ponownie transkrypcji, która jest tu najdroższym krokiem.

Warto też odnotować to, czego nie ma: docelowy backend animacji oparty na Unreal Engine z MetaHumanem nie jest na tej maszynie zainstalowany. System działa na ścieżce zapasowej z Blenderem i jest to świadomie udokumentowane w README, a nie przemilczane — inaczej pierwsze uruchomienie u kogoś innego kończyłoby się niezrozumiałym błędem.