# CCA 唱词助手子项目 Brief > 主项目 → 子项目的"交接宪法":红线、技术栈、出入口接口 > 起草日期:2026-07-04 > 状态:主项目签发,子项目内部不修改 --- ## 一、为什么做 **痛点**:《军事科技》每期节目剪辑完成后,编导需要制作一份唱词字幕(SRT 文件)交给责编拉到大洋系统上线。目前纯手工操作——对照 A 稿听音频逐句打字幕,费时且容易出错。 **升级目标**:编导只需提供 A 稿 + 粗编人声音频,系统自动走 ASR + AI 校对 + 编导审稿确认,最终输出大洋系统可直接使用的 SRT 文件。 **紧迫性**:切实解决当前痛点,功能不复杂,两天内出可用版本。先独立部署测试,成熟后并入 TPS 主项目。 --- ## 二、做什么(功能边界) | 模块 | 简述 | |---|---| | 专有名词提取 | AI 从 A 稿中摘取军事专有名词(型号、人名、机构等),形成热词词典 | | 讯飞 ASR 转写 | 音频 + 词典 → 带时间戳的 ASR 稿 | | AI 校对比对 | ASR 稿 ⊕ A 稿比对,自动修正明显错误,标记存疑差异 | | 编导审稿台 | 双屏对比 UI,差异高亮,编导点击确认/手动修改 | | SRT 生成 | B 稿按拍词规则折行 + 时间戳 → 大洋格式 SRT | **具体怎么做,子项目内部讨论,本 Brief 不预设方案。** --- ## 三、怎么用(目标流程) 1. 编导剪完节目,手头有 A 稿(docx/txt)+ 粗编纯人声音频 2. 编导上传 A 稿和音频到 CCA 系统 3. 系统自动:提取专有名词 → 讯飞 ASR → AI 校对 → 生成初版对比 4. 编导进入审稿台:查看差异、确认/修改 5. 系统输出 SRT 文件 6. 责编拿 SRT 拉到大洋系统形成唱词字幕 --- ## 四、不做什么(红线) - ❌ **不替代编导审稿**:AI 拿不准的必须过编导确认,不全自动出 SRT - ❌ **不改 A 稿内容**:A 稿只用于提取专有名词和提供参照,不回写 - ❌ **不动主项目 backend 代码 / schema**(在吸收进主项目之前) - ❌ **不复用主项目 backend/.env 的凭证**(子项目自己 .env) - ❌ **不用讯飞大模型版 ASR**(用录音文件转写标准版,与 doco 一致) - ❌ **不做视频处理**(输入是已分离的纯人声音频,不是视频) - ❌ **不做内容创作**(AI 只校对不创作,尊重 ASR 底稿 + 编导意见) --- ## 五、技术栈约束 - **运行环境**:Python 3.x + Web 前端(审稿台) - **ASR**:讯飞开放平台 录音文件转写标准版(热词偏置注入) - **AI/LLM**:用于专有名词提取 + 校对(具体模型子项目讨论,省 token 优先) - **输出格式**:SRT(大洋系统兼容,有样本) - **部署**:先部署 lanhao 配音 2.0 网站测试,后续并入 TPS - **美术风格**:参考 `ai-labeling/example/` 目录下的设计稿(`功能区划.jpg`、`幅面参考.jpg`、`页面风格.webp`),CCA 的 UI 风格与 TPS 主项目保持一致 --- ## 六、交付什么(出口接口) ### 6.1 并入架构(同一服务器、同一进程) CCA 最终**不是独立微服务**,而是代码合并进 TPS 同一套服务: - **后端**:CCA 的 API 路由并入 `backend/app/api/`(如 `cca.py`),业务逻辑并入 `backend/app/services/`(如 `cca_service.py`),共用同一个 FastAPI 进程 - **前端**:CCA 页面并入 `frontend/src/pages/`(如 `CCA/` 目录),作为 TPS React 应用的一个路由页面(`/cca`) - **同一台服务器**:不存在跨服务调用,共用 TPS 的 PostgreSQL、同一个 `.env` ### 6.2 开发阶段的独立形态 并入前的开发测试阶段,CCA 以独立可运行的 Web 应用存在: - 独立的后端(FastAPI 或轻量框架)+ 前端(审稿台 UI) - 可单独部署到 lanhao 配音 2.0 网站跑通验证 - 代码结构从一开始就按"能干净并入 TPS"设计(目录命名、API 风格、前端组件规范对齐主项目) ### 6.3 具体交付清单 | 交付物 | 说明 | |---|---| | CCA 后端 API | 文件上传(A稿+音频)、ASR 任务触发/轮询、校对结果、审稿确认、SRT 下载 | | 讯飞 ASR 适配层 | 热词注入 + 转写 + 解析,可被主项目其他模块复用(与 doco 逻辑同源) | | 专有名词提取服务 | AI 从 A 稿提取军事专名 → 热词词典 | | AI 校对比对服务 | ASR 稿 ⊕ A 稿差异标记(自动修正 + 存疑清单) | | 编导审稿台前端 | 双屏对比 UI + 差异高亮 + 确认/手改交互 | | 拍词折行引擎 | 按规则把 B 稿折行 + 结合时间戳生成 SRT | | SRT 输出 | 大洋系统兼容格式(有样本对标) | ### 6.4 配置与凭证 - 开发阶段:cca 自己的 `.env`(讯飞 Key + LLM Key) - 并入后:凭证合并进 TPS 主项目 `backend/.env`,讯飞 Key 可与 doco 共用 - 主项目 `docs/api_credentials_inventory.md` 登记 CCA 凭证元信息 ### 6.5 不接受 - 并入前,子项目自己改主项目 backend 代码、schema、迁移 - 未经主项目审批引入主项目没有的技术栈 - 并入时引入与主项目冲突的依赖版本 --- ## 七、入口接口(子项目要知道的主项目现状) - **主项目已有讯飞 ASR 经验**:doco 子项目已跑通讯飞录音文件转写标准版,签名/上传/轮询/解析全套逻辑可复用 - **主项目有 `api_credentials_inventory.md`**:凭证元信息登记表 - **主项目有跨子项目协作规则**:PRD 版本管理等,见 `跨子项目协作规则.md` --- ## 八、制片人待提供 - [ ] 拍词规则(责编拍词的具体 markdown 规则文档) - [ ] 大洋 SRT 样本文件(一份能用的真实样本) - [ ] 粗编音频样本(一期的真实音频,用于开发测试) - [ ] A 稿样本(对应的编导 A 稿) --- ## 九、本 Brief 自身的修订规则 - 本 Brief 不在子项目内修改 - 红线/技术栈如有变更,**主项目这边发新版** - 子项目可在自己的 chat 里建议调整,调整动作只能在主项目发生