Communitygithub.com

AI短劇製作

將故事點子、劇本或小說章節轉換成完整的短劇影集——角色在每個鏡頭中保持一致,支援對話配音或旁白,自動生成字幕,最終輸出一個MP4檔案。使用apimodels.app(Seedance 2.0影片、Nano Banana圖片、MiniMax語音),只需一個API金鑰。

AI短劇製作 とは?

AI短劇製作是一個強大的AI代理技能,專為將文字故事轉化為專業品質的短劇影片而設計。使用者只需編寫一個`project.json`檔案,定義角色、場景和鏡頭,系統便會自動處理從估算成本、生成角色形象、語音合成、鏡頭渲染到最終影片組裝的完整流程。它支援兩種模式:**對話模式**適用於角色對話驅動的場景,Seedance會同步生成角色聲音與嘴型;**旁白模式**則適合漫劇、小說改編或故事回顧,系統會自動將旁白文字轉為語音並疊加在影片上。角色一致性透過參考形象表(正面、側面、背面)實現,每個鏡頭都會將畫面中角色的形象表作為Seedance 2.0的參考圖傳入,確保同一角色在不同鏡頭中外貌一致。系統還會自動生成SRT字幕檔案。此技能主要運行於Node.js環境,使用`scripts/drama.mjs`腳本處理所有與API相關的操作,並內建失誤恢復、進度追蹤與成本估算功能,適合需要快速製作垂直短劇、動態漫畫或系列影片的創作者。

対応~Claude Code~Codex CLI~Cursor
npx skills add https://github.com/stimQQ/ai-short-drama/tree/HEAD

お気に入りのAIに質問する

このエージェントスキルを事前に読み込んだ状態で新しいチャットを開きます。

ドキュメント

AI短劇製作 は何をしますか?

故事輸入,影集輸出。你將故事寫入一個 project.json(角色、場景、鏡頭)。scripts/drama.mjs 處理所有花錢或容易出錯的部分:

project.json ─ 估算 ─ 選角 ─(語音)─ 鏡頭 ─ 組裝 ─▶ episode.mp4 + .srt
              免費       參考圖    旁白      Seedance   ffmpeg: 標準化,
              驗證       每個角色  模式專用  渲染       混合旁白,
              + 價格    和場景     每個鏡頭              拼接, 字幕

角色如何保持一致:每個角色獲得一張參考形象表(正面肖像 + 正面/側面/背面視角)。每個鏡頭將畫面中角色的形象表作為參考圖傳給 Seedance 2.0,並在提示詞中說明哪張圖是誰。

規則

  1. 始終執行 scripts/drama.mjs。 不要用 curl 或 fetch 呼叫 API。腳本會在任務建立時立即儲存其 ID,因此當崩潰或超時發生時,它會恢復相同的任務,而不是重新付費。手動呼叫會失去這個優勢。
  2. 在編寫 project.json 之前,閱讀 references/project-schema.md 和 references/shot-writing.md。 鏡頭撰寫指南決定了影集看起來像一部完整的電影,還是十二個不相關的片段。
  3. 先執行 estimate 並向使用者顯示結果:鏡頭列表、總長度、模型和價格表。在獲得同意之前,不要執行 cast / shots。腳本會在費用超過 $1 時拒絕任何步驟,除非加上 --yes。只有在使用者同意該金額後,才能傳入 --yes。
  4. 在渲染鏡頭之前,向使用者展示角色形象表。 每張形象表約 $0.02;每個鏡頭費用是其 10–100 倍。如果臉部、服裝或風格有誤,修正 look 並立即執行 cast --redo <id>。每個鏡頭都會繼承它。
  5. 對於新專案,先渲染一個鏡頭(shots --only s1)。與使用者一起檢查,然後再渲染其餘部分。僅在非常短的專案(3 個鏡頭或更少)或使用者要求時跳過此步驟。
  6. 不要發明模型名稱。 只使用下表列出的模型。如果使用者要求其他模型,請說明此技能不支援。
  7. 失敗的任務不會被收費。 當失敗發生時,明確說明原因(腳本會印出原因和下一步),並提供重試選項。
  8. 不要提及上游提供商或路由。 只談論此檔案中的模型名稱,不談論其背後的東西。
  9. 未經同意,不得使用真實、可辨識的人物,也不得對任何人發表色情、仇恨或誹謗性內容。拒絕此類請求。

