Communitygithub.com

產品廣告影片

完全以程式碼製作的短產品廣告/發布影片 — 使用 Remotion 製作 2D 動態圖形,或使用 Blender 編寫 3D「蘋果風格」產品廣告,並搭配合成音效、背景音樂和 AI 旁白,輸出為 MP4。當有人為其專案、應用程式或儲存庫要求製作宣傳影片、發布影片、動態圖形、產品廣告、解說短片或「像 Spotify/AirPods 廣告那樣的影片」時使用。

產品廣告影片 是什麼?

這項技能透過將所有元素(包括視覺效果、音效、音樂和旁白)完全以程式碼生成,實現了 15-20 秒產品廣告影片的創建,無需使用任何傳統影片編輯器。其核心管道從產品簡報和分鏡腳本開始,然後分為兩條路徑:使用 Remotion(基於 React)的 2D 動態圖形路線,或使用 Blender 腳本進行無頭渲染的 3D「蘋果風格」路線。音效和音樂透過 `scripts/score.py` 從頭合成,並可選擇使用 `scripts/kokoro_tts.py` 透過 AI 旁白加入語音,所有內容都根據精確的影格號碼同步。最後輸出為標準 MP4 檔案,完全可重現且可像文字一樣編輯。該技能支援開發者工具、應用程式或任何需要視覺化呈現的專案,提供「Spotify Wrapped」風格的 2D 美學或光線反射 3D 產品英雄展示。它透過數值檢查而不是聽覺檢查來驗證音訊,使其特別適合無法「聽」到音訊的 AI 代理,同時仍能確保正確的對白和時間點。

相容平台~Claude Code~Codex CLI~Cursor
npx skills add https://github.com/Dhananjay-alt/product-ad-video-skill/tree/HEAD/product-ad-video

在你喜歡的 AI 中提問

開啟一個已預先載入此 Agent Skill 的新對話。

說明文件

產品廣告影片,以程式碼製作

一個 15-20 秒產品廣告的管道,無需影片編輯器:每個影格、聲音和旁白都由腳本產生,因此整個過程可重現且可像文字一樣編輯。

專案事實 ─► 簡報 + 分鏡腳本 ─► 視覺效果 ─────────────► Remotion 渲染 ─► MP4
                                       ├ 2D:React (Remotion)       ▲
                                       └ 3D:Blender (無頭模式) ─► JPG 影格
                                       音效:scripts/score.py ─► WAV ┘
                                       旁白:scripts/kokoro_tts.py ─┘

實際範例(GhostCommits,真實檔案):examples/ghostcommits/。

步驟 1 — 了解產品,編寫簡報

閱讀 README、落地頁面和程式碼。提取:一句話介紹、3-4 個具體證明點(數字優於形容詞:「1 個檔案」、「0 次登入」),來自 CSS 的品牌顏色、Logo SVG、網址。寫下哪些是不得聲稱的(例如「僅限測試網」、「非匿名」、沒有使用者數量)。畫面上的每一行文字和旁白都會根據此列表進行檢查。僅當品牌尚未定義調色盤/風格時,才要求使用者選擇。

步驟 2 — 分鏡腳本(在開始建置前將其寫入 .md 檔案)

18 秒,30 fps = 540 個影格。5-6 個鏡頭,每個約 2.5 秒(75 個影格 = 96 BPM 下的一個小節,因此剪輯點會落在節拍上)。每個鏡頭:影格、攝影機/運動、畫面上文字、音效。以 3-4 秒的結束卡片(名稱、標語、網址)結尾。範本:references/storyboard.md。

步驟 3a — 2D 風格(Remotion)

動態文字 + 平面形狀,具有「Spotify Wrapped」的能量。請參閱 references/remotion-2d.md。 npx create-video@latest --yes --blank --no-tailwind video,然後為每個廣告建立一個元件,僅由 useCurrentFrame() + 帶有緩動效果的 interpolate 驅動。不使用 CSS 過渡。

步驟 3b — 3D 風格(Blender,無頭模式)

黑色虛空中的光澤英雄物件,微距特寫,光線條紋劃過表面,硬切,大統計數字 + 左下角的小說明文字。請參閱 references/blender-3d.md。 一個 Python 腳本建構場景,為每個鏡頭設定關鍵影格並渲染影格: blender -b --factory-startup -P scene.py -- anim ../public/frames。Remotion 將文字疊加在影格上(examples/ghostcommits/GhostAdV2.tsx)。先渲染 2-3 張靜止畫面並在完整動畫之前查看它們。

步驟 4 — 音效(scripts/score.py)

編寫一個 JSON 提示表:每個視覺事件一個條目,以來自動畫程式碼的影格編號為鍵(剪輯 → cut_hit,物體飛入 → whoosh,落地 → click/lock,光線條紋 → glint,結束卡片 → impact,鋪墊 → riser)。然後執行 python scripts/score.py cues.json。 它合成所有音效(無樣本,無授權),添加一個在 break_frame 下降並在 end_frame 解決的 96 BPM 背景音樂,並印出每秒響度,以便無需聆聽即可進行合理性檢查。詳細資訊和增益指南:references/sound.md。

步驟 5 — 旁白(可選)

簡短台詞,≤ 6 個字,每個鏡頭一句,與畫面上的文字匹配。最佳免費選項: python scripts/kokoro_tts.py lines.txt vo/(託管的 Kokoro,提供 3 種聲音進行比較)。將檔案新增到提示表的 voiceover 列表中,起始時間 = 該鏡頭文字出現的時間;score.py 會修剪靜音並在旁白下降低音樂音量。測量每行台詞的長度,確保它在下一句開始前結束。選項和教訓:references/voiceover.md。

步驟 6 — 渲染和交付

在組合中加入 <Html5Audio src={staticFile("audio/soundtrack.wav")} />,然後執行 npx remotion render <CompositionId> out/ad.mp4。將 MP4 發送給使用者。明確說明您無法聽到音訊:電平與時間點是透過數值方式檢查的,而不是透過聽覺。

重要規則

  • 誠實文案:不得聲稱產品無法支持的內容;在畫面上保留注意事項(beta、測試網)。
  • 不要重新創作特定品牌的廣告(標誌、音樂、角色)— 僅借用其風格。
  • 文字在 1080p 下 ≥ 48 px,在畫面上停留 ≥ 1.2 秒,位於左下角或居中,切勿覆蓋在英雄物件的臉上。
  • 在完整渲染之前先渲染靜止畫面;檢查每個鏡頭中的一個影格。
  • 將產生的影格/音訊排除在 git 之外(.gitignore);提交腳本 + 分鏡腳本。

相關技能