返回作品列表
AI 工具 · 桌面應用 · 個人獨立開發

Kindling

Kling AI 影片生成桌面工作流工具

生成、拆幀、剪輯、重生、匯出——把 AI 影片生成從「抽卡」變成可控的工作流。只重生壞掉的那一段,而花過錢的每一格,都留下來。

類型
Windows 桌面應用程式
平台
Windows 10 / 11
技術
C# · .NET 10 · WPF(純 C#,無 Python 後端)
生成引擎
Kling.ai API(自帶金鑰)
影像處理
ffmpeg · PNG 影格序列
SEQUENCE · 片段 03 · 版本鏈框選重生 frames 05–08
版本 0 · 原片版本 1版本 2 · 使用中+ 重生
為什麼做這個

AI 影片生成,不該是抽卡

用 API 生影片的體驗通常是這樣:寫 prompt、送出、扣錢、等結果——十秒的片子有八秒很好,剩下兩秒壞掉,於是整段重生,再扣一次錢,而且新的那支可能換別的地方壞。生成結果是一支封閉的 mp4,你只能整支要或整支不要

Kindling 把生成結果拆成一格一格的素材:壞掉的段落框起來重生,好的部分一格都不用動。

做法是全程以 PNG 影格序列為中心:生成的影片自動拆幀進片段庫,可以剪、可以逐格刪、可以框一段丟回 Kling 重生,再把新素材對齊、融合、接回原位。每次重生的候選都保留成版本——花過錢的東西就不會丟,隨時切換、隨時回退。

Kindling(引火柴)是 CelFlow 的衍生工具:做動畫中割時建立的影格處理管線,抽出來對準另一個問題。也因此它是純 C# / WPF——不需要 CelFlow 的 Python 推論後端。

工作流

五步,從 prompt 到成片

01

生成

首幀(可加尾幀)+ prompt 送 Kling,送件、輪詢、下載、拆幀全自動,一次可生 1–4 支。

02

拆幀

mp4 拆成 PNG 影格序列 + 抽出音軌;也可直接拖任何影片進來當素材。

03

剪輯

片段拖進序列軌,設入/出點、配 BGM;細修模式逐格檢視、刪格、雙軌音訊。

04

重生

框選壞掉的段落,取頭尾幀丟 Kling 重生,新素材對齊、融合、接回原位。

05

匯出

MP4(三檔品質、多軌混音)或 GIF(兩段調色盤);也可匯出純影格序列。

核心賣點

重生:框一段、換一段,其他一格不動

在影格條上框選要重做的範圍,Kindling 取頭尾幀丟給 Kling 生成新素材;你在重生工作區框選新素材要留的部分,它自動走尺寸對齊 → 重取樣 → 接回 + cross-dissolve 融合,350ms debounce 即時預覽。長度可鎖定原長(有音軌時強制)、照新素材、或自訂格數。

改個 prompt 再試一次很便宜:歷次生成的素材累積成候選池,不會覆蓋舊的。多支候選還能「覆寫合成」——把主選的某一段換成另一支候選的對應段,跨候選的對齊用比例粗估加上內容比對細對齊,接縫一樣用 cross-dissolve 處理。

原片永遠是版本 0,每次重生是版本 1..N,卡片上點縮圖就能切版本。凡是花過錢生出來的東西,都留著。

工程重點

幾個值得一提的技術決定

1

拆幀的 11 格教訓:不信 metadata,只信檔案

AI 生成的影片常是 VFR(可變影格率),用一般方式拆幀會被 ffmpeg 重取樣——丟格或補格,10 秒的片拆出來少一格,後面整條管線都歪。Kindling 用 -fps_mode passthrough 讓 ffmpeg「解到幾張吐幾張」,最終張數以輸出檔案數為準,不信任 metadata 的 nb_frames

2

模型 fallback,但不白扣錢

