Vox 風格解說影片管線
從單一主題產出完整的、有旁白、有字幕、有配樂的解說影片。管線分六個階段進行,每個階段產出的成品供下一階段使用。旁白在動畫『之前』生成,因為旁白長度決定了所有的時間設定。
TOPIC → 1.劇本 → 2.旁白 → 3.關鍵幀 → 4.動畫 → 5.音樂 → 6.組裝
(Claude) (xAI TTS) (Seedream) (Omni Flash) (MiniMax) (ffmpeg)
先決條件
- 設定
ATLASCLOUD_API_KEY環境變數(可在 atlascloud.ai 取得——註冊即贈送免費額度) - 安裝
ffmpeg與ffprobe(需支援 libass 以燒錄字幕) - Python 3.10+ 並安裝
requests - 每 60 秒影片約需 $3–8 美元的 API 額度(參閱
references/atlas-cloud-api.md的費用表)
在進行任何 API 呼叫之前,請先到 https://www.atlascloud.ai/docs 確認目前的端點路徑與模型 ID——媒體模型的 API 更新很快。references/atlas-cloud-api.md 中的範例已於 2026 年 7 月驗證。
專案結構
每個影片都建立此目錄結構並保留它——每個階段都會從中讀取與寫入:
project/
├── brief.md # 主題、切入角度、目標長度、觀眾
├── script.json # 節拍表,包含旁白、鏡頭描述、字幕
├── audio/
│ ├── vo/ # beat_01.mp3 ... beat_NN.mp3
│ ├── vo_durations.json
│ └── music.mp3
├── frames/ # keyframe_01.png ... style_anchor.png
├── clips/ # clip_01.mp4 ... (無聲動畫片段)
├── subs/ # captions.ass
└── final/ # film.mp4
第一階段——劇本
由你自己撰寫,無需呼叫 API。這是影響品質最關鍵的階段——一個好劇本搭配普通畫面,效果遠勝過普通劇本加上華麗畫面。
在動筆之前,請先閱讀 references/vox-style-guide.md(寫作章節)。核心規則:
- 以節拍為結構。 一個節拍 = 一段旁白(1–3 句,口語長度 8–14 秒)加上一個畫面。60 秒影片約 6–8 個節拍;3 分鐘約 16–22 個節拍。
- Vox 敘事弧線: 冷開場鉤子(一個令人驚訝的具體事實或問題)→ 背景脈絡(「要理解 X,必須回到……」)→ 逐步解釋,保持一條清晰主線 → 轉折或複雜面 → 結局,重新詮釋開場的鉤子。
- 語氣: 用第二人稱歡迎(「你可能看過……」),用現在式敘述歷史,用具體數字而非抽象概念,用簡短明確的句子。不要廢話,不要說「在這支影片中我們要」。
- 一個節拍一個想法。 如果一個句子引進第二個概念,請將該節拍拆開。
撰寫 script.json:
{
"title": "Tang Golden Age",
"topic": "How Tang Dynasty China built the world's largest city",
"style_seed": "mixed-media paper collage, ink-wash Chinese mountains, vermillion red and aged cream palette",
"accent_color": "#C0392B",
"beats": [
{
"id": 1,
"narration": "In the seventh century, Tang China built Chang'an — the largest, richest city on Earth. The whole world came to its gates.",
"visual": "Emperor Taizong enthroned at center as paper cutout, court figures flanking, pagodas and ink-wash mountains behind, red seal stamp upper right reading 盛唐",
"caption_text": null,
"motion": "slow push-in on emperor, clouds drift left, subtle parallax between cutout layers"
}
]
}
caption_text 用於螢幕上的動態字體排版(關鍵數據或術語)——大多數節拍保持 null;旁白字幕在組裝階段處理。motion 將成為第四階段的動畫提示。
第二階段——旁白(xAI TTS v1)
為每個節拍生成一個音檔,然後測量其長度。這些長度是整個影片的主時鐘。
透過 Atlas Cloud 的音頻端點為每個節拍生成(模型:xAI TTS v1——請參閱 references/atlas-cloud-api.md 了解確切的請求格式與語音選擇指南)。為整部影片選擇一個語音。Vox 風格:沉穩、溫暖、略帶嘲諷——避免「電影預告片」式的語調。
生成後,偵測每個檔案並寫入 audio/vo_durations.json:
ffprobe -v error -show_entries format=duration -of csv=p=0 audio/vo/beat_01.mp3
{"beats": [{"id": 1, "file": "audio/vo/beat_01.mp3", "duration": 9.83}], "total": 61.2}
確認總長度與 brief 相符。如果某個節拍太長,請縮短旁白並只重新生成該節拍。
第三階段——關鍵幀(Seedream 5.0 Pro)
每個節拍生成一個關鍵幀,所有幀的視覺風格必須一致。一致性是最困難的問題;透過風格錨點模式來解決:
- 生成錨點。 對節拍 1(通常是標題/鉤子幀)使用
bytedance/seedream-v5.0-pro/text-to-image。提示詞由references/vox-style-guide.md(視覺語法章節)中的風格區塊 + 該節拍的visual+ 影片的style_seed和accent_color組成。要求 16:9、2K。 - 在繼續之前先審查錨點。 重複生成直到風格正確——其他所有幀都會繼承它。
- 使用編輯模型生成其餘幀。 使用
bytedance/seedream-v5.0-pro/edit,並以錨點作為參考圖像(最多支援 10 張參考;錨點 + 可選前一幀)。提示詞:「保持參考圖的確切藝術風格、調色板、紙拼貼處理和邊框。新場景:{節拍.visual}」
這樣就能像人類藝術總監一樣鎖定整個影片的配色、紋理和構圖。
每個提示詞都應以風格後綴(參閱風格指南)結尾,該後綴編碼了 Vox 的外觀:帶白邊的紙雕、網點、膠帶條、大膽扁平的幾何裝飾、寬闊的邊距、單一強調色。
如果某個幀設定了 caption_text:指示 Seedream 用粗體無襯線字體呈現文字,因為 Seedream 5.0 Pro 的字體渲染能力很強。每個幀的文字不超過 5 個單詞。
第四階段——動畫(Gemini Omni Flash)
將每個關鍵幀透過圖像轉影片的方式製作成影片片段。目標片段長度 = 該節拍的旁白長度 + 0.5 秒緩衝時間(無條件進位到模型支援的增量)。
拼貼美學的動畫提示詞應該精細——這是最常見的失敗模式。Vox 風格是「動態圖像設計」,而不是「實拍影片」。良好的動畫詞彙:
- 緩慢推鏡/拉鏡(2D 相機,非 3D 推車)
- 剪紙層之間的視差移動
- 雲霧水平飄移
- 紙元素從畫面邊緣滑入並靜止
- 網點或紋理微微閃爍
- 單一元素動畫(旗幟飄揚、水波漣漪),其他部分保持靜態
在每個提示詞中明確禁止:「無相機抖動、無 3D 旋轉、無面孔或文字變形、無風格偏移、元素保持平面紙雕。」
輪詢每個生成任務直到完成,並下載到 clips/clip_NN.mp4。生成有時會失敗或偏移——審查每個片段;如果文字扭曲或風格被破壞,則重新生成。預留約 15% 的重新生成預算。
第五階段——音樂(MiniMax Music 2.6)
為整部影片生成一首純音樂配樂。請求 is_instrumental: true——人聲會與旁白衝突。
提示詞公式:{情緒} {類型的質感}, {節奏}, {樂器}, {弧線}。歷史主題的範例:「沉思的電影襯底音樂、鋼琴與柔和弦樂搭配輕微的打擊樂脈動、90bpm、從稀疏逐漸豐富、紀錄片風格」。樂器應與主題匹配(唐朝作品用古箏/笛子質感;科技主題用類比合成器脈動)。
Music 2.6 生成固定長度的歌曲;如果音軌比影片短,在組裝時循環播放並加上淡出/淡入;如果太長,則修剪並淡出。切勿讓音樂弧線與影片弧線衝突——在中段突然下降並落在安靜的節拍上會很突兀,因此請將結果與影片的整體結構進行比對。
第六階段——組裝(ffmpeg,本地)
閱讀 references/ffmpeg-assembly.md 取得完整配方。流程如下:
- 將每個片段依照其節拍的旁白長度進行修剪(或定格最後一幀),標準化為 1920x1080 30fps。
- 依序串聯所有片段。
- 建立旁白音軌:將節拍音檔串聯起來,中間加入 0.5 秒間隔以匹配影片時間。
- 從劇本生成
subs/captions.ass——Vox 風格的燒錄字幕:粗體無襯線字體、白色帶厚重黑色外框、底部置中、最多兩行、在子句邊界處分割旁白,並在該節拍的時間窗口內為每個區塊設定時間。 - 混音: 旁白保持全音量,音樂在旁白進行時降低 -12 到 -15dB(側鏈壓縮或簡單的音量自動化——配方在參考文件中)。
- 燒錄字幕 + 出處標示(可選,在右下角用小字顯示「使用 …… 製作」)並編碼:H.264、CRF 18、AAC 192k、
-movflags +faststart。
交付前的最終 QC 檢查:檢查 (a) 字幕與旁白同步偏移、(b) 音樂壓過旁白、(c) 片段動畫明顯循環、(d) 幀之間風格不一致。在問題發生的階段修復,而不是用組裝技巧來掩蓋。
編排注意事項
- 首次執行時嚴格依序進行;之後任何階段都可以獨立重新執行,因為所有狀態都存在於專案檔案中。
- API 生成很慢(影片片段:每個 1–4 分鐘)。同時提交所有動畫任務,然後輪詢——不要序列化。
- 將你發送的每個提示詞記錄在
prompts.log檔案中——可重現性很重要,而且使用者會想要微調並重新生成單一節拍。 - 成本與節拍數線性相關。在第三階段(第一個主要付費階段)之前向使用者提供粗略成本估算:
節拍數 × ($0.10 圖像 + 每個 10 秒片段約 $1.20) + 約 $0.50 音頻。
參考資料
references/vox-style-guide.md——在第一階段和第三階段之前閱讀。包含視覺語法、寫作語氣和提示詞範本。references/atlas-cloud-api.md——在第二階段之前閱讀。包含端點、模型 ID、非同步任務模式、輪詢程式碼和費用。references/ffmpeg-assembly.md——在第六階段之前閱讀。包含標準化、串聯、字幕、側鏈壓縮和編碼的配方。