youtube/remotion/src/Root.tsx
2026-11-05 14:01:17 +00:00

46 lines
2.7 KiB
TypeScript

import React from 'react';
import {Composition} from 'remotion';
import {HintergrundAbend, PapierStruktur, VordergrundAbend} from './szenen/Hintergruende';
import {LaterneTest} from './szenen/LaterneTest';
import {VerformTest} from './szenen/VerformTest';
import {FolgenKompositionen} from './baukasten/folge';
import {NEST_BILD} from './baukasten/natur';
import {NestStill, ORTE, OrtStill} from './baukasten/orte';
import {F01} from './folge01/Folge01';
import {F02} from './folge02/Folge02';
import {F03} from './folge03/Folge03';
import {Banner, BannerRahmen, Profilbild} from './kanal/KanalBilder';
import {VorschauF01} from './kanal/Vorschaubild';
import {ShortKompositionen} from './shorts/Short';
import {SHORTS_F01} from './shorts/folge01';
import {SZENEN as SZENEN_F01} from './folge01/Folge01';
import {LIED01_DAUER, Lied01} from './lieder/lied01/Lied01';
import {LIED03_DAUER, Lied03} from './lieder/lied03/Lied03';
const BILD = {fps: 30, width: 1920, height: 1080} as const;
export const Root: React.FC = () => (
<>
<Composition id="Lied01" component={Lied01} durationInFrames={LIED01_DAUER} {...BILD} />
<Composition id="Lied03-DE" component={Lied03} durationInFrames={LIED03_DAUER} {...BILD} />
<Composition id="LaterneTest" component={LaterneTest} durationInFrames={420} {...BILD} />
<Composition id="VerformTest" component={VerformTest} durationInFrames={240} {...BILD} />
<Composition id="HintergrundAbend" component={HintergrundAbend} durationInFrames={1} {...BILD} />
<Composition id="VordergrundAbend" component={VordergrundAbend} durationInFrames={1} {...BILD} />
<Composition id="PapierStruktur" component={PapierStruktur} durationInFrames={1} {...BILD} />
<FolgenKompositionen folge={F01} />
<FolgenKompositionen folge={F02} />
<FolgenKompositionen folge={F03} />
<ShortKompositionen szenen={SZENEN_F01} shorts={SHORTS_F01} />
<Composition id="Kanal-Profilbild" component={Profilbild} durationInFrames={1} fps={30} width={800} height={800} />
<Composition id="Vorschau-F01" component={VorschauF01} durationInFrames={1} {...BILD} />
<Composition id="Kanal-Banner" component={Banner} durationInFrames={1} fps={30} width={2560} height={1440} />
<Composition id="Kanal-Banner-Rahmen" component={BannerRahmen} durationInFrames={1} fps={30} width={2560} height={1440} />
{(['hinten', 'vorne'] as const).map((seite) => (
<Composition key={seite} id={`F2Nest-${seite}`} component={NestStill} defaultProps={{seite}} durationInFrames={1} fps={30} width={NEST_BILD.b} height={NEST_BILD.h} />
))}
{Object.keys(ORTE).map((name) => (
<Composition key={name} id={`F2Ort-${name.replace(/_/g, '-')}`} component={OrtStill} defaultProps={{name}} durationInFrames={1} {...BILD} />
))}
</>
);