前言¶
在 DeepSeek Harness(DSH)裏做視頻內容相關的智能體任務時,常見需求是把 B 站講的要點落成可檢索、可引用的文本。手動開播放器抄字幕,或單獨寫腳本拉接口、再折騰語音識別,都會打斷工作區裏的對話流。
下面介紹的 dsh-plugin-bilibili-subtitle(維護者 TimYi,分類爲聯網工具)把這件事收成 DSH 裏一個工具:傳入視頻鏈接或 BV 號,在工作區生成 .srt 與 .txt。有官方 CC/AI 字幕時優先取用;沒有時在本機用 SenseVoice-small 轉寫,不依賴顯卡與 B 站登錄。
這是什麼¶
該插件面向 DeepSeek Harness 用戶,註冊工具名 bilibili_subtitle。源碼與說明見 GitHub:TimYi/dsh-plugin-bilibili-subtitle,社區目錄頁爲 SkillHub 插件頁。當前 package 版本爲 0.1.0,許可證 MIT,要求 DSH >=0.2.0。
核心功能¶
依據倉庫 README,能力邊界如下。
- 官方字幕:通過 B 站播放器相關接口獲取 CC/AI 軌道(含 wbi 簽名),轉成 SRT/TXT。
- ASR 回退:無可用官方字幕時,拉取音軌,經 PyAV 解碼後用 sherpa-onnx 加載 SenseVoice-small 在 CPU 上逐段識別,再按規則分配時間軸。
- 輸出位置固定:文件落在工作區
bilibili-subtitles/下,命名含 BV 與標題。 - 模式可選:
mode支持auto(默認)、official、asr;language默認zh。
返回結果中的 source 會標明本次用的是 official 還是 asr,便於後續校對策略。
安裝與啓用¶
插件以 bundle 形式聲明(cordis.patch.yml),裝好後工具隨 profile 全局可用。安裝前請自行審閱源碼與 MIT 許可證;插件在 當前 DSH 進程權限 下運行,會發起聯網請求並可能寫入本機緩存目錄。
從插件市場索引安裝¶
在 DSH 設置 → 插件 → 索引(Discover)中加入市場索引地址:
https://raw.githubusercontent.com/TimYi/dsh-plugin-bilibili-subtitle/main/market/index.json
隨後在 Discover 中搜索「B 站字幕」完成安裝。
從 Git 安裝¶
dsh plugin install "git+https://github.com/TimYi/dsh-plugin-bilibili-subtitle.git"
或在 profile 目錄執行:
pnpm add "git+https://github.com/TimYi/dsh-plugin-bilibili-subtitle.git"
典型用法¶
工具參數如下(摘自 README)。
| 參數 | 必填 | 說明 |
|---|---|---|
url |
是 | 視頻鏈接或 BV 號 |
mode |
否 | auto / official / asr,默認 auto |
language |
否 | 官方字幕語言偏好或 ASR 語言標籤,默認 zh |
輸出示例路徑:
<工作區>/bilibili-subtitles/<BV>-<標題>.srt
<工作區>/bilibili-subtitles/<BV>-<標題>.txt
在 DSH 會話中可直接用自然語言觸發,例如:
用 bilibili_subtitle 提取 https://www.bilibili.com/video/BV13Axv6EEsa/
工作原理與運行環境(摘要)¶
README 中的處理順序便於排查「爲什麼這次是 ASR」:
- 先取視頻信息(
x/web-interface/view;遇 412 風控則解析頁面__INITIAL_STATE__)。 - 官方字幕走
x/player/wbi/v2→ 軌道 JSON → SRT。 - ASR 路徑:
x/player/playurl取音軌 → 16 kHz 單聲道 → 靜音切段 → SenseVoice 識別。
首次 ASR 會準備 Python 虛擬環境與模型(約 240 MB),默認緩存於 ~/.cache/dsh-bilibili-subtitle/(不可寫時退回 <工作區>/.bilibili-subtitle-cache/)。需要本機 python3(≥3.10)與 python3 -m venv。性能參考:README 記載 83 分鐘視頻在 8 核 CPU 上約 5 分鐘(RTF≈0.055)。
適用場景與注意¶
適合:需要在 DSH 工作區裏快速拿到 B 站口述稿、做摘要/檢索/二次加工,且能接受 ASR 誤差時校對。
限制(均來自 README,勿當作保證):
- 多 P 視頻只處理第一 P。
- 官方字幕對匿名請求多數不可用,實際常走 ASR。
- ASR 對專名、術語易錯;首次需聯網拉依賴與模型,之後 ASR 部分可離線,取音軌仍要聯網。
SkillHub 上的社區目錄由第三方維護,與 DeepSeek / 幻方無官方從屬關係;安裝來源以你配置的索引或上述 Git 地址爲準。
結尾¶
dsh-plugin-bilibili-subtitle 把「鏈接觸發 → 字幕文件落盤」收進 DSH 工具鏈:能拿官方軌就拿,否則本機 SenseVoice 頂上。進一步細節、Issue 與更新以倉庫爲準。
- 目錄頁:https://www.skillhub.cn/plugins/TimYi/dsh-plugin-bilibili-subtitle
- GitHub:https://github.com/TimYi/dsh-plugin-bilibili-subtitle