你可能看過一支「真人」正對鏡頭講解產品,口型自然、聲音穩定,最後才發現:那個人根本沒有開相機。這就是AI 數字人口播最吸引創作者的地方——同一張授權人像、同一個授權聲音,可以反覆製作知識短片、課程導讀與多語版本。
但真正能長期使用的做法,不是把照片丟進某個網站就祈禱成片自然。這篇專為第一次接觸 API 與 Codex Skill 的創作者寫;不用先會寫程式,我會帶你從素材、安裝、15 秒樣片、人工驗片一路走到完整版,並把最容易燒錢或洩漏金鑰的地方先堵住。
先說結論:AI 數字人口播是一條流水線,不是一個模型
先記住這句公式:AI 數字人口播=MiniMax 聲音+HeyGen 畫面+Codex 流程控制+人工批准點。MiniMax 把文案念成指定音色;HeyGen 用音訊驅動人像;Codex 依 Skill 檢查素材、記錄工作 ID、輪詢狀態;你負責決定樣片是否過關。
換句話說,Codex 不是替你「演」數字人,而是當製片助理。它把容易忘記的步驟寫成固定順序:素材檢查 → 配音 → 15 秒樣片 → 人工確認 → 完整版 → 下載驗片 → 狀態歸檔。

AI 數字人口播的 4 個角色,各自負責什麼?
- MiniMax=「配音員」。先用授權錄音建立
voice_id,再以 TTS 把文案輸出成 MP3。現行官方文件列出speech-2.8-hd與speech-2.8-turbo;前者偏品質,後者偏速度與成本。 - HeyGen=「鏡頭前的人」。使用
type: "image"可直接把人物照片變成影片;若配音已由 MiniMax 生成,就傳入audio_asset_id或audio_url,不要再用另一組script + voice_id覆蓋聲音。 - Codex Skill=「製片手冊」。Skill 是一個含
SKILL.md、可選腳本與參考檔的資料夾。Codex 在被明確叫用時讀完整流程,照順序檢查、執行與回報。 - 你=「監製」。聲音像不像、嘴型是否自然、人物是否變形、構圖能否上平台,都不是工作 ID 可以替你回答的問題;所以完整版之前必須保留一個人工批准點。
MiniMax 的現行 Voice Clone 文件、HeyGen 的現行 Image-to-Video 文件與 OpenAI 的Codex Skills 文件,正好對應這三層。工具可以替換,分工方法仍然成立。
先選模式:單次 Image-to-Video,還是長期 Photo Avatar?
第一次測試,先選 Image-to-Video。它直接接受一張 PNG/JPEG 人像,不用先建立可重用 Avatar;上傳 MiniMax 產生的音訊後,就能快速檢查聲音、口型、臉部穩定與 9:16 構圖。
同一個人物要長期出片,再建立 Photo Avatar。Photo Avatar 先經過 POST /v3/avatars 建立 avatar_id,之後可重複使用;本文採用現行支援照片角色的 Avatar IV 路線。若要做影片型 Digital Twin,HeyGen 目前還要求錄製同意影片;這不是後製選項,而是建立 Digital Twin 的前置步驟。

