import {AbsoluteFill, spring, useCurrentFrame, useVideoConfig} from 'remotion'; import {Img} from 'remotion'; interface ScreenSlideProps { imageSrc: string; title: string; description?: string; width: number; height: number; } export const ScreenSlide: React.FC = ({ imageSrc, title, description, width, height, }) => { const frame = useCurrentFrame(); const {fps} = useVideoConfig(); // Zoom in animation const zoom = spring({ frame, fps, from: 0.95, to: 1, config: { damping: 12, stiffness: 80, }, }); // Fade in animation const opacity = spring({ frame, fps, from: 0, to: 1, config: { damping: 10, }, }); // Text overlay fade in (delayed) const textOpacity = spring({ frame: frame - 15, // Delay by 15 frames fps, from: 0, to: 1, config: { damping: 10, }, }); return ( {/* Screen Image */}
{/* Text Overlay */}

{title}

{description && (

{description}

)}
); };