5.4 KiB
5.4 KiB
自动转写与人声分离独立服务 — 2026-09-18
本轮完成算力服务器模型安装、私有音频 API、主项目接入和发布。代码先完成隔离本地验收,再按用户要求发布至 48 主站。应用源码提交为 fe1c9b60,Build ID 为 bOKVDArgv3JKjOWEytM6X,活动构建目录为 .next-media-audio-fe1c9b60-20260918T151731。服务部署说明见 services/audio-processing/README.md。
架构
- FunASR Paraformer + FSMN VAD + CT-Transformer 自动转写,HTDemucs 人声分离;全部使用已校验本地权重,推理不下载模型或执行远程模型代码。
- 模型运行在算力服务器的独立 CPU 单队列;systemd 4 核 / 12GiB 限额,Torch 2线程。千问 GPU 0/1 和视频高清 GPU 3 配置未改。
- 48 只负责轻量素材准备、持久化主任务和结果归档。既有智能剪辑准备锁保留,避免并发抽取素材压垮主站;推理不在48运行。
- 私有 API 18342,独立随机 Bearer 密钥,经专用受限 SSH 隧道连接48,未开放公网端口。
- 上传流校验长度及 SHA-256;服务端记录和结果持久化,刷新重试复用任务编号。输入未上传完不执行;服务重启可恢复;主站下载结果再次校验。
- 功能能力取算力服务器真实 health;配置了远程服务后遇到网络错误不回退主机推理。错误保留原字幕/原音轨。
已验证
- 70 项定向回归通过,含原有剪辑/任务/编组和新增音频断线、身份隔离、损坏音轨拦截。
- TypeScript 检查通过。
- 真实音频 API:缺少认证401、参数冲突409、损坏上传400、相同任务复用、实际中文识别、实际两轨分离、分离中重启恢复。
- 8.3935秒中文语音识别三句:0–1.349秒“欢迎使用智能剪辑,”;1.349–4.710秒“我们正在测试人声分离和自动字幕,”;4.710–8.205秒“请保留原始视频的画面和声音。” ASR单次实测14.03秒。
- 人声与背景声合成重构原样例的最大误差
7.45e-9;波形确实发生分离,非原音轨复制。含重启恢复的分离验证24.20秒,attempts=2。这是短样例,不是任意素材的质量/性能承诺。 - 在48执行实际主项目处理函数,经真实私有API调用算力服务器:转写保留手动字幕并新增3句;both/vocals/background三个分支分别生成2/1/1条独立音轨,保留原裁剪、时长、增益并关闭视频原声。测试隔离素材缓存与回传文件,不触碰用户画布;上传回调验证文件交付,不将此宣称为真实用户对象存储端到端验收。
- 算力服务器及48的认证 health 均返回 asr=true、separation=true;服务 bundle SHA-256 为
22c20736634cbed32c3a3b227e71ce773f5da5763d52c021cd6a162130b54d22。
发布前本地验收
- 主应用、音频 API 和模型均运行本机,使用隔离数据库
codex_smart_edit_0918、本地 S3 测试存储;本轮不调用线上音频服务。 - 真实接口链通过:登录、上传、创建画布、剪辑计划、视频人声分离、自动转写、独立音轨再分离、仅保留人声/背景声、成片及 SRT 归档。同一 requestId 的重复提交复用任务。
- 8.9秒中文合成样例:计划6.7秒、首次分离14.1秒、转写15.7秒、三次独立音轨分离各约10.8秒、成片58.5秒。包含本地开发环境冷编译,不作为线上性能结论。
- 导出文件完整解码通过:H.264 854×480、AAC 48kHz 双声道;检查导出画面确认中文字幕实际烧录,SRT 包含识别文本。
- 浏览器实际点击验证通过:播放预览、手动新增字幕、自动转写后立即刷新并重开编辑器、手动字幕保留、人声分离菜单全部三个选项、再次刷新后音轨数量与字幕保留。无页面脚本异常。
- 本地测试素材最初使用跨端口 HTTP URL,被页面 CSP 正确拒绝;改为本地同源测试网关后预览播放通过,未修改产品 CSP。后台素材下载使用隔离测试进程的网络边界替身访问本地 S3;因此这些结果不代表公网存储网络/线上权限链已验收。
- 音频/剪辑/任务61项回归通过,TypeScript通过。新增内容变化必须新建音频任务的断言。修正全链路测试成片节点坐标,避免测试节点互相遮挡。
- 本地报告和截图位于忽略目录
.qa/audio-local/。当前是合成短样例验收,长素材、多人声/复杂音乐质量和生产环境端到端验收尚未覆盖。
主站发布验证
- 48 主站通过
git pull --ff-only origin codex/video-groups-release-0918更新到fe1c9b60,生产分支和 upstream 均为codex/video-groups-release-0918,ahead/behind 为0/0。 - 主站只从 root 可读的
/etc/audio-processing-client.env注入私有服务地址和令牌;配置值、模型权重及测试素材未写入 Git。 - 独立候选端口验证后切换 3125;本地与公网登录页 200,智能剪辑能力接口保持登录保护,静态构建资源 200。
- 私有音频健康检查返回
status=ok、asr=true、separation=true,当前引擎为 FunASR Paraformer / HTDemucs,CPU 单队列空闲。 - 切换前源码、环境文件和构建链接备份位于
/var/backups/ai-chatbot-deploy-20260918T151227;旧构建.next-groups-upscale-20260918T133550保留,可快速回滚。
测试输入为合成语音/背景音,无付费生成调用。私有配置、模型权重、测试凭据、输入输出不提交 Git。