成本先校正:2 分鐘不是一律 US$2
截至 2026 年 7 月 31 日,HeyGen 的Self-Serve API 定價把 Avatar IV Photo Avatar 的 720p/1080p 公開費率列為 US$0.05/秒。用這個最接近的公開類別估算,15 秒約 US$0.75,2 分鐘約 US$6;但定價頁沒有另列 raw type: "image" 的費率欄位,所以這是預算估算,不是 raw-image 帳單承諾。跑完第一支短樣片後,可用 GET /v3/users/me 讀取 wallet 變化,校準自己的實際扣款。
MiniMax 的Pay-as-you-go 定價目前是快速聲音複製每個 voice US$1.50;TTS 的 Turbo 與 HD 分別為每百萬字元 US$60 與 US$100。若用 API Key,HeyGen 從預付 API wallet 扣款;若走 OAuth/MCP,則從 HeyGen 網頁方案扣用量。本文的 15 秒樣片會透過一般 POST /v3/videos 工作建立,並按適用的影片類別計費。
開始前準備 5 樣東西
- 一份短文案:第一次用 15~25 秒即可,先把人名、品牌、數字與英文縮寫寫成容易朗讀的句子。
- 一張已獲授權的人像:正面看鏡頭、嘴部无遮挡、頭肩清楚;直式短片就從接近 9:16 的構圖開始。
- 一段已獲授權的聲音樣本:單人、無背景音樂、少混響、音量穩定。MiniMax 接受 MP3、M4A、WAV,長度 10 秒至 5 分鐘、檔案不超過 20 MB。
- MiniMax 與 HeyGen 帳號/API Key:金鑰放環境變數,不貼進聊天、不寫進 Markdown、不提交 Git。
- Codex 與 Python 3:Python 用來執行公開 Skill 隨附的素材檢查與狀態初始化腳本。
聲音樣本的「合法格式」只是最低門檻。實務上可先錄 30~90 秒自然口播;若要使用 MiniMax 的 clone_prompt 提升穩定度,提示音訊需短於 8 秒,並附上逐字相符的文字。輸出給 HeyGen 時選 MP3,因為 HeyGen 的現行音訊輸入列出 MP3/WAV,而 MiniMax 上傳 clone 樣本接受的 M4A 不在這份 HeyGen 清單內。
還有一個容易漏掉的時鐘:MiniMax 的現行 Voice Cloning 說明指出,快速複製呼叫本身不立即收取複製費;第一次把該 voice_id 用於真正的 TTS 合成時,才收取 US$1.50 並完成啟用。若 168 小時內沒有進行 TTS,暫存 voice 會被刪除;Voice Clone 回傳的示範音訊不算啟用。本文流程會立刻產生完整旁白,因此自然完成這一步。
AI 數字人口播教學:從安裝 Skill 到 15 秒樣片
步驟 1:把公開 Skill 裝到 Codex 現行個人路徑
這次使用 Rachel Wu 以 MIT 授權公開的 rachel-digital-human-production。OpenAI 現行文件把個人 Skill 路徑列為 $HOME/.agents/skills,所以 macOS/Linux 可執行:
mkdir -p "$HOME/.agents/skills" git clone --depth 1 \ https://github.com/Jingyi-Wu-Richael/rachel-digital-human-production.git \ "$HOME/.agents/skills/rachel-digital-human-production"
這個 Skill 的 agents/openai.yaml 關閉隱式叫用,因此要用 $rachel-digital-human-production 明確啟動。Codex 通常會自動偵測新增內容;若選單沒有出現,重開 Codex 再檢查。
步驟 2:建立一個不混雜素材與成品的專案
mkdir -p digital-human-demo/{inputs,work,outputs}
cd digital-human-demo
# 接著把三個檔案放好
# inputs/script.md
# inputs/portrait.jpg
# inputs/voice-source.mp3

這個分層看起來很樸素,卻是能否安全重跑的關鍵。work/job-state.json 只記錄 voice_id、asset_id、video_id、每支影片的 idempotency_key 與狀態;API Key、Authorization header 和暫時下載網址都不該出現在裡面。
步驟 3:用環境變數交給 Codex 金鑰
printf 'MiniMax API Key: ' IFS= read -r -s MINIMAX_API_KEY printf '\nHeyGen API Key: ' IFS= read -r -s HEYGEN_API_KEY printf '\n' export MINIMAX_API_KEY HEYGEN_API_KEY
在啟動 Codex 的同一個 terminal session 執行上面指令;輸入不會回顯,也不會把金鑰本身寫進 shell history。設定後,只讓 Codex 檢查變數「是否存在」,不要輸出完整內容。若金鑰曾出現在聊天截圖、終端輸出或 Git 紀錄,正確動作是到供應商後台撤銷並重建,而不是把截圖打馬賽克後繼續使用。若想補齊 Agent 的 API Key 管理習慣,可先看AI Agent 金鑰安全教學。
步驟 4:在付費呼叫前跑素材 preflight
python3 "$HOME/.agents/skills/rachel-digital-human-production/scripts/preflight_assets.py" \ --script inputs/script.md \ --portrait inputs/portrait.jpg \ --voice inputs/voice-source.mp3
回傳的 JSON 中,ok 應為 true。這支腳本會檢查路徑、副檔名、20/32 MB 大小上限,並在本機有 ffprobe 時讀取聲音長度。它不會判斷人像授權、嘴部是否被遮住或環境雜音;這三項仍由你確認。
步驟 5:只下「樣片」任務,不直接做完整版
請使用 $rachel-digital-human-production 製作 15 秒數字人口播樣片。 輸入: - 文案:inputs/script.md - 人像:inputs/portrait.jpg - 聲音樣本:inputs/voice-source.mp3 - MiniMax 金鑰:MINIMAX_API_KEY - HeyGen 金鑰:HEYGEN_API_KEY 要求: 1. 先跑素材檢查。 2. MiniMax 使用 speech-2.8-hd 產生配音。 3. 把外部配音上傳為 HeyGen audio asset,再用 type=image 驅動人像。 4. raw type=image 會使用預設 Avatar IV;不另傳 engine 欄位,以 720p、9:16 輸出 outputs/preview-15s.mp4。 5. 將工作 ID 與狀態寫入 work/job-state.json。 6. 為這支影片產生 Idempotency-Key 並寫入 state;同一工作重試時沿用,只有刻意建立新工作才換 key。 7. 停在樣片,等我明確批准;不要先產生完整版。 8. 不顯示完整金鑰、Authorization header 或暫時下載網址。
注意:截至 2026 年 7 月 31 日,這個公開倉庫的 scripts/ 主要提供素材 preflight 與 job-state 初始化;它是一份可執行的流程手冊,不是一鍵包辦兩家 API 的固定客戶端。Codex 仍需使用環境中可用的 HeyGen MCP/CLI,或依當下官方 v3 API 文件建立請求。這個差別要先看懂,才不會把「安裝 Skill」誤會成「附贈帳號、API credits 與完整服務」。
步驟 6:驗完 15 秒,再從同一份 state 繼續