工作流程

S=/absolute/path/to/this/skill/scripts/drama.mjs     # 你知道你的基礎目錄;用它
node $S check                                         # 金鑰、餘額、ffmpeg
mkdir -p dramas/my-episode                            # 每個影集一個資料夾,位於使用者工作區
# 編寫 dramas/my-episode/project.json               (參見 references/project-schema.md)
node $S estimate dramas/my-episode/project.json --prompts
node $S cast     dramas/my-episode/project.json      # 然後顯示 cast/ 中的圖片
node $S voice    dramas/my-episode/project.json      # 僅旁白模式
node $S shots    dramas/my-episode/project.json --only s1   # 檢查一個,然後:
node $S shots    dramas/my-episode/project.json
node $S assemble dramas/my-episode/project.json --burn-subs
node $S status   dramas/my-episode/project.json      # 任何時間:進度、花費、剩餘內容
  • 渲染很慢。 一個鏡頭通常需要 2–8 分鐘,並且鏡頭會同時渲染 3 個。在 shots 之前,大致告訴使用者將花費多長時間。不要讓他們看著靜止的終端機。
  • 任何命令都可以安全地重新執行。 已完成的工作會被跳過。正在進行中的任務會從中斷處繼續。失敗的鏡頭只會透過 --retry-failed 重試。
  • 渲染後的鏡頭經過編輯不會重新渲染。 status 會將其標記為「輸入已變更」。可以使用 shots --redo <id> 有目的地重新渲染;這會再次收費。
  • 顯示結果: 最終的 MP4 路徑、其長度和 .srt。然後說明花費:status 會印出從 API 讀回的實際收費金額。
  • 所有內容都會下載到專案資料夾中。API 的結果 URL 會在 30 天後過期,因此資料夾是持久的副本。

對話或旁白

在編寫鏡頭之前選擇:

"mode": "dialogue""mode": "narration"
誰說話螢幕上的角色,嘴型同步。Seedance 在生成影片時同時產生聲音。一個旁白者語音(文字轉語音),疊加到每個鏡頭的環境音上。
適合對話驅動的場景;真人短片風格的迷你劇。漫劇 / AI 漫畫劇、小說改編、回顧和故事講述影片。
語音一致性角色的聲音在不同鏡頭之間可能略有變化。整個影集使用相同的語音。
鏡頭長度你設定 duration(4–15 秒)。保持每句台詞足夠短以容納。自動設定以容納每句旁白,最多 15 秒。
限制每個 5 秒鏡頭約 1–2 句短台詞。無法精確控制誰在何時說話。角色在螢幕上不說話。

如果使用者未說明,對於被描述為漫劇、漫畫、小說或故事回顧的內容,使用旁白模式。對於基於對話的場景,使用對話模式。

模型與費用

腳本會根據風格選擇預設的 video_model。風格化外觀(動畫、漫畫、國漫、卡通、水彩)使用 dreamina-seedance-2-0-mini。其他所有情況使用 seedance-2.0-mini。當使用者想要其他模型時,可以在 project.json 中覆蓋。

使用者想要video_model解析度每秒影片費用
風格化影集(動畫、漫畫、國漫);草稿dreamina-seedance-2-0-mini480p / 720p$0.0225 / $0.048
風格化,比 mini 更高一階dreamina-seedance-2-0-fast480p / 720p$0.0644 / $0.1372
風格化,最高 1080p 的最終品質dreamina-seedance-2-0480p / 720p / 1080p$0.10 / $0.22 / $0.55
真人寫實人物seedance-2.0-mini480p / 720p$0.044 / $0.095
真人寫實,比 mini 更高一階seedance-2.0-fast480p / 720p$0.071 / $0.153
真人寫實,最高 1080p 的最終品質seedance-2.0480p / 720p / 1080p$0.092 / $0.197 / $0.492

