# 影片筆記:终于有适合游戏实况的字幕制作工具了——我开源了一套AI视频创作工作流【MAW】【B站AI创造公开赛】 ## 一句話總結 UP 主「莫偉」開發並開源了一套基於千問 ASR 技術的字幕生成與編輯工作流(暫名 MAW,計劃更名為 MOS),該工具通過多行波形顯示、字級時間碼智能拆分、靜音自動跳過及達芬奇(DaVinci Resolve)深度整合等功能,解決了遊戲實況字幕製作中定位困難、長句拆分複雜及與剪輯節奏對接的問題。 ## 核心重點 1. **高精度字幕生成**:基於千問 ASR(自動語音識別)技術,實測準確率達 95% 以上,原生支持標點符號,錯別字少。 2. **多行波形顯示**:借鑒開源項目 Gap Gone,將單行波形擴展為多行,容量提升約十倍,支持點擊波形任意位置直接跳轉播放,大幅提升定位效率。 3. **智能拆分與編輯**:利用千問 ASR 提供的字級時間碼,實現按語義邊界而非單純音頻波形的智能拆分,解決無空格長句拆分難題;支持行長控制(預設 16 字,可調至 20 字)及超長字幕篩選。 4. **靜音處理機制**:自動識別並跳過長段靜音(如 40 分鐘視頻中 25 分鐘靜音),支持通過鼠標操作(中鍵拖動、Alt 鍵點擊)手動標記刪除、保留或恢復特定片段。 5. **達芬奇(DaVinci Resolve)整合**: * 通過顏色標記(紅、紫、綠)對應剪輯動作(畫面放大、添加音樂、跳過/加速)。 * 支持導出 OTIO (Open Timeline IO) 工程文件,將時間線、顏色標記及表情符號導入達芬奇時間軸。 * 提供 JSON 及 FFMPG 腳本數據,供具備編程能力的用戶自行編寫 AI 腳本進行視頻切分。 6. **OCR 輔助去重**:利用 Paddle OCR 識別視頻幀中的內建字幕,若與生成字幕相似度超過閾值,則自動灰顯禁用,避免字幕疊加(目前流程較複雜,暫未放入公開倉庫)。 7. **技術架構與規劃**:當前為本地 HTML 網頁應用,需 Python 環境及千問 ASR API Key;未來計劃封裝為桌面應用(MOS Open Subtitle Editor),並考慮支持剪映等其他軟件格式。 ## 詳細大綱 ### I. 工具概覽與核心優勢 * **項目背景**:開發者為「莫偉」,項目暫定名稱為 MAW (MOS ASR Workflow),計劃改名為 MOS (MOS Open Subtitle Editor)。 * **核心技術**:基於千問 ASR 生成字幕,高精度、少錯別字、原生支持標點。 * **借鑒來源**:多行波形功能借鑒自另一位 UP 主分享的開源項目 Gap Gone。 ### II. 界面與基礎操作 * **多行波形顯示**: * 相比傳統單行波形,多行顯示可容納更多內容(容量提升約十倍)。 * 支持點擊波形任意位置直接跳轉播放。 * **字幕列表視圖**: * 支持將字幕拖入文本視圖,形成巨大字幕區域。 * 支持按文本內容定位與跳轉。 ### III. 智能拆分與編輯功能 * **字級時間碼拆分**: * 千問 ASR 提供字級時間碼,拆分時不會簡單切割音頻,而是智能識別語義邊界。 * 即使無空格長句,也能在語義空隙處拆分。 * 拆分後的時間碼在導出時會保留。 * **行長控制與過濾**: * 預設一行 16 字,可調整為 20 字。 * 支持「僅看超長」功能,快速篩選出超出設定長度的字幕行進行合併或拆分。 * **合併與拆分操作**: * 支持選中多條字幕後右鍵合併。 * 支持在文本視圖中直接點擊拆分。 ### IV. 靜音處理與批量替換 * **靜音自動跳過**: * 自動識別視頻中的長段靜音(如本例中 40 分鐘視頻有 25 分鐘靜音)。 * 播放時自動跳過靜音區域。 * **靜音標記管理**: * **刪除/跳過**:中鍵拖動可將片段標記為靜音跳過。 * **保留**:按住 Alt 鍵點擊可保留該片段(如保留笑聲)。 * **恢復**:按住 Alt 鍵中鍵拖動可恢復被標記為靜音的片段。 * **批量替換**: * 支持搜索並全局替換特定詞彙(如將「藥理」替換為「药理」)。 * 修改過的字幕會顯示黃色標記。 ### V. 達芬奇(DaVinci Resolve)整合與剪輯輔助 * **顏色標記系統**: * **紅色**:標記重點內容,對應剪輯時的畫面放大效果。 * **紫色**:標記有趣/歡樂內容,對應添加音樂。 * **綠色**:標記需跳過的內容,對應剪輯時的加速或跳過。 * 顏色信息可導出至達芬奇 JSON,輔助快速識別剪輯重點。 * **表情符號功能**: * 支持為特定字幕分配表情符號。 * 可導出為 OTIO 工程文件導入達芬奇,在時間軸上對應位置顯示表情。 * 目前僅開發者自用,未公開。 * **導出格式**: * **SRT**:傳統字幕格式。 * **靜音版 SRT**:已去除靜音片段後的字幕。 * **OTIO (Open Timeline IO)**:達芬奇工程文件,包含時間線、顏色標記及表情信息。 * **JSON / FFMPG 腳本數據**:提供時間區域數據,供具備編程能力的用戶自行編寫 AI 腳本進行視頻切分。 ### VI. OCR 輔助工作流(附屬功能) * **功能描述**: * 利用字幕時間點截取視頻幀。 * 使用 Paddle OCR 識別畫面中的文字。 * 若畫面文字與字幕文本相似度超過閾值,判定為「對口型配音」或「遊戲內建字幕」。 * **處理結果**: * 自動將此類字幕標記為灰色並禁用,導出時不生成該字幕。 * 目的:避免字幕與遊戲畫面內建文本疊加。 * **狀態**:流程較複雜,暫未放入公開倉庫。 ### VII. 技術要求與未來規劃 * **當前技術棧**: * 本地 HTML 網頁應用。 * 需要電腦安裝 Python。 * 需要用戶自行準備千問 ASR 的 API Key。 * **未來規劃**: * 計劃將項目封裝為更易用的桌面應用(MOS Open Subtitle Editor)。 * 若反響良好,將考慮支持剪映等其他軟件工程格式。 * 若反響平平,可能僅作為個人工具繼續使用。 ## 工具 / 模型 / 名詞整理 * **千問 ASR (Qwen ASR)**:用於生成高精度字幕及字級時間碼的語音識別模型。 * **Gap Gone**:借鑒多行波形功能的開源項目。 * **SRT**:字幕文件格式。 * **OTIO (Open Timeline IO)**:時間線交換格式,用於達芬奇工程文件。 * **達芬奇 (DaVinci Resolve)**:視頻剪輯軟件,支持導入 OTIO 工程。 * **FFMPG**:視頻處理工具,相關數據格式用於腳本切分。 * **JSON**:數據交換格式,用於存儲時間區域數據。 * **Paddle OCR (百度 Paddle OCR)**:用於識別視頻幀中畫面文字的 OCR 工具。 * **GitHub**:代碼托管平台。 * **Python**:開發語言環境。 * **MAW (MOS ASR Workflow)**:當前項目暫定名稱。 * **MOS (MOS Open Subtitle Editor)**:計劃中的項目新名稱。 * **墨色**:MOS 的中文譯名或別稱。 ## 操作流程整理 1. **環境準備**: * 安裝 Python 環境。 * 獲取千問 ASR 的 API Key。 * 訪問本地 HTML 網頁應用(MAW/MOS)。 2. **字幕生成與初步編輯**: * 上傳視頻,利用千問 ASR 生成高精度字幕及字級時間碼。 * 利用多行波形顯示功能,點擊波形任意位置進行跳轉與定位。 * 在文本視圖中進行字幕的合併、拆分及行長控制(預設 16 字,可調至 20 字)。 * 使用「僅看超長」功能篩選並處理超長字幕行。 3. **靜音處理**: * 系統自動識別長段靜音並跳過播放。 * 通過鼠標操作(中鍵拖動、Alt 鍵點擊)手動標記特定片段為「刪除/跳過」、「保留」或「恢復」。 * 使用批量替換功能修正特定詞彙,修改內容顯示為黃色標記。 4. **OCR 輔助去重(可選)**: * 利用字幕時間點截取視頻幀。 * 使用 Paddle OCR 識別畫面文字。 * 若畫面文字與字幕文本相似度超過閾值,自動灰顯禁用該字幕,避免疊加。 5. **剪輯整合與導出**: * 為字幕分配顏色標記(紅:重點放大,紫:歡樂音樂,綠:跳過/加速)及表情符號。 * 導出 SRT(傳統格式)或靜音版 SRT。 * 導出 OTIO 工程文件至達芬奇,實現時間線、顏色標記及表情符號的同步。 * 導出 JSON 或 FFMPG 腳本數據,供具備編程能力的用戶進行視頻切分。 ## 值得注意的限制或風險 1. **技術門檻**:當前版本為本地 HTML 網頁應用,需具備 Python 環境及千問 ASR API Key,對普通用戶有一定技術要求。 2. **OCR 流程複雜**:OCR 輔助去重功能流程較複雜,暫未放入公開倉庫,可能影響部分用戶體驗。 3. **表情符號功能未公開**:表情符號導出功能目前僅開發者自用,尚未公開,可能存在穩定性或兼容性問題。 4. **依賴第三方服務**:字幕生成依賴千問 ASR API,需用戶自行準備 API Key,可能存在費用或可用性風險。 5. **未來規劃不確定性**:項目是否會支持剪映等其他軟件格式,取決於反響,若反響平平可能僅作為個人工具使用。 ## 逐字稿辨識疑點 * **Gap Gone**:逐字稿提及借鑒自「Gap Gone」,需查證該開源項目確切名稱。 * **索菲**:逐字稿中提到「可能也就跟索菲關係比較」,語境不明,疑為口誤或特定術語聽寫錯誤。 * **MAW Gap Gone**:在批量替換演示中,逐字稿顯示替換結果為「MAW Gap Gone Qwen ASR PaddleOCR 哔哩哔哩」,此處邏輯或聽寫可能存在混亂。 * **費十二**:逐字稿中出現「費十二」,疑為人名或特定術語的聽寫錯誤。 * **凱利同學**:逐字稿中出現「凱利同學」,疑為人名或特定術語的聽寫錯誤。 * **first pass**:逐字稿中出現「相當於 first pass」,指代初步編輯階段,保留英文原詞。 * **MOSE**:逐字稿中計劃名稱提及「MOSE」,隨後又稱為「MOS」,需查證最終命名。 * **Paddle百度的Paddle OCR**:逐字稿口語化表述,確認為 Paddle OCR。 * **老輩子**:逐字稿中形容「像我這樣的老輩子」,疑為「老派」或「資深」的聽寫錯誤。 ## 可延伸追問 1. **Gap Gone 項目詳情**:Gap Gone 具體是一個什麼樣的開源項目?其多行波形功能的實現原理是什麼? 2. **千問 ASR API 成本**:使用千問 ASR API 的具體費用結構如何?對於長視頻處理,成本是否可控? 3. **MOS 桌面應用開發進度**:計劃封裝的桌面應用(MOS Open Subtitle Editor)預計何時發布?是否會考慮跨平台支持? 4. **OCR 去重閾值設定**:OCR 輔助去重功能中,相似度閾值是如何設定的?用戶是否可以自定義調整? 5. **達芬奇 OTIO 兼容性**:導出的 OTIO 文件在達芬奇中的具體兼容性如何?是否支持所有版本的達芬奇? 6. **表情符號功能細節**:表情符號在達芬奇時間軸上的具體顯示形式是什麼?是否支持自定義表情符號? 7. **靜音識別準確率**:靜音自動跳過功能的準確率如何?對於背景音樂或輕微噪音的處理邏輯是什麼? 8. **批量替換的局限性**:批量替換功能是否支持正則表達式?對於複雜的文本替換需求是否足夠? 9. **JSON/FFMPG 腳本數據格式**:JSON 和 FFMPG 腳本數據的具體格式規範是什麼?是否有文檔說明? 10. **未來支持剪映的可能性**:如果支持剪映,具體的整合方式是什麼?是否會開發專門的插件或腳本?