Przejdź do treści

Automatyczne napisy do rolek za darmo - AI po polsku + publikacja na 4 platformy

Lukasz Niesyto Lukasz Niesyto
- - 7 min czytania
~15 min / 1 min
Czas
6 narzędzi
Narzędzia
~2h / film
Oszczędność
Średni
Poziom

Problem: nagrywasz rolkę 5 minut, publikujesz 2 godziny

Nagrywam rolkę telefonem. 60 sekund, twarz do kamery, gotowe.

A potem zaczyna się cyrk:

  1. Transkrypcja - odsłuchujesz i wpisujesz ręcznie, albo wrzucasz do CapCut i poprawiasz błędy
  2. Napisy - dodajesz je w CapCut albo innej aplikacji, dopasowujesz timing słowo po słowie
  3. Opisy - piszesz osobny tekst na każdą platformę (inne limity, inne hashtagi)
  4. Upload - wrzucasz na TikToka, potem na Instagram Reels, potem Facebook Reels, potem YouTube Shorts
  5. Planowanie - ustawiasz daty publikacji na każdej platformie osobno

Każdy krok to 10-20 minut. W sumie 1.5-2 godziny zanim jedna rolka jest wszędzie. A jak chcesz publikować codziennie? Nie ma szans ogarniać tego ręcznie.

Zbudowałem system który robi to za mnie. Wrzucam plik - reszta dzieje się sama.

Automatyczne napisy do filmów za darmo - jak to działa

Większość ludzi szuka aplikacji do automatycznych napisów (CapCut, InShot, Canva). Problem? Ręcznie klikasz, ręcznie poprawiasz, ręcznie wrzucasz na każdą platformę.

Moje podejście jest inne - pełna automatyzacja od nagrania do publikacji. Zero klikania poza wrzuceniem pliku.

Architektura jest prosta. 6 narzędzi, każde robi jedną rzecz:

Telegram /render

n8n (orkiestracja)

Google Drive → Cloudflare R2

GitHub Actions (Whisper + Claude + Remotion)

n8n → Buffer + YouTube API

4 platformy: TikTok, Instagram, Facebook, YouTube

Krok 1: Wrzucam wideo - i to jedyne co robię ręcznie

Nagrywam telefonem, wrzucam do folderu “shorty” na Google Drive. Potem piszę na Telegramie /render 15.04 15:00 - data i godzina publikacji.

n8n (darmowe narzędzie do automatyzacji) pobiera pliki z folderu, uploaduje na Cloudflare R2 (darmowy hosting plików) i odpala GitHub Actions.

Krok 2: Whisper - automatyczne napisy po polsku za darmo

OpenAI Whisper to model AI do transkrypcji. Używam modelu “small” - zamienia audio na tekst z timestampami per słowo. To kluczowe - potrzebuję dokładnego timingu każdego słowa żeby napisy do rolek były zsynchronizowane.

Dokładność dla polskiego: ~95%. Czasem myli się w imionach własnych albo slangowych wyrażeniach, ale do napisów wystarcza.

Testowałem model “medium” - lepsza jakość, ale na GitHub Actions (CPU, bez GPU) trwa wieczność. “Small” to dobry kompromis między jakością a czasem. Jeśli masz kartę graficzną (np. RTX 4060), możesz spokojnie odpalić “medium” lokalnie.

Whisper jest open-source i darmowy. Żadnych subskrypcji, żadnych limitów. Dlatego automatyczne napisy do filmów za darmo to nie clickbait - naprawdę nic nie płacisz za transkrypcję.

Krok 3: AI generuje dwa style napisów + opisy na każdą platformę

Na podstawie transkrypcji Claude API (AI od Anthropic) robi trzy rzeczy naraz:

Ciągłe napisy (styl TikTok): Słowo po słowie, na dole ekranu. Aktualne słowo podświetlone na żółto, reszta przygaszona. Automatyczne grupowanie - max 3 słowa na linię, nowy ekran po kropce. Dokładnie tak jak w popularnych aplikacjach do napisów, ale bez ręcznego klikania.

Kluczowe momenty (kinetic typography): 4-5 najważniejszych zdań z całego filmu wyświetlonych dużym, animowanym tekstem. Czcionka Anton, 82-115px, efekt blur in/out ze spring animation. To te napisy które “wyskakują” z ekranu i przyciągają uwagę.

Opisy per platforma: Inny tekst na każdą platformę - TikTok (do 2200 znaków), Instagram (do 2200), YouTube (do 5000). Plus hashtagi dopasowane do każdej platformy.

Krok 4: Remotion renderuje wideo z animowanymi napisami

Remotion (framework React do wideo) łączy surowe nagranie z napisami. Dwa systemy napisów nakładają się na siebie:

  • ContinuousCaptions na dole - ciągłe napisy, każde słowo pojawia się z animacją spring pop
  • BoldCaptions na środku - tylko w kluczowych momentach, duże, animowane

Renderowanie na GitHub Actions (2 CPU, 7 GB RAM) trwa ~15 minut na minutę wideo. Jest darmowe (publiczne repo = nieograniczone minuty) i działa w tle - nie muszę czekać.