其他費用:

  • 角色和場景形象表:nano-banana-2-1,每張 $0.022(1K 解析度)。
  • 旁白:minimax-speech-2.8-turbo,每 1,000 個字元 $0.04。一個短片段至少收費 $0.004。

一分鐘影集(12 個鏡頭 × 5 秒,5 張形象表)的費用約為:

  • $1.46(dreamina-seedance-2-0-mini 480p)
  • $2.99(dreamina-seedance-2-0-mini 720p)
  • $2.75(seedance-2.0-mini 480p)
  • $29.63(seedance-2.0 1080p)

建議第一次使用 480p。第二次以 720p 重製時,只需重新渲染鏡頭("resolution": "720p",然後 shots --redo <ids>)。形象表保持不變。

為什麼會有真人寫實行:dreamina-* 模型會拒絕看起來像真人的參考圖,而一張真人寫實的角色形象表可能會觸發此拒絕。腳本會識別此拒絕並告訴你切換到 seedance-2.0-mini。被拒絕的任務不會收費。

價格為列表價格,檢查日期為 2026-09-30。status 會顯示實際收費金額。

API 金鑰

首先執行 node $S check。金鑰來自 APIMODELS_API_KEY,或來自 ~/.apimodels/credentials,或來自 ~/.apimodels/credentials.json。最後一個是由 npx apimodels-mcp login 寫入的,因此任何登入過 apimodels 工具的使用者都已經設定完成。

如果沒有金鑰,自行執行 node $S login 並將它列印的連結提供給使用者。 使用者登入 apimodels.app 並點擊授權。一個新金鑰會被寫入 ~/.apimodels/credentials,並且永遠不會出現在此對話中。然後重新執行 check 並繼續。

如果 login 無法運作(機器上沒有瀏覽器),不要在聊天中詢問金鑰。給使用者一個命令,讓他們在新的終端機視窗中貼上,並填入絕對腳本路徑:

read -s KEY && printf %s "$KEY" | node /ABSOLUTE/PATH/scripts/drama.mjs save-key && unset KEY

金鑰可在 https://apimodels.app/console/api-keys 建立。

處理金鑰:

  • 永遠不要回顯它。
  • 永遠不要將它作為命令參數傳遞。
  • 永遠不要將它寫入專案資料夾。
  • 如果金鑰出現在對話中,要求使用者更新它。

錯誤

腳本會印出原因和下一步。簡而言之:

你看到含義執行
401金鑰錯誤或缺失再次執行 login
402餘額不足在 https://apimodels.app/console/credits 充值。已完成的鏡頭會保留。
「看起來像真人」dreamina-* 拒絕了參考圖將 video_model 切換到 seedance-2.0-mini,然後執行 shots --retry-failed
內容審核拒絕提示詞或台詞被拒絕修改該鏡頭的內容。重新嘗試相同的文字沒有幫助。
忙碌 / 超時上游負載過高稍後再執行 shots --retry-failed
「仍在運行中」超過 25 分鐘稍後再次執行 shots;它會不計費地接續任務
退出碼 3步驟費用超過 $1與使用者確認金額,然後加上 --yes

成功率並非 100%:偶爾會有鏡頭失敗,重試通常可以解決。

此技能無法做到的事

直接說明,而不是即興發揮:

  • 它不保證完美的角色一致性。 在廣角鏡頭或畫面中有三個以上角色時,臉部可能會偏離。保持每個鏡頭 1–2 個角色(參見鏡頭撰寫指南)。
  • 沒有鏡頭超過 15 秒。 較長的片段會被切分為多個鏡頭。
  • 它無法對齊使用者錄製的音軌與嘴型。
  • 它無法控制鏡頭的精確起始幀。 鏡頭由參考圖和提示詞驅動。
  • 字幕時間戳是近似的。 它們在每個鏡頭內均勻分佈。如果精確時間很重要,請編輯 .srt。
  • 它不會發佈到任何地方。 輸出是本地的 MP4 和 SRT 檔案。

関連スキル