Communitygithub.com

uttamongithb/editorial-reel-video

建立高留存率的技術解說短片與 Reels,採用瑞士編輯字體排版、關鍵字徽章提示、簡潔科技美學(無花卉裝飾)、動態場景轉換、嚴格的時間/速度縮放(例如精確 60 秒 Reels)、根據語音表情對應主講人剪影、專業音訊混音(-14 LUFS),以及從旁白腳本直接生成主題特定的動畫圖表(例如洋蔥路由網路流量、帶有層層剝離的封包路由、終端機執行、架構圖)。建構於 HyperFrames、Playwright 和 FFmpeg 之上,無需付費 API。

editorial-reel-video 是什麼?

此技能專門用於自動化製作病毒式傳播、高留存率的技術解說短片,特別適用於 Reels 或 Shorts 格式。它能夠從結構化的旁白腳本,生成符合嚴格時間限制(例如精確 60 秒)的影片,並融入瑞士編輯風格排版、動態場景過渡、以及連續的主題動畫(如洋蔥路由的封包傳遞)。技能的核心在於其對「嚴格節奏」的堅持,透過調整 TTS 語速(160-180 WPM)、映射語音表情(好奇、解釋、戲劇化等)至主講人剪影的特定姿勢,並遵循一套名為「v7 生產架構」的七條佈局與運動法則,來確保每支影片都具有專業的視覺節奏與聽覺衝擊力。它支援多種平台(HyperFrames、Playwright)並完全依賴開源工具(FFmpeg),無需任何付費 API,非常適合需要批量、高效率產出高品質技術內容的開發者、內容創作者或教育團隊。

相容平台~Claude Code✓Codex CLI✓Cursor
npx skills add https://github.com/uttamongithb/video-skill/tree/HEAD/skills/editorial-reel-video

在你喜歡的 AI 中提問

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

說明文件

概念與編輯式 Reel 影片技能

此技能教導代理如何為任何主題(例如:洋蔥路由 Tor、網路、資料庫、系統架構、Git、AI)製作病毒式傳播、高留存率的技術與教育解說影片,嚴格遵循目標節奏(例如 60 秒 Reels),並包含豐富的場景轉換、語音表情映射、主講人剪影和持續的技術動畫。


1. 關鍵原則與製作要求

A. 嚴格節奏與時長遵守(60 秒法則)

  • 如果腳本指定了場景時間戳(例如 0–7 秒、7–16 秒、16–27 秒、27–42 秒、42–50 秒、50–60 秒),代理必須強制執行確切的目標時長。
  • 預設的 TTS 語速通常太慢(約 110 WPM)。生成器必須使用 FFmpeg 的 atempo 功能(保持音高)來調整音訊播放速度,以達到病毒式 Reels 的速度(160–180 WPM),並鎖定在精確的 60 秒總時長。

B. 代理 TTS 執行與語音表情標準(病毒留存藍圖)