Kling 的模型名稱可能因版本下架而失效。Kindling 只在「送件當下被退、任務未建立、確定不扣費」時才自動換下一個候選模型;認證錯誤、額度不足等其他錯誤據實中止——寧可停下來,不代替使用者花冤枉錢。模型規則(哪個家族吃幾秒、音訊支援組合)集中在單一真相源,UI 自動 coerce。

3

金鑰的保管與使用

自帶金鑰(AK + SK)在本機以 HS256 簽出 30 分鐘短效 JWT 才出門,SecretKey 落地時用 Windows DPAPI 加密,「回報問題」打包 log 時金鑰一律不進 log。

4

序列是引用層,不是複製層

剪輯軌上的每一段只是對片段庫的引用(片段 + 入/出點),不複製影格、不動原片。片段刪了,序列顯示「素材不在」但不崩;「保留 Kling 輸出」開啟時母帶 mp4 永久保留,隨時可從母帶重拆救回。

5

跨候選對齊:粗估 + 內容比對

覆寫合成要在兩支不同生成結果之間找「對應的那一段」。Kindling 先用長度比例粗估落點,再用灰階縮圖的 SAD(絕對差和)開窗搜尋做內容細對齊;素材差異太大對不上時,自動退回比例對映——寧可準度降級,不讓功能失效。

6

深淺色主題的 WPF 陷阱

整個 App(含所有對話框)跟隨 Windows 深淺色,執行中切換即時生效。機制是色盤全走 DynamicResource、由單一服務當兩套色值的唯一真相源——不能用 StaticResource 再改 brush 顏色,WPF 的 Style 封印會把 setter 裡的 brush 凍結,這是踩過才知道的坑。訊息框也自製取代 Win32 MessageBox,因為原生框不吃深淺色。

功能總覽

一站式,從專案到成片

專案牆多專案各自獨立(片段庫 / 序列 / 素材互不相干),卡片列表依最後開啟排序;整個專案可打包成 .kind 檔交換與備份。
片段庫卡片 + 縮圖 + 狀態;改名、另存影格序列、刪除含保險(母帶可救回)。
序列剪輯拖拉組片、入/出點、BGM(音量 / 靜音);細修模式逐格檢視、框選刪格(漣漪補位)、雙軌音訊各自偏移與音量。
重生工作區框選重生、候選池、版本鏈、覆寫合成、動態補間(素材偏短時 minterpolate 腦補)。
匯出MP4:CRF 三檔品質、縮放、多音軌混音(偏移 / cross-fade / 補靜音);GIF:兩段 palettegen / paletteuse,品質遠勝單段量化。
穩定性三道例外網(UI 線程 / 背景 / 致命)、crash 下次啟動提示、一鍵回報問題打包當日 log。
技術棧總覽

純 C# 的影像工作流

核心C# · .NET 10 · WPF / MVVM(色盤跟隨系統深淺色)
生成 APIKling.ai(本機簽 JWT · 模型規則單一真相源 · 不扣費才 fallback)
影像ffmpeg / ffprobe(passthrough 拆幀 · minterpolate 補間 · palettegen GIF);找不到打包版自動退回系統 PATH
音訊NAudio 波形顯示 · 多軌混音(偏移 / 音量 / cross-fade)
安全與日誌DPAPI 金鑰加密 · NLog · 三道例外網 · 金鑰不進 log
發佈self-contained 免裝 .NET · Inno Setup 免 UAC(裝到使用者目錄)
下載 · Download
Kindling 安裝程式

Windows 安裝檔(Inno Setup),self-contained 免裝 .NET、免 UAC 安裝到使用者目錄。ffmpeg 可隨附或自動使用系統 PATH 上的版本。

Kindling_Setup_1.0.2.exe · 約 102 MB · 即將提供
使用需自備 Kling.ai API 金鑰(AK / SK),僅支援國際版金鑰。金鑰只存在你自己的電腦,以 DPAPI 加密。