import { AbsoluteFill, Img, interpolate, spring, useCurrentFrame, useVideoConfig, staticFile, } from "remotion"; export const FabroIntro: React.FC = () => { const frame = useCurrentFrame(); const { fps } = useVideoConfig(); // Symbol animation: scales up and fades in (frames 0-45) const symbolScale = spring({ frame, fps, from: 0.5, to: 1, durationInFrames: 45 }); const symbolOpacity = interpolate(frame, [0, 20], [0, 1], { extrapolateRight: "clamp" }); // Logotype slides up and fades in (frames 40-80) const logoOpacity = interpolate(frame, [40, 65], [0, 1], { extrapolateRight: "clamp" }); const logoTranslateY = spring({ frame: Math.max(0, frame - 40), fps, from: 30, to: 0, durationInFrames: 30 }); // Tagline fades in (frames 70-100) const taglineOpacity = interpolate(frame, [70, 95], [0, 1], { extrapolateRight: "clamp" }); // Subtle background glow pulse const glowOpacity = interpolate(frame, [0, 75, 150], [0.3, 0.6, 0.3]); return ( {/* Radial glow behind logo */}
{/* Symbol */}
{/* Logotype */} {/* Tagline */}
AI-Powered Workflow Orchestration
); };