- 聲音:音色像目標說話者嗎?品牌名、英文與數字有沒有念錯?
- 口型:中文快句是否追不上?牙齒、嘴角與下巴有沒有不自然變形?
- 臉部與動作:眨眼、點頭、肩膀是否突然抽動?人物身份是否穩定?
- 構圖:9:16 安全區是否保留字幕空間?頭頂、下巴與肩膀有沒有被切掉?
- 片頭片尾:第一個字與最後一個字有沒有被截掉?MP4 是否能完整解碼播放?
樣片通過後,再對 Codex 說:樣片已批准。請從 work/job-state.json 繼續,重用既有 voice_id 與 image asset,產生完整 1080p 版本並完整解碼檢查。 重點是「繼續」,不是重新從第一步開始;否則你可能重複建立聲音、重複上傳素材,甚至重複送出付費工作。
一個完整例子:60 秒產品知識口播怎麼跑?
假設你要做一支 60 秒「什麼是現金流」直式短片,先把文案切成四段,每段 12~18 秒。第一輪只拿第一段做樣片,讓變因維持最少:
開場:很多公司帳面上賺錢,銀行帳戶卻快沒錢。 解釋:因為利潤是會計結果,現金流才是錢真正進出的路線。 例子:今天賣出商品但三個月後才收款,收入已記帳,現金還沒進來。 結尾:看一家公司能不能活下去,別只看利潤,也要看營業現金流。
樣片先檢查「現金流」「營業現金流」的發音、字幕安全區與嘴型。通過後才生成整段音訊與 60 秒畫面。這樣若發音不對,你只重做 MiniMax 音訊;若人臉變形,你只重做 HeyGen 樣片;文案不清楚,則回到 script.md。每次只改一層,才知道修正有沒有用。
6 個最常見的坑,以及精確修法
1. MiniMax 已經配好音,卻又讓 HeyGen 重新配音
修法:在 HeyGen v3 建立影片時傳 audio_asset_id 或 audio_url;它們與 script 互斥。這能把聲音來源鎖在 MiniMax,避免兩套 TTS 在最後一段互相覆蓋。
2. 一開始就做 2 分鐘完整版
修法:固定先做 15 秒。按現行 Avatar IV Photo Avatar 公開費率估算,樣片約 US$0.75、2 分鐘約 US$6;raw type: "image" 的實際扣款則在短樣片後用 wallet 變化核對。先用八分之一的影片秒數驗證口型與構圖,比事後整支重跑合理得多。
3. 把 API Key 貼進對話或狀態檔
修法:只傳環境變數名稱,並在 Skill 明寫「不得輸出完整 key、header、signed URL」。job-state 只存可重用 ID 與狀態。若畫面錄製會拍到終端機,先把含秘密的輸出關掉再開始錄。
4. 輪詢逾時就重新送一個付費 job
修法:在 HeyGen v3 建立影片工作前,先從 state 讀取既有 Idempotency-Key;若尚未存在才產生並保存。重試同一工作必須沿用同一 key,只有刻意建立新工作才換 key。接著保留 video_id,以 GET /v3/videos/{video_id} 繼續查詢。HeyGen 會在 24 小時內重播相同 key 的原始結果;逾時只代表這次等待結束,不代表供應商已把工作標成 failed。
5. 人像漂亮,嘴部卻被頭髮或手遮住
修法:先換素材,不先調模型。正面、嘴部清楚、頭肩可見、光線均勻的照片,會比高風格濾鏡更適合口播。若中文口型仍追不上,可把音速微調到接近日常語速,再重做 15 秒樣片。
6. 下載到 MP4 就當作完成
修法:完整播放或用 FFmpeg/ffprobe 做解碼檢查,確認時長、影像流、聲音流與結尾都正常,再把 state 改成完成。暫時下載網址失效時,先用既有 job 查回輸出,不要直接重新生成。
發布前還有一關:授權與平台標示
建立前先確認聲音、人像、文案與發布帳號都在授權範圍內。YouTube 目前要求對看起來真實、且讓真人彷彿說了或做了實際未發生內容的合成影片,在上傳流程設定「AI use/Altered content」;TikTok 也要求為含真實感影像、音訊或影片的 AI 內容加上 AI-generated 標籤。這一步應放進每次發布清單,而不是等平台提醒。
YouTube 自己也列出一個實用邊界:用自己的聲音做旁白或配音,與用他人的聲音讓對方看似說出未說過的話,處理方式不同。你可以直接核對 YouTube 合成內容說明與 TikTok AI 內容規則,把標示操作寫進自己的 Skill。
AI 數字人口播常見問題
沒有程式背景,也能照做嗎?
可以,但要看得懂檔案與狀態。你不必自己寫 API client;至少要能把三個輸入檔放對位置、設定環境變數、閱讀 preflight 結果,並知道何時停止付費流程。
一定要複製自己的聲音嗎?
不一定。流程也能改用供應商內建、你有權使用的聲音。只有在需要固定個人音色時才走 Voice Clone;畫面層與 15 秒批准點仍可保留。
為什麼不直接使用 HeyGen 的聲音?
這是品質與控制權選擇,不是硬性優劣。本流程把 MiniMax 當獨立聲音層,方便先單獨審核發音與音色,再交給 HeyGen 做口型。若 HeyGen 聲音已符合需求,直接使用 script + voice_id 會更少一個上傳步驟。
Image-to-Video 和 Photo Avatar 怎麼選?
一次測試選 Image-to-Video;固定 IP 長期出片再選 Avatar IV Photo Avatar。前者免先建 Avatar,後者可重用 avatar_id,並提供較完整的角色控制。
安裝 Skill 之後就能直接生成嗎?
還需要你自己的帳號、金鑰、計費額度與執行工具。Skill 負責流程與檢查,不會附帶 MiniMax、HeyGen 或 OpenAI 的服務權限。
15 秒是供應商規定的長度嗎?
它是這套公開 Skill 設計的生產關卡。目的不是追求剛好 15 秒,而是用一段足以看出聲音、口型、臉部與構圖問題的樣片,在完整版之前取得明確批准。
可以一次批量做十支嗎?
可以先批量做樣片。一支影片一份 state,先集中輸出 previews 與審片清單;只對被批准的項目做完整版,避免十支影片一起放大同一個口型或構圖錯誤。
成片嘴型太誇張,第一個該改什麼?
先改音訊節奏與人像素材。把語速拉回自然口播區間、拆短長句、換成嘴部清楚的正面照片,再做短樣片;不要同時更換模型、音色、人像與文案,否則無法判斷改善來自哪裡。
給 AI 創作者的 7 個重點
- 把聲音、畫面、流程與批准拆成四層。
- 第一次用 Image-to-Video,長期固定人物再建 Photo Avatar。
- 使用 Codex 現行的
$HOME/.agents/skills個人 Skill 路徑。 - 金鑰只進環境變數,狀態檔只存可重用 ID。
- 先做 15 秒,驗聲音、口型、臉部、構圖與片頭片尾。
- 輪詢逾時就用既有 job ID 繼續查,不要盲目重送。
- 發布時完成授權確認與平台 AI 內容標示。
📚 延伸閱讀:把單支口播升級成完整 AI 片場
- Claude Code AI 影片工作室:想把口播擴成多鏡頭、可重跑的影片專案,先學六階段製片流程。
- OpenMontage 教學:看懂另一種「Agent 管製片流程」的開源做法。
- Taste Skill 教學:第一次安裝與叫用 Skill,可先從不消耗 API credits 的設計任務練習。
- AI Agent Harness 是什麼:理解模型之外,誰在管理工具、狀態與停止條件。
- 動手做 AI Agent Harness:想把 job-state、重試與批准點寫成自己的流程,接著看這篇。
- AlphaLab AI 專區:持續追蹤 AI 工具、Agent 與創作者工作流。
- AlphaLab 課程:想把零散工具整理成自己的可重用內容系統,從完整課程開始。
結語:今天先做一段 15 秒,不要先建一座無人片廠
回到開頭的公式:AI 數字人口播=MiniMax 聲音+HeyGen 畫面+Codex 流程控制+人工批准點。真正值得複製的不是某一支看起來很真的影片,而是「每一步有輸入、有狀態、有停止點」的生產方式。
你的下一步很小:準備一段 20 秒文案、一張授權人像與一段乾淨錄音,安裝 Skill,先跑 preflight,再只生成 15 秒樣片。等你能清楚指出哪個環節該改,這條流水線才真的屬於你。
