vibe video editing
當前僅適用於 Windows;內置便攜自動安裝面向 Windows x64。偵測到其他系統時停止安裝,不嘗試部署其他系統的運行環境。
將剪輯流程與成片風格分開。腳本路徑相對此 Skill,專案素材和輸出路徑由當前任務提供;全域 Skill 不存媒體、快取、模型、金鑰或具體專案的絕對路徑。
安裝、官方軟體下載、外部 skill 來源和待補齊資源見 安裝與外部依賴。
使用者要求安裝時,由 Codex 按統依賴入口自動偵測、下載、配置和驗證;runtime.local.json 是自動產生的機器記錄,不要求使用者手動填寫。當前能力邊界見驗證狀態。
父技能與模組目錄
本目錄是 vibe-video-editing 父技能。先執行共用製作與品質約定,再按本次需求載入具體模組,不一次讀取整個模組庫。目錄如下:
vibe-video-editing/
├─ SKILL.md 主技能與共用規則
├─ Functional Skills/ 功能模組庫(每個模組一個 SKILL.md)
├─ Styles/ 風格模組庫(每個風格一個 SKILL.md)
├─ 風格清單.json / 風格清單.md
├─ 功能清單.json / 功能清單.md
├─ scripts/ 共用腳本與模組清單工具
└─ references/、assets/ 共用規範與參數(第三方工具隨功能模組儲存)
AI 查看庫前運行 python scripts/library.py sync,再按需求讀取 風格清單.json 或 功能清單.json。使用者可讀 風格清單.md 與 功能清單.md。清單從模組的 module.json 生成;命令列 list / register 也自動重新整理,不維護另一份手寫清單。
功能庫只在需要時載入:
-
Blazerior 口播剪輯工具:整理原錄口播、解說或採訪時呼叫,提供詞表、停頓與 EDL 工具;識別、對齊和品質流程沿用下文共用規範。
-
樣片分析:使用者要求拉片,或本次製作需要從參考成片提取剪輯做法時,讀取並執行該模組。
-
本地 IndexTTS 配音:需要 TTS 旁白或指定音色時使用。
-
Remotion 花字:按下文花字觸發條件使用。
-
花字音效:使用者要求給花字加音效時,按確認的花字動效和落點從本機音效庫選聲、對幀及混音。
-
找素材:檢索本地動畫/長影片片段時使用,不替代外部資料搜集流程。
-
調色:使用者要求調色、套 LUT 或匹配鏡頭,或製作中需要處理色彩空間、曝光、偏色及鏡頭色差時,讀取並執行該模組。
呼叫模組指當前代理讀取並執行其規範,不代表建立子代理。使用者只請求一個功能時只執行該功能。按功能清單選擇當前任務需要的模組。
製作前讀取專案配置
由 Codex 根據當前工程與使用者要求讀取或產生 video-editing.delivery.json,當前格式僅儲存專案目錄和口播節奏選擇。執行 python scripts/delivery_config.py --project "本次工程資料夾絕對路徑";沒有配置時口播選擇為 default;確認需要剪口播且既無口播參考樣片、也無明確口播要求時,才啟用預設口播預設,無口播則跳過整理。欄位與儲存方式見專案配置。
按口播節奏選擇同時核對 speech.style、本次口播要求和口播參考是否存在,再解析並實際用於當前專案的聲音規劃,不寫全域風格。本次要求、使用者指定的非預設選擇和樣片優先於缺省預設;參考狀態未知時先核對材料,不直接套預設秒數。配置損壞、版本或欄位不支援時明確報錯,不能靜默覆蓋原檔案。
當前版以成片、獨立字幕、分軌、製作配置與素材記錄為交付範圍。遇到範圍之外的工程格式要求,應說明當前支援邊界,不承諾未提供的轉換能力。
選擇風格,只載入需要的內容
先判斷使用者是否明確指定了風格名稱:
- 已點名風格:執行
python scripts/style.py list定位,只載入對應規範;使用者本次要求與範例中的明確補充可覆蓋其預設值。 - 未點名風格:主動讀取使用者提供的範例文件及關聯的參考影片、音訊、工程,按範例學習流程提取證據並建立本專案規範;不要先列風格庫、套用既有風格,或從「最接近」的風格配置起步。可以複用共享工具操作,不能藉此繼承舊風格的節奏、字幕或視覺規則。只有文件時,僅採用其明確描述;未展示的視聽特徵標為待核實。
- 未點名且沒有範例:根據當前素材和明確需求建立專案規範,必要時詢問缺失的關鍵偏好,不預設匹配既有風格。僅說「產品資訊」「vlog」等類型不算點名具體風格。
既有風格以即時 風格清單.json 為準,不在主技能中維護風格表或具體風格規範。已點名時只讀取命中子技能的 SKILL.md、它要求的必要參考及 style.py resolve 輸出;未點名時仍按範例學習流程建立專案規範,不自動套最接近風格。
應用本次需求
優先級:本次明確要求 > 本專案已接受的約定與本次範例證據 > 使用者點名的風格預設值(若有)> 通用技術建議。節奏、鏡頭長度、字幕、轉場密度、配樂和音效均可覆蓋。點名時將解析配置、未點名時將依據範例獨立建立的配置儲存為專案的 work/edit-settings.json;不因一次任務改寫全域風格。自然語言要求由 Codex 轉為覆蓋 JSON,腳本不自動理解「更鬆弛」等描述。
以下命令僅用於已明確點名的風格;未點名時按學習流程直接寫專案配置。
python scripts/style.py resolve --style "使用者已儲存的風格名" --overrides work/overrides.json --output work/edit-settings.json
覆蓋例:{"rhythm":{"shot_seconds":[3,5]},"subtitles":{"mode":"full"},"transitions":{"density":"medium"}}。範圍是安排鏡頭的起點,不能機械切斷句子、動作或圖表閱讀時間。只有明確請求「記住/儲存為新風格」才持久化專案選擇。
客戶稿件與成片提示
先區分用於成片的客戶文字稿/影片稿與僅供風格學習的範例。客戶稿件的內容約定優先於風格預設值和剪輯工具的自動建議。
- 已明確提供文字版口播稿:保留原稿,不自行改詞、增刪、潤飾、壓縮、調換內容順序,或改動觀點、數字與結論;不能為了片長、節奏、風格或所謂糾錯而改稿。只有客戶明確要求修改時,才在授權範圍另存修訂。字幕斷行和時碼可調整;TTS所需的型號讀音展開另存技術副本,保持內容對應,不回寫原稿。
- 提供文字稿或影片稿時的畫面提示:盡量不額外添加澄清、假設或免責性質的說明卡、腳註、小灰字,例如「非實測」「僅供參考」「假設配置」「結果僅為示意」。不要將內部核對過程變成成片提示,或以提示替代與客戶溝通。普通字幕、必要單位/圖例與數據標籤按稿件正常呈現;原稿已有提示、客戶明確要求的說明及必須履行的素材署名按原要求處理。
- 原創圖解與示意標識:按下述素材搜尋機制第三級製作的原創圖解或示意動畫,在畫面中明確標註「原創圖解」「示意動畫」等適當標識,說明其原創或示意性質;該要求優先於風格中預設不加示意小字的約定。其他畫面不自動增加「非實測」「僅供參考」等免責或假設說明,也不追溯改動已認可的頁面;客戶明確要求另行處理時按本次要求執行。
- 遇到疑點或稿件不一致:在製作溝通或交付記錄中指出,不擅自修改客戶稿,也不預設在畫面上補聲明。客戶未同意改稿時,以原稿安排配音、分鏡和時長。
原聲口播整理(預設)
以後影片需要剪輯原錄口播、解說或採訪時,除非使用者明確指定其他方法,預設以 Qwen3-ASR-1.7B+Qwen3-ForcedAligner-0.6B 識別及對齊,按Qwen F 流程完成全片語義審查、原錄全覆蓋聲學補查、獨立處理停頓與呼吸、統一 EDL/映射、導出回查與計時。呼叫 Blazerior 口播剪輯工具執行詞表、停頓與 EDL 工具流程,詳見口播整理規範。不得靜默回退 CPU 或 Whisper-small;實際運行環境見本機運行環境。
在遵守客戶稿件內容約定的前提下,目標是句內連貫、句間自然:收緊詞間多餘氣口、猶豫和重複起音,按當前口播選擇與實際安全區校準參考間隔,完整保留字尾、送氣與擦音;句子之間保持自然節奏,不統一壓短。句內縮短後協調後續旁白,避免把刪掉的時間變成新的句間空白。預設預設的具體秒數和啟用條件見口播節奏選擇;應檢查保留語流內部的氣口與銜接,並把具體判斷落實到剪輯計畫,不能僅清理重錄或儲存配置就視為已應用。這是所有現有及未來風格共同的品質要求,不自動繼承上游字幕、調色、放大或畫幅規則。使用者明確要求和已認可的剪法優先。
字幕可讀性與斷句
字幕以當前成片保留的原聲為準。允許自然轉述、調整語序、拆條或合條。如有必要,為了讓中文表達更自然或更清楚,可以結合畫面補明同一動作涉及的對象、工具或指代。補充內容須有明確的畫面依據,並保留原話的動作、順序和語氣。字幕過長時,優先按語義拆條並對齊原聲。交付前逐分句對照成片原聲與字幕稿。
需要製作或重渲染普通字幕時,預設由 Remotion 渲染,沿用本片統一的基礎字幕樣式。普通字幕獨立執行,直接按字幕操作規範實現。花字專項的模板、重點動效與字型切換僅在下節條件觸發時應用。本次明確指定的字幕工具或已認可的字幕工程優先。
字幕按完整語義分句,保護詞組、專名和數字單位;按實際字型與畫面安全區測量行寬,長句明確換行,不強制擠成單行或按固定字數截斷。結合實際口播的詞級時間調整時碼,保證短字幕有足夠的清晰顯示時間;正文與客戶定稿核對,不能以縮句解決溢位。具體按字幕操作規範執行。
花字與動態重點字幕
使用者明確要求花字、花體字、動態重點字幕,或實際範例明顯存在這類效果時,當前主代理必須載入並執行 remotion-花體字skill(技能標識 remotion-flower-text),不必等待使用者再次點名。先分析實際風格,按使用者提供的模板庫選擇/改編合適組件;沒有模板時在當前 Remotion 專案中實現所需效果。呼叫指讀取並執行專項技能,不是建立子代理或另開對話。
本主技能繼續負責客戶定稿、出鏡/混剪要求、聲音與畫面時間線、素材使用和最終成片檢查;專項技能負責字型與顏色、模板、重點詞組和文字層。記錄中的花字參數必須實際用於渲染,不能只寫配置而不呼叫組件。
普通無花字字幕保持本片統一的基礎字幕方案。只有啟用花字的段落,才預設按句號/語義分句,每1–2句自然語句共用一種基礎字型;同一句的重點可疊加模板效果,但預設繼承該句字型,不按半句話或字幕換頁頻繁換字形。普通資訊沿用已認可的樣式,不因為突出重點而強制簡化或重做。文字層與重點牌不得重複疊字或遮擋相鄰文字。
本版不附帶花字模板;使用者可自行上網尋找可用模板庫並把連結交給 Codex 下載適配。新設計預設只留當前專案,只有使用者明確要求儲存時才登記到使用者指定的位置;本規則不限制為當前任務建立專案內臨時組件,也不自動把本專案字型、音樂、節奏推廣到其他影片。使用者當前明確要求優先。
外部畫面素材搜集
需要搜集外部圖片、影片、logo 或網頁畫面時,讀取鏡頭規劃與素材搜集,按其中的來源路徑、實際選段檢查、網頁採集與檯帳方法執行。
素材搜尋按以下優先級執行:
- 先做鏡頭規劃:逐句判斷這句稿子需要什麼類型的視覺證據或解釋,明確對象、論點和畫面用途,再開始找素材。
- 按規劃尋找相關資料:尋找能夠對應當句的相關影片、官方發布材料、官方圖片、原始數據圖表,或透過 OBS 等獨立瀏覽器來源錄製相關網頁。根據需要選擇媒介,不只按品牌或關鍵字湊畫面。
- 資料無法滿足時再原創:第二級資料仍無法滿足表達需要時,製作與當句對應的原創圖解或示意動畫,並在畫面中明確標註「原創圖解」「示意動畫」等適當標識,不把它們冒充實拍或原始資料。
- 資料和原創解釋都不合適時保留口播:保留主持人口播並優化構圖,不強行填充無關 B-roll,也不為填畫面而改稿。
- 統一由主代理完成:無論主代理使用什麼模型,外部圖片、影片、logo、發布會及產品資料的搜尋、篩選和核驗均由主代理親自進行,不分派給子代理。使用者明確要求委派時按當前任務授權和宿主規則處理。
- 先匹配具體對象和當前論點,再考慮泛素材:逐句識別品牌、產品、人物、獎項、事件和技術。優先該對象官方發布的產品圖、演講、宣傳片、新聞資料、研究機構和獎項主辦方原始資料;介紹多家公司時可把對應 logo 與名稱組合。不能因為素材看起來像科技、程式碼或數學,就取代與口播強相關的畫面。具體品牌或真實人物事件開場優先真實資料,不預設用 AI 圖代替。每處插入要能解釋當句,不能僅憑同品牌或同技術類別通過;榜單、參數、下載量、發布事件和能力演示分別核對,歷史資料對應口播時點。
- 創作方式:可在合適位置剪入官方公開演講、產品展示,或用實物圖、品牌標識、原始圖表、人物照片製作構圖和動效;先考慮畫面與當句的解釋關係,再決定裁切、拼貼、對比和小窗。不要把通用鏡頭標為某公司的工廠、某位人物或某次事件。
- 檢查實際選段:先查看所選區間的實際內容,不只看檔名、封面或首幀;檢查來源片完整性,合成後核對前後句交界,避免為填時間窗把上個對象拖到下一句。
- 網頁也是素材入口:缺少合適現成畫面時可採集官方網頁、產品頁、模型倉庫或原始圖表的瀏覽過程。優先使用 OBS 獨立瀏覽器來源採集網頁界面,不使用獨立 Chrome 無頭截圖/渲染流程,也不把 Chrome 作為本 Skill 的必需依賴;避免占用使用者日常瀏覽器;具體錄製方法按相應工具說明及本次授權執行。
- 視覺素材採用範圍:按使用者偏好,不把「逐項明確免費商用聲明」作為所有視覺素材的唯一入口;可考慮公司自己公開發布的演講、產品宣傳、品牌 logo 及機構公開的相關資料,用於當前話題的介紹與評論。查看原始發布頁和可見限制,記錄來源、發布主體、用途與許可狀態;沒有禁止聲明不等於獲得授權,不將這類素材寫成「已獲商用授權」。明確禁止相應用途、付費預覽、浮水印或未經授權轉發的素材不納入。避免央視等版權管理嚴格媒體及廣播機構的畫面,不去除台標或浮水印規避限制。
- 音樂和字型仍按各自明確許可要求處理;使用者本次放寬的是畫面素材選擇,不自動擴展到配樂、字型或其他用途。來源與權限判斷寫在製作記錄,不自動變成片中的免責小字。
素材去重與來源時間段管理
所有影片任務預設遵循:同一張圖片最多使用一次;同一影片的同一原片時間段最多使用一次。同一長影片可選擇多個互不重疊的來源區間,已用過的區間不得再次使用。按原始來源或檔案內容識別素材,不因改檔名、調色、裁切、變速、改版式或換成截圖就視為新素材。不要透過循環短片來補足鏡頭時長。
去重修訂先按素材搜尋優先級尋找新的強相關素材替換重複畫面,保留原有插入目的;不能僅為通過去重檢查就批次刪除素材或連帶刪除已認可的講解頁。相關資料和明確標註的原創圖解或示意動畫均不合適時,可保留主持人口播並優化構圖,不強行填無關 B-roll。已經認可的數據、原理、對比等講解頁應保護並保留;「不加結尾總結頁」僅約束未經要求的結束頁,不等於刪除正文講解頁。
維護素材使用檯帳,至少記錄來源標識、圖片內容標識,或影片 source_in/source_out、成片入出點。按實際變速後的原片消耗量計算區間,導出前檢查來源區間重疊及圖片複用。完整版和從同版截取的預覽/短版共享同一剪輯計畫,不把交付前綴或修訂存檔算作片內複用。
例外:Logo、標誌性標識或資料、關鍵人物照片,以及確有必要的重要宣傳片,允許按敘述需要復現,記錄具體理由和出現位置,並控制頻率。影片片段不要僅因來自官方宣傳片就自動豁免。實在缺少素材而需重複時,主動告訴使用者重複了什麼、出現在哪些時間段及原因,不能靜默重複。
成組資訊的顯示時序
並列資訊可以隨口播逐項出現;需要比較或彙總時,應共同保留至講完,按敘述統一管理強調與退出。不要讓各元素獨立計時,導致其中一項提前消失、破壞並列關係。具體顯示方式服從使用者要求和當前敘事。
角落小標題(所有影片類型)
除非使用者明確要求,所有現有及未來影片均不添加左上角或其他角落的裝飾性小標題、章節標籤或眉題,例如「2026 / 中國科技」「中國科技 / 四個維度」「路徑 / 技術邏輯」「02 / 硬體」。該預設約定優先於模板、工具和已儲存風格中的同類設定;不能僅因參考片有此類文字就自動添加。修訂時只移除這類小標題,保留正文講解頁、大標題、數據圖表、字幕、必要圖例與素材內容;本規則不取消另有要求的原創圖解或示意動畫標識。
結尾頁面(所有影片類型)
只有使用者提示詞或提供的範例明確要求時才製作結尾總結頁、帳號品牌結束卡、口號頁、片尾製作名單或音樂/畫面/字型等聲明頁。沒有明確要求時,不因風格慣例、模板、工具預設或署名需求自動添加,正常在內容結束處收尾。保留原稿口播本身的結語,不為刪除頁面而刪改稿件。
通常可放在發布文案、描述區或隨片交付文件的必要素材署名,應儲存在這些位置,不自動做成影片結尾頁面。若某素材明確要求片內署名而無法符合當前無結束頁需求,優先換用符合條件的素材,再處理仍存在的真實衝突。
音樂來源
所有現有與未來新增風格都遵循此約定:不在本機產生音樂,不呼叫本地音樂生成模型(如 ACE-Step),也不透過程式碼作曲或合成配樂。
需要配樂時,可主動尋找並使用適合當前影片的外部免費商用背景音樂,不必先要求使用者去 Suno。使用前查看曲目原始發布頁及授權條款,確認免費商用、允許用於當前影片/發布用途及必要剪輯,記錄曲名、作者、來源連結、許可依據和取得日期,並履行署名要求;不能僅憑「免費下載」「免版稅」或搜尋標籤推定可免費商用,授權不清晰的曲目不使用。
既有音樂可正常裁切、循環、淡入淡出、人聲閃避和混音。沒有找到合適且授權明確的免費商用配樂,或使用者希望自行製作時,再告知所需時長、情緒/音色與節奏,由使用者提供音樂(可用 Suno 製作),不代使用者生成。等待期間可繼續無配樂粗剪、配音和字幕。
共用製作流程
-
檢查素材、文稿、工程、最新交付及修訂記錄;先確認客戶稿件與風格參考的角色,客戶已明確提供的文字口播稿作為鎖定內容。區分參考片與可用素材,先複用腳本與中間產物;不複製舊專案絕對路徑、覆蓋來源素材或重跑不必要的配音/生成服務。
僅修改 BGM、音效、人聲音量或混音時,確認畫面、燒錄字幕、鏡頭時序與口型同步可沿用,按僅改聲音時複用影片流重新混音並封裝新版本,直接複製既有影片流。
-
運行
ffmpeg_ops.py doctor確認工具。保留原錄口播時按口播整理規範預設執行 Qwen 基模的 F 流程,並應用本次speech.style;先滿足共同品質要求,再依據風格處理節奏。採用配音時先取得實際音訊並核對讀音,再定時間線。語速/文稿改變後重算字幕、鏡頭、章節和混音。 -
以整數輸出幀累計入出點;分開管理畫面、字幕和聲音。預設直接製作完整初版成片,完成必要檢查後交給使用者,根據成片反饋繼續修改。必要的局部試渲染由代理內部執行,不預設停下來等待使用者審閱代表性短段;使用者明確要求先看試剪時按其要求執行。全 FFmpeg 流程的公共工程入口接收已渲染片段;複雜動效/轉場先製作成鏡頭,再寫入清單。需要複用的組件和素材按當前專案另存原始碼。
-
從 共享操作與清單格式 按需讀取 FFmpeg、字幕或 Blender 部分。風格參數必須實際傳給腳本或實現於鏡頭中;配置檔案存在不代表已應用。
-
口播在定剪口和導出後都須完成詞尾波形檢查,覆蓋每處會切斷或淡出人聲的出點。導出後運行
qa.py檢查完整解碼、幀數、音畫長度、字幕邊界和響度;另抽幀並試聽首尾、剪口、長圖表、字幕密集處。工程需重新打開、檢查媒體並試渲染,交付說明寫明實際驗證範圍和文字是否燒錄。
常規交付:成片、獨立字幕、分軌與最終混音、實際配置、素材清單、需要時的製作原始碼和檢查報告。保持相對路徑,明確最新版本。
學習與擴展
未點名風格時,即使使用者未另說「學習」,也要主動讀取並執行風格學習與登記;明確要求學習/更新風格時同樣執行。從本次範例文件及關聯媒體提取證據,區分觀察、推斷和當前覆蓋。未請求儲存時只儲存在當前專案;使用者說「總結本次經驗形成一個風格」「儲存為新風格」等時,用 style.py register 在 Styles/<新ID>/ 新增獨立子 skill(包含 SKILL.md、style.json、module.json),並自動更新兩份風格清單;不把這次經驗追加進父技能,也不預設覆蓋既有風格。只有明確要求更新既有風格時才使用 --replace。核對專案依據時讀取本次專案的來源和修訂記錄。
模組維護
具體風格規範維護在 Styles/<id>/SKILL.md,預設參數在 style.json;模組名稱、簡介、別名和適用線索在 module.json。功能模組同樣直接在 Functional Skills/<id>/ 維護。儲存後運行 python scripts/library.py sync 和相應校驗,清單由腳本統一生成。
只有跨風格成立的共用製作流程才更新父技能,不把某次專案的具體產品、顏色、音樂或鏡頭秒數提升為全域規則。管理約定見 AGENTS.md。機器配置和下載快取不寫入發布包。Styles 初始為空,只儲存使用者明確要求登記的新風格。