DSH HUB
HomePlugin StorePlugin PacksCommunityRankingsResourcesPublish Guide
Plugin source
Back to catalog

a1121611810 /

a1121611810/dsh-media-converter

Verified

DeepSeek Harness 的多媒体工具箱插件:转换 / 裁剪 / 提取音轨 / 字幕 / 元数据 / Base64,本机 ffmpeg 完成。

★ 0 Stars0 Forks0 IssuesN/A Community rating0 Confirmed installs
View on GitHub
READMESource: main@38946f06

dsh-media-converter

DeepSeek Harness 的本地多媒体工具箱插件:转换、裁剪、提取音轨/画面、字幕导出、图片压缩、元数据查看与改写、Base64 编解码。全部在本机用 ffmpeg 完成,文件不出本机。

icon

功能

动作 说明
转成 X 视频 12 种(mp4/mov/mkv/webm/avi/flv/wmv/ts/ogv/gif/mp3/m4a)、音频 8 种(mp3/m4a/aac/wav/flac/ogg/opus/aiff)、图片 7 种(png/jpg/webp/gif/bmp/tiff/avif)
裁一段 从播放器取起点/终点,或手填 分:秒;裁剪与转换一次完成
提取音频 / 提取画面 直接拷贝轨道,不重编码
提取字幕 内嵌字幕轨导出 .srt,文件名带语言码(如 clip.chi.srt)
图片压缩 选 JPG / WEBP 时按质量滑杆重编码;右侧实时预览 + 并排/滑块对比
元数据 查看容器、章节、逐轨参数与全部标签;改写标题/作者/专辑/备注/日期/流派(另存为新文件)
Base64 当前文件 → data: URL;或粘贴 Base64 还原成文件 / 文本

界面是一个「动作面板」:选文件 → 搜索或点动作 → 参数就地展开 → 结果就地显示。支持 ⌘K 聚焦搜索、回车执行第一个动作、Esc 收起。

安装

已发布到 npm(dsh-media-converter)。在 Harness 里用 plugin_manager 的 install_bundle 装,或在 profile 目录里:

dsh plugin add dsh-media-converter --profile <profile>

从源码装(开发用):plugin_manager 的 install_bundle,target 指向本仓库目录——它会在 profile 的 package.json 里登记包名,并在 node_modules/ 下建一条软链指向本目录。

从 GitHub 装(未发布 npm 时的退路):

dsh plugin add github:a1121611810/dsh-media-converter --profile <profile>

装好后左侧栏出现「媒体工具箱」。

换包名后需要重启应用:运行中的 Host 会缓存旧包名的客户端条目,热装清不掉。

依赖

  • ffmpeg:插件按顺序查找 config.ffmpegPath → FFMPEG_PATH → PATH → /opt/homebrew/bin、/usr/local/bin → imageio-ffmpeg 自带的静态包。找不到时页面顶部会提示安装方式。
  • 没有 ffprobe 也能用:元数据从 ffmpeg -i 的输出解析。

配置

在 profile 的 cordis.patch.yml 里覆盖插件行:

- id: media-converter
  name: 'dsh-media-converter'
  config:
    outputDir: ~/Movies/converted
    ffmpegPath: /opt/homebrew/bin/ffmpeg

默认输出到 ~/Downloads/media-toolbox;上传的临时文件放 $TMPDIR/dsh-media-toolbox,插件卸载时清理。

开发

node test/plan.test.mjs     # 格式表、参数、元数据解析、裁剪
node test/base64.test.mjs   # 魔数嗅探、Base64 往返、文本回退
node test/host.test.mjs     # 真 ffmpeg 端到端:27 种格式矩阵 + 字幕 + 标签改写 + 失败路径

test/host.test.mjs 需要本机有 ffmpeg;没有则自动跳过。

结构

client.js        页面(动作面板、预览/对比、Base64、元数据编辑)
index.js         宿主:/api/media-convert/* 路由、ffmpeg 任务、预览与 Base64
lib/plan.js      格式表、参数生成、元数据解析、裁剪
lib/base64.js    Base64 嗅探与还原
test/            三个自检

限制

  • Base64 单文件上限 24 MB。
  • 裁剪区间必须落在文件时长内;区间无效时按钮不可用。
  • 视频转 GIF 会缩到宽 640、12 fps。
  • 没有取消按钮:转换开始后只能等它结束。
—/ 5

No ratings yet

Verified DSH bundle

Commit 38946f06e4c5

Community comments

No comments yet. Be the first to write one.

DSH HUB

A community index for DSH plugins. Not an official GitHub or DeepSeek AI product.

CommunityResourcesAPIAbout