Zoptymalizowałem kilka rzeczy po drodze:

  • FFmpeg normalizacja (VFR → CFR) - nagrania z telefonu mają zmienny framerate, Remotion tego nie lubi
  • CRF 28 - kompresja z 460 MB do ~30-50 MB bez widocznej straty jakości
  • OffthreadVideo - naprawia drzenie/jitter na niektórych nagraniach

Krok 5: Automatyczna publikacja na TikTok, Instagram, Facebook i YouTube

Po renderowaniu GitHub Actions wysyła callback do n8n z linkiem do gotowego wideo. n8n robi resztę:

  • Instagram Reels + Facebook Reels - planuje posty przez Buffer API
  • YouTube Shorts - uploaduje przez YouTube API, ustawia datę publikacji
  • TikTok - publikacja przez Buffer API (wcześniej był problem, już naprawiony)

Harmonogram: każdy plik = kolejny dzień o tej samej godzinie. 5 plików = publikacja przez 5 dni. Jedno kliknięcie i masz tydzień contentu rozplanowanego.

Dlaczego nie CapCut albo inna aplikacja do napisów

CapCut, InShot, Canva - to świetne narzędzia do automatycznych napisów. Ale mają wspólny problem: każdy film ręcznie.

CapCutMój system
TranskrypcjaAutomatycznaAutomatyczna (Whisper)
Poprawki napisówRęcznieNie trzeba (~95% dokładność)
Style napisówWybierasz z szablonów2 style generowane przez AI
Opisy na platformyPiszesz samAI generuje per platforma
PublikacjaRęcznie na każdej platformieAutomatyczna na 4 platformy
Czas na film~30-60 min~0 min (system robi w tle)
KosztDarmowe / Pro ~30 PLN/msc~12 groszy za film

CapCut jest lepszy jeśli chcesz kontrolę nad każdym detalem. Mój system jest lepszy jeśli chcesz publikować codziennie bez poświęcania 2 godzin dziennie.

Realne koszty - automatyczne napisy AI za 12 groszy

To nie clickbait. Oto rozkład:

ElementKoszt za filmKoszt miesięcznie (1/dzień)
Whisper (transkrypcja)~0.02 PLN~0.60 PLN
Claude API (napisy + opisy)~0.08 PLN~2.40 PLN
GitHub Actions (render)0 PLN0 PLN
Cloudflare R2 (hosting)0 PLN0 PLN
Buffer (publikacja)0 PLN0 PLN
Suma~0.12 PLN~3 PLN

Cały miesiąc codziennego publikowania na 4 platformach za mniej niż 2 suche bułki z rana bez masła.

Dla porównania - ręczna robota to ~2 godziny na film. Przy stawce 50 PLN/h to 100 PLN za film. System oszczędza ~3000 PLN miesięcznie przy codziennym publikowaniu.

Co nie działa (jeszcze)

Nie wszystko jest idealnie:

TikTok API - przez kilka tygodni Buffer nie mógł publikować na TikToka (problem po stronie infrastruktury Oracle). Już naprawione, działa automatycznie jak reszta platform.

Czas renderowania - 15 minut na minutę filmu to sporo. Na lokalnym kompie z GPU (RTX 4060) schodzi do 3-5 minut. Rozważam migrację na AWS Lambda.

Whisper na CPU - model “small” zamiast “medium” bo GitHub Actions nie ma GPU. Tracimy trochę na dokładności, ale różnica jest minimalna dla krótkich filmów.

Ile zajęło zbudowanie tego systemu

Szczerze? Około 2 tygodni pracy wieczorami (jeżdżąc tirem w Niemczech). Oto timeline:

  • Dzień 1-2: Research i architektura (Whisper, Remotion, n8n)
  • Dzień 3-5: Budowa komponentów napisów (ContinuousCaptions, BoldCaptions, ShineCaption)
  • Dzień 6-7: GitHub Actions - debug 7 runów zanim zadziałało
  • Dzień 8-9: n8n workflow - Telegram trigger, Buffer API, YouTube API
  • Dzień 10-12: Optymalizacja - FFmpeg, kompresja, race conditions
  • Dzień 13-14: Testy produkcyjne, TikTok fallback, dokumentacja

Najtrudniejszy moment? Race conditions w n8n - pliki uploadowały się za szybko i GitHub Actions dostawał błąd 403. Rozwiązanie: kolejkowanie z opóźnieniem między plikami.

Następne kroki

Aktualnie pracuję nad:

  1. Trigger przez Telegram zamiast Google Drive - wrzucam wideo prosto z telefonu
  2. Szybsze renderowanie - migracja na AWS Lambda (~1-3 minuty zamiast 15)

Podsumowanie

Automatyczne napisy do rolek po polsku za darmo - to możliwe. Whisper transkrybuje, AI generuje napisy i opisy, Remotion renderuje, n8n publikuje. 12 groszy za film, 3 złote za miesiąc codziennego publikowania na TikTok, Instagram, Facebook i YouTube.

Jeśli budujesz coś podobnego albo chcesz wiedzieć jak wdrożyć taki system - zapisz się na newsletter. Opisuję takie rzeczy na bieżąco, bez filtra.

Udostepnij
X LinkedIn