配備內建 TTS 引擎(例如 Edge-TTS、ElevenLabs、Azure Speech、OpenAI)的代理不得使用預設的平淡/單調設定。預設 TTS(110–120 WPM)會在最初 2 秒內流失短影音觀眾。代理必須注入病毒式節奏參數:

  • 速度與節奏:強制使用病毒式 Reels 速度(160–180 WPM 或 rate: +15% 到 +20%)。
  • 音高與語調:在疑問句和鉤子上注入富有表現力的音高變化(pitch: +4Hz 到 +8Hz)。
  • 微暫停:在重點詞(例如在 「十幾個信封!」 之前)之前插入 100–180 毫秒的戰術性停頓(<break time="180ms"/>)。
  • 表情標籤映射:
    • [curious]:快速開場(170 WPM),疑問句尾音上揚(pitch: +8%),陰謀般的趣味。
    • [explaining]:穩健(155–165 WPM),咬字清晰,在技術術語前加入 60 毫秒停頓。
    • [dramatic]:較慢速度(145 WPM),音高降至胸腔共鳴(-5%),鏗鏘有力的斷音強調。
    • [confident]:前進推動的節奏(165 WPM),共鳴胸腔音色,句尾上揚。
    • [excited]:高速度(180 WPM),音高提升(+10%),在名詞上有尖銳的節奏衝擊。
    • [playful] / [laughing]:對話式節奏(165 WPM),可聽見的輕笑/微笑氣息,頑皮的語氣。
  • 逐字字幕:從 TTS 提取詞彙時間戳,以驅動底部區塊上的逐字動態高亮(.word-active 黃色發光 #FFE600)。
  • 主音訊藍圖:
    • 旁白音量標準化至 -16 LUFS,使用 loudnorm=I=-16:TP=-1.5:LRA=7。
    • 背景音樂音量設定為 0.15(= -29 LUFS,剛好比語音低 13 LU)。零側鏈壓縮(13 LU 的差距就是壓縮效果)。
    • 音效匯流排(0.20 增益):pop.wav 應用於每次場景切換(0.50 增益),riser.wav 應用於大型場景轉變前 0.3 秒(0.28 增益),click.wav 應用於 UI 元素落下時(0.40 增益),chime.wav 應用於揭示時(0.38 增益),notify.wav 應用於呼籲行動時(0.35 增益)。
    • 主輸出:-14 LUFS 整合,真實峰值 <= -1.0 dBTP。
    • 請參閱 references/voice_audio_and_cutout_guide.md 以獲取完整的 SSML 片段和各引擎專屬設定。

C. 主講人剪影架構(定位點 5)

每個場景都包含一個富有表情的主講人剪影,固定於右下角(top: 63.4%,距右側 x: 20.7%,腰部被畫面邊緣裁切,位於下方文字區塊之下)。姿勢直接對應語音表情標籤:

  • [curious] ➔ p1_shrug.png(攤開手掌,睜大眼睛,興奮的笑容)
  • [frustrated] ➔ p2_facepalm.png(手掌扶額,苦臉)
  • [confident] ➔ p3_present.png(張開雙臂,登登登的姿勢,自豪的微笑)
  • [explaining] ➔ p4_chin.png(輕點下巴,狡黠的半笑,教學姿勢)
  • [analogy] / [recalling] ➔ p5_memory.png(抓頭,小小的頓悟)
  • [excited] / [numbers] ➔ p6_thumbs.png(豎起大拇指,大大的燦爛笑容)
  • [playful] / [laughing] / [cta] ➔ p7_cta.png(指著觀眾,頑皮的笑容)
  • [dramatic] / [look] ➔ p8_point.png(直接指向畫面外的指尖)
  • [revelation] ➔ p9_idea.png(靈光一閃,手指向上,睜大眼睛)
  • 請參閱 references/voice_audio_and_cutout_guide.md 以獲取完整的圖像生成提示和去背遮罩說明。

D. 動態場景轉換(無生硬切換)

每個場景轉換都必須使用主動的運動過渡:

  • 傾斜雙頻帶擦除(wipe.html):標誌性的 -11度 斜向掃掠,包含抵達場景的背景色 + 120 像素強調色邊緣條紋,交替水平方向(flip: 0 對比 flip: 1)。
  • 鏡頭推近:縮放過渡進入網路節點或架構圖層(scale: 0.85 -> 1.0)。
  • 終端機故障閃爍:進入程式碼/終端機環境時的快速色差閃爍。
  • 請參閱 references/v7_layout_and_transitions_guide.md 以獲取完整的幾何規格和 GSAP 時間軸規格。

E. 持續的主題特定動畫

永遠不要顯示靜止的圖表。所有視覺元件都必須具有連續的反應式運動:

  • 封包路由與層層剝離:在 Tor 和網路解說中,顯示動畫封包實際穿過節點,在過程中剝離加密層(綠色守衛層、黃色中間層、紅色出口層)。
  • 反應式節點點亮:當封包經過時,節點會發光、脈動,並切換狀態徽章(WAITING → ACTIVE → DECRYPTED)。
  • 互動式終端機視窗:即時打字指令執行、即時電路日誌和閃爍的區塊游標。

F. 瑞士編輯字體排版系統

  • 嚴格靠左對齊,邊距整潔。
  • 3 層級層次結構:寬字距的引導字(#)、大型疊加標題、以及高對比度的矩形關鍵字徽章膠囊([...])。
  • 遮罩滑入動畫(overflow: hidden)。
  • 零花卉裝飾。簡潔、極簡風格的頂部技術標題欄。

2. 快速開始:語音腳本到影片

每當使用者提供帶有表情的腳本時:

[HOOK — 0–7 秒 | 好奇 + 神秘]
[curious] "Bhai, kabhi socha hai Tor Browser tumhari identity hide kaise karta hai? Tum website open karte ho, lekin tumhari request seedha website tak nahi jaati!"

[路徑選擇 — 7–16 秒 | 興奮 + 解釋]
[explaining] "Instead, Tor apne network se teen computers select karta hai — Guard Node, Middle Node aur Exit Node. Aur in teeno se milkar banta hai tumhara secret route!"

代理執行管線:

# 1. 解析章節,提取表情,映射主講人姿勢
python scripts/process_vo.py

# 2. 根據 7 條法則驗證設計並寫入令牌
python scripts/prepare.py

# 3. 組合場景並編譯主 index.html
python scripts/build_index.py

# 4. 以 30 FPS 渲染決定性幀
python scripts/render_video.py

# 5. 混音:旁白 (-16 LUFS) 與背景音樂 (-29 LUFS) 及音效,並封裝
python scripts/mix_audio.py
python scripts/qc.py

3. V7 生產架構:版面與轉換

此技能採用經過生產驗證的 v7 Reel 管線(PARAMS.json -> prepare.py -> new_scene.py -> build_index.py -> mix_audio.py -> qc.py):

A. 版面與運動七法則

  1. 單一定位點網格,底部固定:
    • 定位點 1(引導字):類別/上下文標籤,位於 Y = 0.0667,帶有強調破折號 <i></i>。
    • 定位點 2(主標題):高衝擊力壓縮顯示詞語(1–3 個字),使用 Anton 字體,位於 Y = 0.1006。
    • 定位點 3(證明內文):動態證明卡(A: 卡片主導)、里程表(B: 統計主導)或 2 行陳述(C: 類型主導),位於 Y = 0.3010。
    • 定位點 4(語音區塊):口語句子膠囊,位於 Y = 0.5875,帶有強調點 <b></b>。在場景之間永不移動。
    • 定位點 5(主講人):被畫面邊緣裁切的人物,位於 Y = 0.6340,帶有自適應光暈(#sX-glow)。在場景之間永不移動。
  2. 主標題是一個詞,區塊是一行,卡片是細節:
    • 主標題:1–3 個詞(Anton 字體,佔畫面寬度 17–25%,行高 0.88)。
    • 區塊:3–6 個詞(手機用戶會閱讀的那一行)。
    • 卡片:具體證明(檔案列表、關鍵字差異、終端機、上傳進度、分數儀表)。
  3. 六色域色彩循環:
    • 強調色 → 底色 → 墨色 → 次要色 → 第三色 → 第四色。連續兩個場景不得共用背景。
  4. 證明,而非裝飾:
    • 每張卡片都必須顯示真實證明(4–6 行或佔卡片面積 ≥ 55% 的模擬圖)。如果沒有證明,則使用 type-led(定位點 3C)並省略卡片。
  5. 第 0 幀是一張海報(data-cover="1"):
    • 場景 1 在 t = 0.0s 時組合完畢:引導字、主標題、卡片和主講人均已可見。語音區塊在 0.65 秒 時落下。零空白開場幀。
  6. 僅限變換的運動與提前落地:
    • 入場動畫在每個節拍的前三分之一時間內落地(0.24 秒 – 0.34 秒,power3.out)。絕不補間文字內容或 innerHTML。
    • 長場景包含一個微妙的持續漂移(tl.to("#sX-hero", { y: -14, duration: 0.7 }))以保持視覺活力。
  7. 聲音作為標點符號:
    • 程序化音效(每次切換的 pop、UI 行上的 click/key、揭示時的 chime、呼籲行動時的 notify)。總輸出母帶為 -14 LUFS 且 <= -1 dBTP。

B. 雙頻帶傾斜擦除轉換(wipe.html)

  • 幾何形狀:雙頻帶傾斜掃掠,傾斜 -11度(transform: skewX(-11deg))。
  • 結構:#w-main(到達場景的背景色) + #w-edge(120 像素強調色條紋)。
  • 方向交替:在每個場景水平翻轉(flip: 0 由左至右,flip: 1 由右至左)。
  • 排程:由 build_index.py 在每次剪輯前 0.36 秒 自動觸發,持續時間會根據場景長度自適應縮放(0.34 秒 – 0.62 秒)。

4. 參考資料與文件

Individual skills in this repo

This repo contains 1 individual skill — each has its own dedicated page.

相關技能