前言¶
在 DeepSeek Harness(DSH)裏對照對話處理素材時,常見做法是在系統播放器或瀏覽器新標籤裏開視頻,分辨率、幀數、碼率等信息要麼看不到,要麼要另開 ffprobe 等工具。普通 HTML <video> 能播,但很難同時拿到緩衝健康、丟幀計數和容器級元數據。
下面介紹社區插件 dsh-sidebar-video-player(維護者 XIANGDEEN,分類爲客戶端):把播放器嵌在 DSH 右側 Sidebar,本地或 HTTP(S) 源可播,並對 MP4/MOV 做只讀容器解析,配合實時播放遙測。插件不註冊 Agent 工具、不寫 Session 事件;本地文件經瀏覽器 Blob URL 讀取,不上傳。
這是什麼¶
dsh-sidebar-video-player 是 DSH 的 Web 客戶端插件(package.json 中 dsh.client.platform 爲 web,注入 @deepseek-ai/dsh-client-ui-sidebar-right)。一句話定位:右側欄視頻播放器,帶 live playback telemetry 與 MP4/MOV 深度容器檢視。
社區目錄頁:dsh-sidebar-video-player。源碼與說明:GitHub XIANGDEEN/dsh-sidebar-video-player。許可證 MIT;當前 package 版本 1.4.0(以倉庫爲準)。要求 Host 版本 >=0.2.1-rc.3 <0.3.0-0,主要面向 Web 客戶端構建與測試。
核心功能¶
播放與列表¶
- 通過文件選擇器或拖放播放本地視頻,或加載 HTTP(S) 視頻 URL。
- 文件夾播放列表:選定目錄後,播放器右側列出目錄內所有視頻;卡片含首幀縮略圖與時長,點擊切換;當前項高亮,一條播完自動播下一條。
- 排序:按名稱、時長、修改時間或大小,升序或降序。
- 全屏:頂欄控件與 transport 按鈕均可切換全屏,快捷鍵
F;全屏時隱藏統計與列表,保留 transport。 - 播放列表右鍵菜單:重命名、複製文件、複製相對路徑、刪除本地文件、刷新。文件類操作依賴瀏覽器 File System Access API,須通過目錄選擇器授予寫權限;只讀 fallback(
<input webkitdirectory>)下這些項不可用。
Transport 支持播放/暫停、seek、音量、靜音、倍速、畫中畫、全屏。播放器獲焦時:Space/K、J/L、方向鍵、M、F。
實時播放遙測¶
在普通 <video> 不易暴露的維度上,插件持續展示例如:
- 當前時間、時長、進度、緩衝區間與 buffer ahead;
- 經
requestVideoFrameCallback測得的解碼 FPS; getVideoPlaybackQuality()的 presented frames、dropped frames、總視頻幀數;- 倍速與狀態(playing、paused、buffering、ended)。
MP4/MOV 深度檢視(不解碼媒體)¶
讀取器不把整文件載入內存:用 Blob.slice 遍歷頂層 ISO-BMFF box,一次性讀取 moov(上限 64 MiB),從 mvhd、trak 鏈路上的 tkhd、mdhd、hdlr、stsd、stts、stsz 等提取容器與軌信息,包括 major/compatible brands、timescale、時長、moov 位置、是否分片、軌數;視頻側 codec fourcc、H.264/HEVC profile/level、編碼/顯示尺寸、寬高比、旋轉、精確幀數、平均 FPS、軌平均碼率、位深;音頻側 codec、AAC profile、採樣率、聲道、碼率等。軌碼率爲軌上平均值,非瞬時網絡碼率。
WebM、Ogg 等瀏覽器可解碼格式仍可播放,並報告瀏覽器側測得的分辨率、FPS 與幀計數;容器級解析僅限 MP4/MOV(含 .mp4、.m4v、.mov)。可摺疊 Raw probe data 面板展示解析 JSON。中英文界面隨 Host 主題 token。
分片 MP4 若 sample table 爲空,播放器會回退到 <video> 元素上的測量指標。遠程 URL 不做容器探針(不假定跨域可讀)。加密 sample entry(encv/enca)不解密、不檢視。
README 中用 ffprobe 對照過兩個本地文件(boot.mp4、background.mp4),分辨率、幀數、平均 FPS、視頻碼率、音頻參數與 ffprobe 流元數據一致。
安裝與啓用¶
插件以 GitHub 源安裝,無需 npm。安裝前建議瀏覽倉庫源碼與 LICENSE;插件在 DSH 進程/Web 頁內運行,權限邊界見下文「適用場景與注意」。
Web profile:
dsh plugin --profile web add github:XIANGDEEN/dsh-sidebar-video-player
DSH 桌面應用使用的 desktop profile:
dsh plugin --profile desktop add github:XIANGDEEN/dsh-sidebar-video-player
若日後發佈到 npm,同一 profile 也可按包名安裝(README 示例):
dsh plugin --profile web add dsh-sidebar-video-player
安裝後重啓或重載 Web UI。啓用後在 bundle 列表中應看到名爲 dsh-sidebar-video-player 的已啓用行。
典型用法¶
右側欄與 Session 綁定:無打開的 Session 時,左側欄底部的視頻圖標爲禁用狀態。
打開方式二選一:
- 右側 Sidebar → Start(引導)→ Video player。
- 點擊左側 Sidebar 底部 Settings 旁的視頻圖標。
進入右側欄 Video player 標籤後,選擇本地文件、拖放、填 URL,或選文件夾建播放列表;需要寫操作時,用目錄選擇器選文件夾並授予寫權限。查看 MP4/MOV 時,在統計區閱讀容器/軌信息,必要時展開 Raw probe data。
適用場景與注意¶
適合誰:在 DSH 會話旁對照本地或遠程視頻、需要緩衝/丟幀等播放遙測,或要在不跑 ffprobe 的情況下快速覈對 MP4/MOV 容器與軌參數的開發與審片場景。MP4/H.264/AAC 兼容性最穩;HEVC/AV1 取決於瀏覽器解碼能力。
權限與隱私(README 原文要點):選定本地文件僅經 Blob URL 讀取,不上傳。遠程 URL 由瀏覽器拉流播放,插件不代理遠程媒體、不讀遠程容器元數據。無分析、無外鏈遙測、無憑證。Host 側僅插件 bundle 行;播放器狀態留在 Web 頁。文件夾寫權限僅在你顯式選菜單動作且瀏覽器授權後纔會改本地文件;刪除與重命名確認後立即生效,無撤銷。複製是在同目錄內 duplicate,不是系統剪貼板文件複製;無「在資源管理器中顯示」。
環境限制:文件 rename/copy/delete 需 Chromium 系或 Electron,且須可寫目錄選擇器。已知限制還包括:無 Session 則無播放器;Copy 命名等行爲在倉庫有自動化測試,真實權限彈窗與文件系統寫入需在 Chromium/Electron 下手動驗證。
社區目錄 skillhub.cn 與 GitHub 爲獨立信息源,與 DeepSeek / 幻方無官方從屬關係;DSH 生態按「一切皆插件」擴展,安裝前以倉庫 README 與源碼爲準。
結尾¶
dsh-sidebar-video-player 把播放、列表管理與 MP4/MOV 只讀探針收進 DSH 右側欄,與對話同屏,並補充 <video> 難以直接給出的遙測與容器字段。需要試用時,按上文 profile 執行安裝命令,打開 Session 後從引導或底部圖標進入播放器。
- 目錄頁:https://www.skillhub.cn/plugins/XIANGDEEN/dsh-sidebar-video-player
- GitHub:https://github.com/XIANGDEEN/dsh-sidebar-video-player