AI PROMPT · 337
高端产品发布视频提示词
<inputs> 请向我询问以下内容:产品名称和一句核心承诺、3 到 5 个需要展示的 UI 时刻、一种强调色、10 到 20 段我拥有的真实竖屏视频片段,以及一首带有清晰高潮(drop)的免版税歌曲(例如来自 Mixkit,可免费商用)。 </inputs> <direction> 高端极简风格。每个镜头只表达一个概念,大量留白,仅使用一种强调色,搭配一款简洁的无衬线字体(Geist 或 Inter)并采用紧凑字距。使用遮罩文字揭示效果、匹配剪辑,以及统一流畅的运镜语言。仅使用真实素材,绝不使用占位卡片。屏幕上的文字不使用句号。 禁止使用:冲击波光环、粒子爆发、RGB 分离、相机抖动、镜头光晕、霓虹光效、网格地板、闪烁背景、弹跳缓动效果。 </direction> <structure> 共 10 个小节,速度为 120 BPM,每小节 2 秒。 第 1 小节:钩子文案逐字跟随节拍出现。 第 2 小节:其中一个钩子词汇变形过渡到产品 UI。光标进行输入和点击操作。 高潮部分:一个圆形从按钮中展开,进入暗色场景。 随后每个小节展示一个动作:一面由真实视频片段组成的墙,带有扫描线和 3 个优胜者;关键输出以大号文字呈现;一个包含真实视频的 3D 轮播,带有地面反射和动态模糊甩镜至单个主视觉片段;主视觉在手机中显示,旁边是一个翻转为结果的面板;在硬切点上展示大型统计数据;一个 3 词滚动条;Logo 揭示;淡出至黑屏。 </structure> <build> 1. 创建一个 1920x1080 分辨率的单一 HTML 文件。所有样式均根据时间计算 ):不使用 CSS 动画,不使用计时器,帧之间不保留状态。 2. 真实视频处理:使用 ffmpeg 将视频片段提取为 30fps 的 JPEG 序列,并按帧切换 img 源。seek 操作需等待图像解码完成。 3. 使用 numpy 分析歌曲:节奏、节拍网格、每小节能量、高潮点。将网格校准至真实的底鼓击打点。每次剪辑都落在强拍上,每次 UI 交互都落在节拍上。 4. 使用 Playwright 渲染:每帧渲染 3 个子帧,时间点分别为 t 减、t 当前、t 加 1/240 秒,然后使用 ffmpeg tmix 混合以实现 60fps 下的真实运动模糊。 5. 放置每个音效时,确保其测量到的峰值(而非文件起始点)与事件对齐。保持音效音量低于背景音乐。响度标准化至 -14 LUFS。 6. 在完整渲染前探测 20 帧或更多。修复任何杂乱、重叠或难以阅读的问题。 </build> <gotchas> 切勿对 preserve-3d 元素设置 opacity 或 filter,因为这会导致扁平化并使两面同时可见。应改为对其包装容器应用淡入淡出效果。在运行时测量元素位置以实现匹配剪辑。仅使用许可证允许商用的音乐和音效。 </gotchas> <start> 先向我询问输入信息,然后在编写任何代码之前,展示一个所有时间点都对齐节拍网格的分镜脚本。 </start>

VIDEO PREVIEW
视频预览
PROMPT
<inputs> Ask me for: the product name and a one-line promise, 3 to 5 UI moments to show, one accent color, 10 to 20 real vertical clips I own, and a royalty-free song with a clear drop (e.g. Mixkit, free for commercial use). </inputs> <direction> High-end minimal. One idea per shot, lots of empty space, one accent color, one clean sans (Geist or Inter) with tight tracking. Masked type reveals, match cuts, one smooth camera language. Real footage only, never placeholder cards. No full stops in on-screen text. Banned: shockwave rings, particle bursts, RGB split, camera shake, lens flares, neon glows, grid floors, flashing backgrounds, bouncy easing. </direction> <structure> 10 bars at 120 BPM, 2 seconds each. Bar 1: the hook lands word by word on the beats. Bar 2: one hook word morphs into the product UI. A cursor types and clicks. The drop: a circle opens out of the button into a dark scene. Then one move per bar: a wall of real clips with a scan line and 3 winners, the key output as big type, a 3D carousel of real videos with floor reflections and a motion-blurred whip onto one hero clip, the hero in a phone next to a panel that flips into results, big stats on push cuts, a 3-word ticker, a logo reveal, a fade to black. </structure> <build> 1. One HTML file at 1920x1080. Every style is computed from time inside seek(t): no CSS animations, no timers, no state between frames. 2. Real video: extract clips to 30fps JPEG sequences with ffmpeg and swap img sources per frame. seek awaits the image decodes. 3. Analyze the song with numpy: tempo, beat grid, energy per bar, the drop. Calibrate the grid to the real kick hits. Every cut sits on a downbeat, every UI hit on a beat. 4. Render with Playwright: 3 subframes per frame at t minus, at, and plus 1/240s, then blend with ffmpeg tmix for real motion blur at 60fps. 5. Place each sound effect so its measured peak, not its file start, lands on the event. Keep the effects quiet under the music. Loudnorm to -14 LUFS. 6. Probe 20 or more frames before the full render. Fix anything cluttered, overlapping or hard to read. </build> <gotchas> Never set opacity or filter on a preserve-3d element, because it flattens and both faces show. Fade its wrapper instead. Measure element positions at runtime for match cuts. Only use music and sound effects whose license allows commercial use. </gotchas> <start> Ask me for the inputs, then show me a storyboard with every timing on the beat grid before you write any code. </start>
