把多人录音变成可剪辑的字幕

2026-08-31 · 应用实践 · 更新于 2026-09-09

如果你要从一段访谈里剪出某位嘉宾的发言,先得到能回到原声音的字幕,比先追求一整页流畅文字更有用。FunClip 可以用录音内的说话人标签选段;剪辑前仍要回听。

已有的 FunClip v2.2.0 双人样例走通了这条链路:得到 S01/S02 两个标签、生成字幕,再按 S02 剪出片段。这是下文的历史功能案例,不是“任何访谈都能剪准”的证明。

标签不是人物身份。spkS01 与 spkS02 只属于当前录音;换一段录音,同名标签不保证对应同一个人。段级字幕也不能代替逐字精确对齐。

FunClip 本地视频、字幕识别和智能剪辑界面
已有 FunClip v2.1.0 工作区截图,用于展示视频、字幕与选段的关系;不是上述 MOSS 样例的运行截图。

先找到发言,再决定怎么剪

MOSS-Transcribe-Diarize 是 OpenMOSS 维护的第三方模型。它提供转写和匿名说话人时间段;FunASR 整理结果,FunClip 把时间段接到字幕与音视频剪辑流程。

  1. 给模型连续的录音。这条路径不接外部 VAD 或说话人模型,避免先切成独立请求后丢失录音内的说话人上下文。
  2. 在字幕里核对目标发言。标签帮助找到候选片段,但名字、数字、抢话和转场仍要回听,不能凭标签数量验收。
  3. 先导出一段,再批量处理。回看实际片段的开头、结尾和字幕;不要只检查剪辑命令退出成功。

哪些剪辑适合这条路径?

开始新部署时,用维护中的 MOSS 部署指南核对运行时、显存和服务格式。下方旧命令仅解释这次发布,不替代当前环境准备;也不要把服务直接暴露到公网。

附录:v2.2.0 历史发布记录

以下保存原发布的命令、归档散列与测试口径,不是当前安装配方。其中未固定版本的 pip install -U vllm 不能保证今天的兼容性;不要直接复制升级。依赖、服务别名和请求格式应按维护指南重新核对,FunClip 命令的相对路径要求位于对应仓库根目录。

历史集成固定使用 OpenMOSS-Team/MOSS-Transcribe-Diarize revision e8681d68e7042738ffca8ac8212bc8fcb1131ab8。当时的 FunASR 1.4.9+ 集成整理 text、timestamp 和 sentence_info,FunClip 2.2.0 渲染 SRT 并剪辑;不是所有未来版本的兼容承诺。

当时的服务与请求

python -m venv .venv-moss
. .venv-moss/bin/activate
pip install -U vllm

vllm serve OpenMOSS-Team/MOSS-Transcribe-Diarize \
  --revision e8681d68e7042738ffca8ac8212bc8fcb1131ab8 \
  --served-model-name moss-transcribe-diarize \
  --trust-remote-code --host 127.0.0.1 --port 8898

这次历史验证使用 response_format=json,不是对所有 MOSS 后端格式的通用说明:

curl -fsS http://127.0.0.1:8898/v1/audio/transcriptions \
  -F file=@sample.wav \
  -F model=moss-transcribe-diarize \
  -F response_format=json \
  -F max_completion_tokens=8192

当时的 FunClip 启动参数

python -m pip install -U -r requirements.txt
python funclip/launch.py \
  --model moss \
  --moss-backend vllm \
  --moss-base-url http://127.0.0.1:8898/v1 \
  --moss-max-tokens 8192

需要 bearer token 时通过 MOSS_API_KEY 环境变量提供,不把凭据放进命令行或仓库。

归档与功能检查

FunClip-2.2.0.tar.gz
SHA256 994c5d9cf392b74b36284d526eca8bada1560a3e7825ab7baa9c673a1b4ef216

FunClip-2.2.0.zip
SHA256 4f5a7d33d9ea65467f29b55b15ed5be18e64de7e57e2f9f36fe51a23b40557e7

归档和 SHA256SUMS 来自 FunClip v2.2.0 Release。对应 commit c205bf32a8b11226ff5e8acb9a3c7a1f00cd3b06 的历史仓库测试为 84 passed、1 skipped;H100 + vLLM 双人样例返回 S01/S02、有效 SRT,并按 S02 剪辑。这不是本次编辑重跑的结果,也不代表所有语言、音频条件或并发规模。

下一步:从一段获授权的短访谈开始,按MOSS 部署指南跑通同一条链路,并人工回看第一个导出的片段。