DSH Plugins Marketplace

DSH Plugins

Plugins

/

Development & Infrastructure

/

dsh-media-batch

f

dsh-media-batch

Identified★ 1

Batch video processing: Compress / Transcode / Extract frames / Add subtitles / Add watermark / Extract audio (ffmpeg)

@deepwhale-cn/dsh-media-batch

Listed on dsh-plugin.org

视频批量处理:批量压缩、转码、按间隔抽帧、抽音轨、加文字水印、烧录字幕 —— 基于本机 ffmpeg,不上传、不改原片。

关键词:视频批量压缩 · 视频转码 · 视频抽帧 · 提取音频 · 视频加水印 · 字幕烧录 · ffmpeg 批处理 · media-batch

不装会怎样

一堆录屏、素材、课程视频要压小、要统一成 MP4、要每隔几秒截一张图、要提音频、要打水印或压字幕 —— 在线工具要上传原片(隐私和体积都不划算),ffmpeg 命令又长又容易记错参数,批量还要自己写循环。 这个插件把常用动作包成统一命令:输入只读、输出独立目录、同名自动加序号、结果可 ffprobe 核对。

能做什么

子命令做什么可核对的产物
compressH.264 CRF 压缩(可调 --crf / --preset)MP4,ffprobe 可读出 h264、分辨率与时长不变
transcode换格式(mp4/mov/webm/mkv)、改分辨率、改帧率目标格式文件,ffprobe 编码/分辨率与参数一致
frames按固定间隔抽帧为 PNG<名称>_frames/ 下编号 PNG,数量 = 时长 ÷ 间隔
audio抽音轨为 m4a / mp3纯音频文件,ffprobe 可读出 aac / mp3
watermark文字水印(中文可用,五档位置)视频,同一时间点画面与源片不同
subtitle烧录 .srt 字幕(需 ffmpeg 带 libass)视频,字幕已压进画面
  • 支持单文件、多文件或单层目录批量;输出默认 <输入目录>/_输出,--out 可指定。
  • --json 给脚本/CI 用;--probe 探测本机 ffmpeg 能力;--demo 自造 1 秒样例跑完整流程。
  • 文字水印两条真实路径:有 drawtext 用 drawtext;没有(缺 libfreetype)自动回退为 「Pillow 渲染透明文字 PNG → ffmpeg overlay 合成」,并在结果里标明 renderer。

不能做什么

  • ❌ 不下载/不转码受 DRM 保护的流;不处理损坏文件(会报错并保留原片)。
  • ❌ 不做语音识别:subtitle 只烧录已有 .srt,不生成字幕。
  • ❌ 本机 ffmpeg 没编 libass 时不能烧字幕:会明确报「本机 ffmpeg 无字幕烧录能力」并退出,不假装成功。
  • ❌ 不保证压缩后一定更小:极短/低码率视频可能变大,结果里会如实给出 smaller: false。
  • ❌ 不做多音轨/多字幕流选择(默认取第一路视频 + 可选第一路音频),不做 HDR/杜比处理。
  • ⚠️ 批量只扫单层目录;同名输出自动加 -1/-2,不覆盖。
  • ⚠️ 文字水印的字体来自系统字体;若系统字体被裁剪、且 ffmpeg 无 drawtext,回退路径会明确报缺字体/Pillow。

安装

dsh plugin --profile web add @deepwhale-cn/dsh-media-batch

依赖 ffmpeg / ffprobe(视频处理全部由它们完成)。缺失时会明确报「缺什么、怎么装」:

brew install ffmpeg
dsh-media-batch --probe   # 确认 libx264 / aac / drawtext / libass 等能力

字幕烧录需要 ffmpeg 编译时带 libass;本工具会先探测,没有就明确拒绝。 文字水印在缺少 drawtext 时自动回退为 PNG + overlay(额外需要 python3 + Pillow)。

用法

# 看效果(自造 1 秒样例,不碰你的文件)
dsh-media-batch --demo

# 压缩整个目录
dsh-media-batch compress --crf 28 --input videos/

# 转码 + 改分辨率
dsh-media-batch transcode --format mp4 --width 1280 --input a.mov

# 每 0.5 秒抽一帧
dsh-media-batch frames --every 0.5 --input clip.mp4

# 抽音轨
dsh-media-batch audio mp3 --input clip.mp4

# 文字水印
dsh-media-batch watermark --text "内部资料" --position br --input clip.mp4

# 烧字幕(本机无 libass 会明确报错)
dsh-media-batch subtitle --subtitle a.srt --input clip.mp4

# 给程序:JSON 输出
dsh-media-batch compress --input videos/ --json

退出码:0 成功 / 2 参数或输入错误 / 3 依赖或能力缺失 / 4 执行失败。

自测

bash tests/run.sh

测试会自己用 ffmpeg lavfi 造 1 秒样例(含音轨/无音轨各一),逐项核对压缩后体积、编码器、 转码分辨率、抽帧数量、抽音轨可被 ffprobe 读出、水印画面与源片不同,并按本机能力走 字幕烧录/明确拒绝两条分支;同时验证「输入哈希不变」「不存在文件必须非 0」等反例。

License

MIT © 温州深鲸智能科技有限公司

Comments

Loading…

From the same category

awesome-dsh-plugin

by awesome-dsh-plugin

A curated list of plugins for DeepSeek Harness (dsh) · DeepSeek Harness 插件精选列表

Development & Infrastructure

★ 22.8k

CC0-1.0

Python

Nov 5, 2026

Index only — not installable

by 0xsline

DeepSeek Harness (DSH) ecosystem: curated plugins, tools, and infrastructure from dsh-external/hub and the public dsh-plugin topic.

Development & Infrastructure

★ 1.3k

CC0-1.0

Python

Oct 16, 2026

Index only — not installable

by uumit-ai

Open dsh web from your phone or another computer through a UUMit account, without running your own server or installing another program: a built-in tunnel client connects to UUMit's hosted tunnel, and

Tools & CapabilitiesDevelopment & InfrastructureTerminal & ClientsManifest valid

★ 494

↓ 268/wk

MIT

JavaScript

Oct 21, 2026

dsh plugin --profile web add @uumit-ai/dsh-uumit-remote

by Yuuyuko-uu

DSH 鱼的记忆:给会话一份会淡忘的长期记忆,每条都带时间

Development & InfrastructureMemory & ContextSessions & MessagesManifest valid

★ 483

MIT

JavaScript

Nov 4, 2026

dsh plugin --profile web add dsh-fish-memory

by SAOS-3624

Scene-aware storyboard for DeepSeek Harness: 9-16 numbered cells with timestamps + transcript + an audio envelope, packed into ONE image (384 tokens). Two tools: video_storyboard and video_zoom.

Tools & CapabilitiesVision & MultimodalDevelopment & InfrastructureManifest valid

★ 443

↓ 17k/wk

MIT

JavaScript

Nov 5, 2026

dsh plugin --profile web add dsh-video-storyboard

by xiajiajun516

DeepSeek Harness (DSH) backup & restore plugin — export, import, migrate and sync your complete DSH configuration, plugins, MCP servers, skills and workspace. One-click migration to another machine.

Development & InfrastructureManifest valid

★ 301

↓ 8.3k/wk

MIT

TypeScript

Nov 4, 2026

dsh plugin --profile web add dsh-config-manager