fix(P1): 修复预设配音没有真实声音 - 接入CosyVoice TTS适配器 + legacy引擎配音补齐 #559

Merged
auto-approve-bot merged 1 commits from fix/p1-preset-voice-no-sound into develop 2026-07-19 07:28:56 +08:00
Owner

根因

  1. TTS工厂只有mock provider,CosyVoice真实TTS服务根本没接入TtsService接口
  2. 默认引擎是legacy,legacy路径完全没有TTS配音混音能力

修复内容

  • 新增 CosyVoiceTtsService 适配器,包装 CosyVoiceService 为 TtsService 接口
  • TTS工厂注册 cosyvoice/aliyun/dashscope 三个别名
  • 自动检测:配置了 CosyVoice API Key 则默认用 cosyvoice,否则用 mock(向后兼容)
  • legacy引擎渲染后加 TTS 配音后处理(和标题叠加同模式),失败降级不阻断
  • 支持 replace/mix 两种叠加模式
  • 18个单元测试覆盖适配器 + 工厂 + 配置解析

影响范围

  • packages/adapters/tts/cosyvoice_tts_service.py (新增)
  • apps/worker/services/tts_service_factory.py
  • apps/worker/worker_app/tasks/edit_plan_generation.py (legacy路径加配音后处理)
  • tests/unit/test_cosyvoice_tts_adapter.py (新增, 18个测试)
## 根因 1. TTS工厂只有mock provider,CosyVoice真实TTS服务根本没接入TtsService接口 2. 默认引擎是legacy,legacy路径完全没有TTS配音混音能力 ## 修复内容 - 新增 CosyVoiceTtsService 适配器,包装 CosyVoiceService 为 TtsService 接口 - TTS工厂注册 cosyvoice/aliyun/dashscope 三个别名 - 自动检测:配置了 CosyVoice API Key 则默认用 cosyvoice,否则用 mock(向后兼容) - legacy引擎渲染后加 TTS 配音后处理(和标题叠加同模式),失败降级不阻断 - 支持 replace/mix 两种叠加模式 - 18个单元测试覆盖适配器 + 工厂 + 配置解析 ## 影响范围 - packages/adapters/tts/cosyvoice_tts_service.py (新增) - apps/worker/services/tts_service_factory.py - apps/worker/worker_app/tasks/edit_plan_generation.py (legacy路径加配音后处理) - tests/unit/test_cosyvoice_tts_adapter.py (新增, 18个测试)
xiaoxia added the bugbackendP1 labels 2026-07-19 07:22:58 +08:00
xiaoxia added 1 commit 2026-07-19 07:22:59 +08:00
fix(P1): 修复预设配音没有真实声音 - 接入CosyVoice TTS适配器 + legacy引擎配音补齐
CI Build & Deploy Pipeline / Build Staging API Image (pull_request) Has been skipped
CI Build & Deploy Pipeline / Build Staging Web Image (pull_request) Has been skipped
CI Build & Deploy Pipeline / Build Staging Worker Image (pull_request) Has been skipped
CI Build & Deploy Pipeline / Deploy Staging (Watchtower auto-deploy) (pull_request) Has been skipped
CI Build & Deploy Pipeline / Build Production Web Image (pull_request) Has been skipped
CI Build & Deploy Pipeline / Build Production API Image (pull_request) Has been skipped
CI Build & Deploy Pipeline / Staging E2E Tests (pull_request) Has been skipped
CI Build & Deploy Pipeline / Staging API Integration Tests (pull_request) Has been skipped
CI Build & Deploy Pipeline / Build Production Worker Image (pull_request) Has been skipped
CI Build & Deploy Pipeline / Deploy Production (pull_request) Has been skipped
CI Build & Deploy Pipeline / Production Browser E2E (pull_request) Has been skipped
AI Code Review / AI Code Review (pull_request) Failing after 22s
CI/CD Pipeline / Check if frontend-only change (pull_request) Successful in 23s
CI/CD Pipeline / Frontend Unit Tests (pull_request) Has been skipped
Preview Deploy / Deploy Preview Environment (pull_request) Successful in 54s
CI/CD Pipeline / Frontend Lint (pull_request) Successful in 1m16s
CI/CD Pipeline / Unit Tests (pull_request) Successful in 56s
CI/CD Pipeline / Validate Code Quality And Tests (pull_request) Successful in 2m51s
Auto Approve CI PRs / Auto Approve on CI Green (pull_request) Successful in 3m23s
CI/CD Pipeline / Integration Tests (pull_request) Successful in 1m28s
Auto Merge CI PRs / Auto Merge on CI Green + Approved (pull_request) Successful in 5m57s
Preview Cleanup / Cleanup Preview Environment (pull_request) Successful in 22s
3d0919a869
根因:
1. TTS工厂只有mock provider,CosyVoice真实TTS服务根本没接入TtsService接口
2. 默认引擎是legacy,legacy路径完全没有TTS配音混音能力

修复:
- 新增 CosyVoiceTtsService 适配器,包装 CosyVoiceService 为 TtsService 接口
- TTS工厂注册 cosyvoice/aliyun/dashscope 三个别名
- 自动检测:配置了 CosyVoice API Key 则默认用 cosyvoice,否则用 mock
- legacy引擎渲染后加 TTS 配音后处理(和标题叠加同模式),失败降级不阻断
- 支持 replace/mix 两种叠加模式
- 18个单元测试覆盖适配器 + 工厂 + 配置解析

🚀 预览环境已部署

项目 详情
PR号 #559
预览链接 https://pr-559.preview.xiaoxiajianji.com
API环境 staging

💡 预览环境使用 staging API 数据,请勿在预览环境中操作重要数据。

🔄 每次提交新代码后预览环境会自动更新。

🗑️ PR 关闭或合并后,预览环境会自动清理。

🚀 **预览环境已部署** | 项目 | 详情 | |------|------| | PR号 | #559 | | 预览链接 | [https://pr-559.preview.xiaoxiajianji.com](https://pr-559.preview.xiaoxiajianji.com) | | API环境 | staging | > 💡 预览环境使用 staging API 数据,请勿在预览环境中操作重要数据。 > > 🔄 每次提交新代码后预览环境会自动更新。 > > 🗑️ PR 关闭或合并后,预览环境会自动清理。
auto-approve-bot approved these changes 2026-07-19 07:26:21 +08:00
auto-approve-bot left a comment
Collaborator

CI全绿,自动审批通过。

CI全绿,自动审批通过。
auto-approve-bot approved these changes 2026-07-19 07:26:21 +08:00
auto-approve-bot left a comment
Collaborator

CI全绿,自动审批通过。

CI全绿,自动审批通过。
auto-approve-bot merged commit ef8b747c7b into develop 2026-07-19 07:28:56 +08:00
auto-approve-bot deleted branch fix/p1-preset-voice-no-sound 2026-07-19 07:28:56 +08:00

🗑️ 预览环境已清理

PR #559 已关闭或合并,对应的预览环境已被清理。

如有需要,可以重新打开 PR 来重新生成预览环境。

🗑️ **预览环境已清理** PR #559 已关闭或合并,对应的预览环境已被清理。 > 如有需要,可以重新打开 PR 来重新生成预览环境。
Sign in to join this conversation.