From 0b326e6e9ca0732bc2a80bf21e93171e8404149f Mon Sep 17 00:00:00 2001 From: Pascal Scholz Date: Thu, 29 Oct 2026 02:09:06 +0000 Subject: [PATCH] =?UTF-8?q?Folge=202=20=E2=80=9EPino=20ist=20m=C3=BCde?= =?UTF-8?q?=E2=80=9C=20komplett=20in=20Remotion=20(ohne=20Ton,=20ohne=20Hi?= =?UTF-8?q?ggsfield)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Szenen aus der Figuren-Bibliothek: freigestellte Standbilder mit Posenwechsel, freigestellte Clips (WebM mit Alpha in /shared), Orte als vorberechnete Aquarell-SVGs, Untertitel statt Stimmen. Zeitplan aus den Sprechzeilen, damit ElevenLabs-Aufnahmen später nur die Dauer setzen. Co-Authored-By: Claude Opus 5.5 --- remotion/.gitignore | 1 + remotion/README.md | 38 + remotion/package-lock.json | 10 + remotion/package.json | 1 + .../folge02/figuren/lulu_A1_augen-zu.webp | Bin 0 -> 43522 bytes .../folge02/figuren/lulu_A2_augen-halb.webp | Bin 0 -> 45372 bytes .../folge02/figuren/lulu_A3_lachen.webp | Bin 0 -> 43214 bytes .../folge02/figuren/lulu_A4_staunen.webp | Bin 0 -> 45022 bytes .../folge02/figuren/lulu_A5_blick-links.webp | Bin 0 -> 43284 bytes .../folge02/figuren/lulu_A6_blick-rechts.webp | Bin 0 -> 43264 bytes .../folge02/figuren/lulu_A7-1_gehen.webp | Bin 0 -> 46764 bytes .../folge02/figuren/lulu_A7-2_gehen.webp | Bin 0 -> 42286 bytes .../folge02/figuren/lulu_A7-3_gehen.webp | Bin 0 -> 42688 bytes .../folge02/figuren/lulu_A7-4_gehen.webp | Bin 0 -> 42396 bytes .../folge02/figuren/lulu_A8_rueckansicht.webp | Bin 0 -> 38832 bytes .../public/folge02/figuren/lulu_A_apfel.webp | Bin 0 -> 47108 bytes .../folge02/figuren/lulu_A_hals-unten.webp | Bin 0 -> 76196 bytes .../folge02/figuren/lulu_B1_traurig.webp | Bin 0 -> 41304 bytes .../folge02/figuren/lulu_B2_erschrocken.webp | Bin 0 -> 46674 bytes .../folge02/figuren/lulu_B3_schlafen.webp | Bin 0 -> 82950 bytes .../folge02/figuren/lulu_B_kopf-profil.webp | Bin 0 -> 47272 bytes .../public/folge02/figuren/lulu_B_liegt.webp | Bin 0 -> 52470 bytes .../folge02/figuren/noa_A1_augen-zu.webp | Bin 0 -> 25570 bytes .../folge02/figuren/noa_A2_augen-halb.webp | Bin 0 -> 25676 bytes .../public/folge02/figuren/noa_A3_lachen.webp | Bin 0 -> 26624 bytes .../folge02/figuren/noa_A4_staunen.webp | Bin 0 -> 25878 bytes .../folge02/figuren/noa_A5_blick-links.webp | Bin 0 -> 25728 bytes .../folge02/figuren/noa_A6_blick-rechts.webp | Bin 0 -> 25758 bytes .../folge02/figuren/noa_A7-1_gehen.webp | Bin 0 -> 28230 bytes .../folge02/figuren/noa_A7-2_gehen.webp | Bin 0 -> 27662 bytes .../folge02/figuren/noa_A7-3_gehen.webp | Bin 0 -> 25756 bytes .../folge02/figuren/noa_A7-4_gehen.webp | Bin 0 -> 26740 bytes .../folge02/figuren/noa_A8_rueckansicht.webp | Bin 0 -> 27328 bytes .../figuren/noa_A_arm-hoch-winken.webp | Bin 0 -> 28420 bytes .../folge02/figuren/noa_A_arme-hoch.webp | Bin 0 -> 27940 bytes .../public/folge02/figuren/noa_A_laterne.webp | Bin 0 -> 35730 bytes .../folge02/figuren/noa_B1_traurig.webp | Bin 0 -> 25146 bytes .../folge02/figuren/noa_B2_erschrocken.webp | Bin 0 -> 25686 bytes .../folge02/figuren/noa_B3_schlafen.webp | Bin 0 -> 34928 bytes .../public/folge02/figuren/noa_B_hocken.webp | Bin 0 -> 28350 bytes .../public/folge02/figuren/noa_B_sitzt.webp | Bin 0 -> 32194 bytes .../public/folge02/figuren/noa_B_zeigen.webp | Bin 0 -> 27710 bytes .../folge02/figuren/noa_ref_stehend.webp | Bin 0 -> 27546 bytes .../folge02/figuren/pino_A1_augen-zu.webp | Bin 0 -> 50096 bytes .../folge02/figuren/pino_A2_augen-halb.webp | Bin 0 -> 51922 bytes .../folge02/figuren/pino_A3_lachen.webp | Bin 0 -> 50078 bytes .../folge02/figuren/pino_A4_staunen.webp | Bin 0 -> 51032 bytes .../folge02/figuren/pino_A5_blick-links.webp | Bin 0 -> 49348 bytes .../folge02/figuren/pino_A6_blick-rechts.webp | Bin 0 -> 50038 bytes .../folge02/figuren/pino_A7-1_gehen.webp | Bin 0 -> 47936 bytes .../folge02/figuren/pino_A7-2_gehen.webp | Bin 0 -> 44206 bytes .../folge02/figuren/pino_A7-3_gehen.webp | Bin 0 -> 43700 bytes .../folge02/figuren/pino_A7-4_gehen.webp | Bin 0 -> 43730 bytes .../folge02/figuren/pino_A8_rueckansicht.webp | Bin 0 -> 55460 bytes .../folge02/figuren/pino_A_hinterbeine.webp | Bin 0 -> 55516 bytes .../public/folge02/figuren/pino_A_kugel.webp | Bin 0 -> 56296 bytes .../folge02/figuren/pino_A_laufen-1.webp | Bin 0 -> 52328 bytes .../folge02/figuren/pino_A_laufen-2.webp | Bin 0 -> 48908 bytes .../folge02/figuren/pino_A_laufen-3.webp | Bin 0 -> 47162 bytes .../folge02/figuren/pino_A_laufen-4.webp | Bin 0 -> 49216 bytes .../folge02/figuren/pino_B1_traurig.webp | Bin 0 -> 50250 bytes .../folge02/figuren/pino_B2_erschrocken.webp | Bin 0 -> 51552 bytes .../folge02/figuren/pino_B3_schlafen.webp | Bin 0 -> 51964 bytes .../figuren/pino_B_blick-nach-oben.webp | Bin 0 -> 50216 bytes .../figuren/pino_B_schlaeft-eingerollt.webp | Bin 0 -> 52526 bytes .../folge02/figuren/pino_ref_sitzend.webp | Bin 0 -> 56544 bytes remotion/public/folge02/orte/garten.webp | Bin 0 -> 110166 bytes .../public/folge02/orte/garten_nacht.webp | Bin 0 -> 64410 bytes remotion/public/folge02/orte/kalender.webp | Bin 0 -> 120512 bytes remotion/public/folge02/orte/oben.webp | Bin 0 -> 134134 bytes .../public/folge02/orte/zimmer_himmel.webp | Bin 0 -> 14838 bytes .../public/folge02/orte/zimmer_tisch.webp | Bin 0 -> 10222 bytes remotion/public/folge02/orte/zimmer_wand.webp | Bin 0 -> 226266 bytes remotion/src/Root.tsx | 6 + remotion/src/folge02/Folge02.tsx | 39 + remotion/src/folge02/buch.tsx | 163 +++ remotion/src/folge02/figur.tsx | 152 +++ remotion/src/folge02/helfer.tsx | 72 ++ remotion/src/folge02/lied.tsx | 68 ++ remotion/src/folge02/natur.tsx | 248 +++++ remotion/src/folge02/orte.tsx | 372 +++++++ remotion/src/folge02/posen.ts | 942 ++++++++++++++++++ remotion/src/folge02/szene2.tsx | 128 +++ remotion/src/folge02/szene3.tsx | 167 ++++ remotion/src/folge02/szene4.tsx | 212 ++++ remotion/src/folge02/szene5.tsx | 165 +++ remotion/src/folge02/szene6.tsx | 172 ++++ remotion/src/folge02/szene7.tsx | 127 +++ remotion/src/folge02/untertitel.tsx | 101 ++ remotion/src/folge02/zeit.ts | 48 + remotion/werkzeuge/clip_freistellen.py | 47 + remotion/werkzeuge/freistellen.py | 37 + remotion/werkzeuge/posen.py | 68 ++ 93 files changed, 3384 insertions(+) create mode 100644 remotion/public/folge02/figuren/lulu_A1_augen-zu.webp create mode 100644 remotion/public/folge02/figuren/lulu_A2_augen-halb.webp create mode 100644 remotion/public/folge02/figuren/lulu_A3_lachen.webp create mode 100644 remotion/public/folge02/figuren/lulu_A4_staunen.webp create mode 100644 remotion/public/folge02/figuren/lulu_A5_blick-links.webp create mode 100644 remotion/public/folge02/figuren/lulu_A6_blick-rechts.webp create mode 100644 remotion/public/folge02/figuren/lulu_A7-1_gehen.webp create mode 100644 remotion/public/folge02/figuren/lulu_A7-2_gehen.webp create mode 100644 remotion/public/folge02/figuren/lulu_A7-3_gehen.webp create mode 100644 remotion/public/folge02/figuren/lulu_A7-4_gehen.webp create mode 100644 remotion/public/folge02/figuren/lulu_A8_rueckansicht.webp create mode 100644 remotion/public/folge02/figuren/lulu_A_apfel.webp create mode 100644 remotion/public/folge02/figuren/lulu_A_hals-unten.webp create mode 100644 remotion/public/folge02/figuren/lulu_B1_traurig.webp create mode 100644 remotion/public/folge02/figuren/lulu_B2_erschrocken.webp create mode 100644 remotion/public/folge02/figuren/lulu_B3_schlafen.webp create mode 100644 remotion/public/folge02/figuren/lulu_B_kopf-profil.webp create mode 100644 remotion/public/folge02/figuren/lulu_B_liegt.webp create mode 100644 remotion/public/folge02/figuren/noa_A1_augen-zu.webp create mode 100644 remotion/public/folge02/figuren/noa_A2_augen-halb.webp create mode 100644 remotion/public/folge02/figuren/noa_A3_lachen.webp create mode 100644 remotion/public/folge02/figuren/noa_A4_staunen.webp create mode 100644 remotion/public/folge02/figuren/noa_A5_blick-links.webp create mode 100644 remotion/public/folge02/figuren/noa_A6_blick-rechts.webp create mode 100644 remotion/public/folge02/figuren/noa_A7-1_gehen.webp create mode 100644 remotion/public/folge02/figuren/noa_A7-2_gehen.webp create mode 100644 remotion/public/folge02/figuren/noa_A7-3_gehen.webp create mode 100644 remotion/public/folge02/figuren/noa_A7-4_gehen.webp create mode 100644 remotion/public/folge02/figuren/noa_A8_rueckansicht.webp create mode 100644 remotion/public/folge02/figuren/noa_A_arm-hoch-winken.webp create mode 100644 remotion/public/folge02/figuren/noa_A_arme-hoch.webp create mode 100644 remotion/public/folge02/figuren/noa_A_laterne.webp create mode 100644 remotion/public/folge02/figuren/noa_B1_traurig.webp create mode 100644 remotion/public/folge02/figuren/noa_B2_erschrocken.webp create mode 100644 remotion/public/folge02/figuren/noa_B3_schlafen.webp create mode 100644 remotion/public/folge02/figuren/noa_B_hocken.webp create mode 100644 remotion/public/folge02/figuren/noa_B_sitzt.webp create mode 100644 remotion/public/folge02/figuren/noa_B_zeigen.webp create mode 100644 remotion/public/folge02/figuren/noa_ref_stehend.webp create mode 100644 remotion/public/folge02/figuren/pino_A1_augen-zu.webp create mode 100644 remotion/public/folge02/figuren/pino_A2_augen-halb.webp create mode 100644 remotion/public/folge02/figuren/pino_A3_lachen.webp create mode 100644 remotion/public/folge02/figuren/pino_A4_staunen.webp create mode 100644 remotion/public/folge02/figuren/pino_A5_blick-links.webp create mode 100644 remotion/public/folge02/figuren/pino_A6_blick-rechts.webp create mode 100644 remotion/public/folge02/figuren/pino_A7-1_gehen.webp create mode 100644 remotion/public/folge02/figuren/pino_A7-2_gehen.webp create mode 100644 remotion/public/folge02/figuren/pino_A7-3_gehen.webp create mode 100644 remotion/public/folge02/figuren/pino_A7-4_gehen.webp create mode 100644 remotion/public/folge02/figuren/pino_A8_rueckansicht.webp create mode 100644 remotion/public/folge02/figuren/pino_A_hinterbeine.webp create mode 100644 remotion/public/folge02/figuren/pino_A_kugel.webp create mode 100644 remotion/public/folge02/figuren/pino_A_laufen-1.webp create mode 100644 remotion/public/folge02/figuren/pino_A_laufen-2.webp create mode 100644 remotion/public/folge02/figuren/pino_A_laufen-3.webp create mode 100644 remotion/public/folge02/figuren/pino_A_laufen-4.webp create mode 100644 remotion/public/folge02/figuren/pino_B1_traurig.webp create mode 100644 remotion/public/folge02/figuren/pino_B2_erschrocken.webp create mode 100644 remotion/public/folge02/figuren/pino_B3_schlafen.webp create mode 100644 remotion/public/folge02/figuren/pino_B_blick-nach-oben.webp create mode 100644 remotion/public/folge02/figuren/pino_B_schlaeft-eingerollt.webp create mode 100644 remotion/public/folge02/figuren/pino_ref_sitzend.webp create mode 100644 remotion/public/folge02/orte/garten.webp create mode 100644 remotion/public/folge02/orte/garten_nacht.webp create mode 100644 remotion/public/folge02/orte/kalender.webp create mode 100644 remotion/public/folge02/orte/oben.webp create mode 100644 remotion/public/folge02/orte/zimmer_himmel.webp create mode 100644 remotion/public/folge02/orte/zimmer_tisch.webp create mode 100644 remotion/public/folge02/orte/zimmer_wand.webp create mode 100644 remotion/src/folge02/Folge02.tsx create mode 100644 remotion/src/folge02/buch.tsx create mode 100644 remotion/src/folge02/figur.tsx create mode 100644 remotion/src/folge02/helfer.tsx create mode 100644 remotion/src/folge02/lied.tsx create mode 100644 remotion/src/folge02/natur.tsx create mode 100644 remotion/src/folge02/orte.tsx create mode 100644 remotion/src/folge02/posen.ts create mode 100644 remotion/src/folge02/szene2.tsx create mode 100644 remotion/src/folge02/szene3.tsx create mode 100644 remotion/src/folge02/szene4.tsx create mode 100644 remotion/src/folge02/szene5.tsx create mode 100644 remotion/src/folge02/szene6.tsx create mode 100644 remotion/src/folge02/szene7.tsx create mode 100644 remotion/src/folge02/untertitel.tsx create mode 100644 remotion/src/folge02/zeit.ts create mode 100644 remotion/werkzeuge/clip_freistellen.py create mode 100644 remotion/werkzeuge/freistellen.py create mode 100644 remotion/werkzeuge/posen.py diff --git a/remotion/.gitignore b/remotion/.gitignore index 72aae85..813b922 100644 --- a/remotion/.gitignore +++ b/remotion/.gitignore @@ -1,2 +1,3 @@ node_modules/ out/ +public/folge02/clips diff --git a/remotion/README.md b/remotion/README.md index 3d69da6..fe71bbc 100644 --- a/remotion/README.md +++ b/remotion/README.md @@ -61,6 +61,44 @@ python3 werkzeuge/rig.py # braucht numpy, scipy, pillow und `uebersicht.png` prüfen. In einer Szene: `gelenk('lulu', 'hals', grad)` (siehe `src/szenen/VerformTest.tsx`). +## Folge 2 „Pino ist müde“ (`Folge02`) +Komplette Folge (ca. 5:20) nur mit Code, Figuren-Bibliothek und ohne Ton: +Untertitel ersetzen vorerst die Stimmen, Mitmach-Pausen zeigen ein „?“. + +| Pfad | Inhalt | +| --- | --- | +| `src/folge02/Folge02.tsx` | Reihenfolge der Szenen | +| `src/folge02/szene2.tsx` … `szene7.tsx`, `lied.tsx`, `buch.tsx` | die Szenen; jede hat oben ihre Sprechzeilen (`plane([...])`) | +| `src/folge02/zeit.ts` | Zeitplan aus den Zeilen; Dauer wird aus der Textlänge geschätzt | +| `src/folge02/figur.tsx` | `Figur` (Standbilder mit Posenwechsel), `ClipFigur` (freigestellte Clips), `Kamera` | +| `src/folge02/orte.tsx` | Orte als SVG; vorberechnet nach `public/folge02/orte/` | +| `src/folge02/natur.tsx` | Blätter, Nest, Vögel, Schnee, Zzz, Funkeln, große Rufe | +| `src/folge02/posen.ts` | automatisch erzeugt von `werkzeuge/posen.py` | +| `public/folge02/figuren/` | freigestellte Standbilder (WebP, im Git) | +| `public/folge02/clips` | Link auf `/shared/youtube/folge02/clips_frei/` (WebM mit Alpha, nicht im Git) | + +Orte neu vorberechnen (nach Änderungen in `orte.tsx`): +```bash +npx remotion still src/index.ts F2Ort-garten public/folge02/orte/garten.webp --image-format=webp +``` + +Rendern: +```bash +npx remotion render src/index.ts Folge02 /shared/youtube/folge02/folge02-vorschau.mp4 --gl=swangle +``` +Auf einem anderen Rechner fehlen die Clips: den Ordner +`/shared/youtube/folge02/clips_frei/` nach `public/folge02/clips/` kopieren. +Fehlt ein Clip, zeigt `ClipFigur` ein Standbild der Figur. + +**Ton nachrüsten (ElevenLabs):** Je Zeile die Audiodatei erzeugen, ihre +Länge als `dauer` in die Zeile eintragen und die Datei als `