Communitygithub.com

DrigoFelizardo/agroperforma-criativos-skill

使用 HyperFrames 從原始 4K 素材編輯 Instagram 直式創意廣告(AgroPerforma / Fábrica Blindada),包括選擇正確音訊軌道、透過音訊剪除停頓、結巴與重來,加上靜態字幕與品牌風格動態(綠色/藍色橫幅、橢圓、勾選、箭頭),套用 LUT 與漸層、以臉部置中進行平穩縮放避免黑邊、結尾淡出,並輸出 4K 24 fps。

agroperforma-criativos-skill 是什麼?

這個技能定義了一個完整的影片編輯管道,專為垂直格式的社群媒體創意廣告(Reels/Ads)所設計,特別針對 AgroPerforma 和 Fábrica Blindada 兩個品牌。它以 HyperFrames 為基礎,將每個創意廣告轉換為一個包含 JSON 配方 (`creative.base.json`) 的專案,再由 `template.html` 渲染成最終合成。流程強制分為三個階段:**剪輯**(從 4K 原始素材中選取音訊軌道、移除停頓與結巴)、**草稿**(透過 HyperFrames 快照產生關鍵畫面供審核)、以及**執行**(以 4K 24fps 進行最終渲染並檢查黑邊)。此技能也整合了 Apple Vision 的臉部偵測以實現智慧縮放、Whisper large-v3 進行精確語音轉文字,以及自訂腳本進行批次處理和渲染。它明確警告由於硬體限制,一次只能處理一個影片,並要求使用特定的 APFS 掛載磁碟區以避免 exFAT 問題。管道包含詳細的品牌規則(顏色、字型、動態),這些規則記錄在一個單獨的參考文件中,編輯前必須查閱。

相容平台~Claude Code~Codex CLI~Cursor
npx skills add DrigoFelizardo/agroperforma-criativos-skill

在你喜歡的 AI 中提問

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

說明文件

創意廣告 AgroPerforma · Fábrica Blindada

基於 HyperFrames 構建的直式創意廣告(Reels/Ads)編輯管道 (npx hyperframes …)。每個創意廣告變為一個專案,包含一個 JSON 格式的配方 (creative.base.json),由 template.html 轉換為合成結果。

詳細的客戶規則、決策和反饋記錄:references/regras-do-cliente.md。 編輯前請務必閱讀 — 它們的權威性高於此處的任何標準。

強制流程(3 次批准)

  1. 剪輯 → 輕量 1080p 預覽 (cut.py --preview) + 建議名稱(代碼 + 暱稱,例如 AP-08 · Tudo Depende de Você)。使用者批准。
  2. 草稿 → 動態效果/字幕的關鍵畫面 (hyperframes snapshot),非完整影片。若需更改動態(縮放),則發送 render -q draft 預覽。
  3. 執行 → 以 4K 進行精準剪輯(不含 --preview 的 cut.py)+ render4k.sh(4K 24 fps)+ barscan.sh(檢查黑邊)。

一次只處理一個影片,從頭到尾。 Whisper large-v3 + ffmpeg 4K + 平行渲染會導致 MacBook 過熱並重新啟動。

環境

  • 客戶的 SSD 是 exFAT 格式(無符號連結 → hyperframes init 會失敗)。請在掛載於 /Volumes/AGROPERFORMA-HF 的 APFS 磁碟區映像檔上工作(scripts/montar.sh)。所有腳本都假定使用此路徑:projetos/<código>/、projetos/_kit/(= 此 scripts/ + assets/ 資料夾)、_scratch/(暫存檔、faces.swift、shift.swift)。
  • 每個命令前都要執行 source scripts/env.sh:TMPDIR、歷史記錄和 HyperFrames 的快取都位於此磁碟區上,絕不在 Mac 的磁碟上。
  • 應用程式重新啟動時,磁碟區會卸載 — 在每個步驟前需重新掛載;長時間運行的任務請使用 nohup caffeinate -i。
  • 字型:Helvetica Now Display Bold(已授權 — 不在儲存庫中;請複製到 projetos/_kit/fonts/)。

步驟 1 — 剪輯

步驟工具
語音軌道(L 和 R 為不同麥克風;選擇較強者,確認方向出現時誰在說話)prep_lote.sh(音量 + 轉錄)
逐句轉錄的原始素材句子(Whisper 長時間停頓不準確)phrasemap.py <wav>
移除 > 0.2 秒的停頓,保留 0.07 秒的呼吸空間plan.py <wav> a:b … --gap 0.2 --pad 0.07
結巴("da, do"、"tem em, um, uma"、"cli… clica"):RMS 20 毫秒 + 合併候選區段並轉錄合併結果;隔離音節以確認fine.sh、chunk.sh
與畫面對齊的連續剪輯(單一 <video> → LUT 永遠不會"斷開"),兩側都使用選定的軌道,0.5 秒 + 0.7 秒淡出至黑色cut.py [--preview] [--no-fade] [--multi]

從實際語音開始處開始;在最後一個詞之後約 0.5 秒結束並淡出(例外:如果結尾時人物視線偏移 → 使用 --no-fade)。

步驟 2 — 配方 (creative.base.json)

{
  "theme": "green",                       // green = AgroPerforma (#62AE46) · blue = Fábrica Blindada (#1f4cd7/#0c1f51)
  "adjust": {"highlights": -0.25, "shadows": -0.15},   // 或 "exposure": 0.15
  "trackMode": "shot",                    // 每個縮放片段將臉部置中一次
  "cam": [{"start": 0, "end": 6.78, "s": 1.12, "to": 1.04, "cx": 0.5}],
  "captions": [["靜態文字", 1.12, 2.48]],
  "motions": [{"start": 5.45, "end": 6.78, "top": 900,
               "items": [{"text": "Tudo depende de você?", "at": 5.45, "kind": "secondary", "check": true, "ring": 5.8}],
               "arrow": 6.2}]
}
  • analyze.sh <projeto> → 逐畫格偵測臉部(Apple Vision)+ 剪輯的轉錄;caps.py 產生自動字幕(分組 2–4 個詞,修正 "Eo/Ea/Eaí",合併孤兒詞)。
  • mkcfg.py <projeto> → 完成縮放/追蹤並透過 build.py 產生 index.html。
  • 靜態字幕位於畫面中央,螢幕上有動態效果時則隱藏。
  • 類型:短(CTA ~10–15 秒)僅動態效果 · 中等字幕 + 關鍵詞動態效果 · -GRANDE 僅字幕 + 最終 CTA 動態效果。
  • 平穩縮放: 40 秒內約 5 個片段,每次切換間隔 ≥ 6 秒,僅在推理轉折時切換;交替拉近/拉遠。每個片段將臉部置中,逐畫格限制縮放邊界(絕不顯示邊框)。

步驟 3 — 執行

python3 scripts/cut.py "<bruto>.MP4" media/cut.mp4 L <a:b> …     # 4K
python3 scripts/mkcfg.py projetos/<código>
HF_DEST="<pasta EDICAO>" scripts/render4k.sh <código> <Nome>_v1_4K
scripts/barscan.sh "<pasta EDICAO>/<Nome>_v1_4K.mp4"              # 0 個畫格有黑邊

將所有內容記錄在專案的 PROJETO.md 中(原始素材、軌道、文字、輸出內容、版本)以及 projetos/CATALOGO.md 中。版本須編號,絕不可覆寫。

範例

examples/ 包含實際配方 (creative.*.json)、PROJETO.*.md、鉤子變體產生器 (ap08_variants.py — 相同主體,三個開場句子)以及渲染佇列 (fila_*.sh)。

相關技能