Rescript: 一個開源的、基於瀏覽器的 Descript 替代方案

Rescript: 一個開源的、基於瀏覽器的 Descript 替代方案

Rescript 是一個開源的、基於逐字稿的視頻編輯器,使用戶能夠像編輯文字文件一樣編輯視頻文件。通過刪除生成的逐字稿中的單詞,對應的視頻片段會自動被剪切,提供一種完全在設備上、在瀏覽器內運行的精簡工作流程。

本地處理與隱私

Rescript 預設設計為私密,確保媒體和逐字稿永不離開使用者的設備。不需要任何服務器端處理、身份驗證或文件上傳。

雖然 AI 模型(約 90 MB)會在首次轉錄時從 Hugging Face Hub 下載並緩存於瀏覽器存儲中,但所有後續操作——包括轉錄、編輯和導出——均可在無網路連接的情況下運行。應用程式僅會對外發出一個請求,即透過 Google Analytics 進行匿名頁面分析,當使用者離線時此請求會靜默失敗。

關鍵技術特性

Rescript 提供了一套用於基於文字的視頻操作和自動清理的工具:

  • 單詞級編輯: 使用者可以選擇特定單詞並按下退格鍵來移除視頻中對應的片段。
  • 填充詞移除: 一鍵功能可識別並移除常見的填充詞,例如 "um" 和 "uh"。
  • 逐字模式: 此模式會提示轉錄引擎在逐字稿中保留填充詞,以便手動編輯。
  • 說話者分離: 逐字稿會自動按說話者分組,以組織對話。
  • 實時預覽: 播放引擎會在實時跳過已剪切的區域,從而允許即時檢閱編輯。
  • 瀏覽器內導出: 應用程式使用 ffmpeg.wasm 在本地執行幀準確的 MP4 渲染。

技術棧

組件 技術
框架 Next.js, React, TypeScript, Tailwind
轉錄 transformers.js running whisper-base_timestamped (WebGPU with WASM fallback) in a Web Worker
說話者標籤 pyannote-segmentation-3.0 (ONNX)
媒體處理 Multi-threaded ffmpeg.wasm for audio extraction and export
狀態管理 zustand

編輯工作流程是如何運作的

應用程式透過四個階段的管道處理視頻:

  1. 提取: ffmpeg.wasm 將音軌解碼為單聲道 16 kHz PCM。
  2. 轉錄: Whisper 在 Web Worker 中運行,帶有 `return_timestamps:

Sources