dsh-plugin-ai-video:在 DeepSeek Harness 里跑通「大纲到 MP4」的视频流水线

前言

在 DeepSeek Harness(DSH)里做讲解类短视频,常见做法是自己在工作区里拼脚本:分镜表、TTS、字幕时间轴、预览页、ffmpeg 合成,每一步都要和 Agent 对齐目录结构和重跑策略。dsh-plugin-ai-video 把「大纲 → 分镜 → 旁白 → 字幕 → MP4」收进一个 DSH 工作流插件:Agent 负责写大纲与分镜内容,插件负责落盘、配音与图像、字幕切片、离线预览和导出。产品形态参考了 xuanyuanzhifeng/ai-video-agent,实现是针对 DSH 0.2 插件体系重写的独立版本,没有 Next.js、数据库或前端构建,安装插件包即可在 Web 对话里调用工具。

这是什么

  • 名称:dsh-plugin-ai-video(仓库 flynow-harness/dsh-plugin-ai-video)
  • 维护者:flynow-harness
  • 分类:工作流(社区目录 skillhub.cn 条目;该站点为社区插件目录,与 DeepSeek / 幻方无官方从属关系)
  • 定位:AI video studio plugin for DeepSeek Harness — outline → storyboard → narration → subtitles → MP4,由 Agent 驱动工具链完成

一句话:用自然语言描述视频需求,Agent 调用插件工具创建项目、写分镜、生成素材并导出;所有产物落在本地目录,project.json 可读可 diff。

核心功能

分工

角色 职责
Agent 写视频大纲、每镜旁白、图像提示词;html 模式下直接写 HTML/CSS/JS 动画
插件 项目持久化、TTS 配音、图像生成、时间轴、字幕切片、预览播放器、ffmpeg 合成 MP4

模式、风格与画幅

  • 两种模式:image(每镜一张图)、html(每镜一段网页动画)
  • 三种风格:cyber-clean(科技博主)、terminal-matrix(黑客风)、warm-story(暖色系)
  • 三种画幅:16:9、9:16、1:1(对应 1920×1080 / 1080×1920 / 1080×1080)

增量改稿与无网关兜底

  • video_edit_frames 支持 update / insert / remove / move;改旁白会清理过期配音,改画面会清理过期图片。
  • 未配置图像 / TTS 网关时仍可用:Chrome 渲染内置标题卡作分镜,macOS say / Linux espeak-ng 作配音;配置 OpenAI 兼容网关后自动切换为正式服务。
  • 同一份时间轴生成 .srt、.vtt 与预览播放器字幕层;MP4 为 H.264 + AAC,本地 ffmpeg 带 libass 时可烧录字幕。

Agent 工具一览

工具 作用
video_create 创建项目(标题、模式、风格、画幅)
video_outline 写入或替换整份分镜
video_edit_frames 局部改稿
video_generate 生成图片与配音,可只重跑指定分镜
video_preview 生成字幕与离线预览(不编码)
video_render 导出 MP4,并刷新预览与字幕
video_show 查看项目、分镜、时间轴、字幕和产物路径
video_list 列出本机所有视频项目

Web 端每次工具调用会渲染分镜卡片,可查看每镜标题、字数、图片/配音就绪状态与时长;离线预览双击项目目录下的 preview.html 即可播放。

兼容版本

插件版本 DSH 版本
0.1.x dsh@0.2.2-alpha.2

DSH 仍处于预览阶段,升级 DSH 后应安装对应版本的插件。

安装与启用

插件以当前 DSH 进程权限读写 $DSH_HOME/ai-video 等路径,并可调用 ffmpeg、Chrome、外部 API。安装前建议阅读仓库源码与 MIT 许可证,再决定 profile 与密钥配置方式。

安装本地 .tgz(README 推荐写法)

若已有打包好的 dsh-plugin-ai-video-0.1.0.tgz:

npx --yes @deepseek-ai/dsh@0.2.2-alpha.2 plugin \
  --profile web \
  add ./dsh-plugin-ai-video-0.1.0.tgz

确认安装:

npx --yes @deepseek-ai/dsh@0.2.2-alpha.2 plugin --profile web list --depth 0

重启 DSH Web(dsh web 或 pnpm dsh web)后,对话中应出现视频相关工具卡片。

从 GitHub 安装

dsh plugin --profile web add github:flynow-harness/dsh-plugin-ai-video

pnpm 11 默认可能因 ERR_PNPM_GIT_DEP_PREPARE_NOT_ALLOWED 失败;仅在信任源码时,可在 profile 的 pnpm-workspace.yaml 中放行:

allowBuilds:
  dsh-plugin-ai-video: true

卸载

dsh plugin --profile web remove dsh-plugin-ai-video

配置要点

默认不配置也能跑(内置标题卡 + 系统语音)。密钥建议用环境变量,结构化项写在 $DSH_HOME/profiles/<name>/cordis.patch.yml,例如:

- id: ai-video
  config:
    imageBaseUrl: https://api.openai.com/v1
    imageModel: gpt-image-1
    imageSize: 1536x1024
    ttsBaseUrl: https://api.openai.com/v1
    ttsModel: gpt-4o-mini-tts
    ttsVoice: alloy

常用环境变量包括 DSH_VIDEO_ROOT、DSH_VIDEO_IMAGE_BASE_URL / DSH_VIDEO_IMAGE_API_KEY、DSH_VIDEO_TTS_BASE_URL / DSH_VIDEO_TTS_API_KEY,以及可选的 DSH_VIDEO_FFMPEG、DSH_VIDEO_CHROME 等;完整键与默认值见仓库 README「配置」一节。

典型用法

装好插件后,用自然语言驱动 Agent 即可,README 示例包括:

帮我做一个 30 秒的「什么是 RAG」讲解视频,科技博主风格,竖屏
把第 3 镜改成数据可视化,不要人物
给第 2 镜换一句更口语化的旁白,重新生成配音
把最后一镜删掉,再补一个总结镜头,然后导出 MP4

产物默认在 ~/.dsh/ai-video/<project-id>/:project.json、preview.html、assets/ 下的分镜图与旁白、out/ 下的 MP4 与字幕文件。

导出 MP4 需要本机 ffmpeg 与 ffprobe(Node.js 版本需与 DSH 一致:22.19+ 或 24+)。macOS 可按 README 使用 brew install ffmpeg 补齐。

适用场景与注意

适合:需要在 DSH Web 对话里快速做讲解短视频原型、分镜可迭代、希望「文件即项目」、可离线预览再导出的开发者或内容实验。

注意:

  • html 模式导出 MP4 时每镜取代表帧(约 1.5s),完整动画保留在 preview.html;逐帧动画成片更宜用 image 模式。
  • Homebrew 官方 ffmpeg 可能未内置 libass,烧录字幕失败时仍会有 .srt/.vtt 与预览层字幕。
  • 图像网关需兼容 OpenAI POST /images/generations 及任务式轮询;项目目录默认不随工作区移动。

结尾

dsh-plugin-ai-video 把 Agent 擅长的叙事与改稿,和插件擅长的落盘、配音、字幕、预览、ffmpeg 合成绑在一起,在 DSH「一切皆插件」的生态里提供一条可核对、可 diff 的视频工作流。目录页:https://www.skillhub.cn/plugins/flynow-harness/dsh-plugin-ai-video;源码与完整配置:https://github.com/flynow-harness/dsh-plugin-ai-video。

羽毛球分组比赛记分
小程序二维码

欢迎使用《羽毛球分组比赛记分》微信小程序

小夜