44 lines
1.5 KiB
Markdown
44 lines
1.5 KiB
Markdown
# 工作日报 - 2025年12月25日
|
||
|
||
## 今日完成工作
|
||
|
||
### 1. 修复句子拆分导致的播放停顿问题
|
||
- **问题**:原系统将长句子前2-3个字单独拆分,导致播放时出现不自然的停顿
|
||
- **解决**:移除激进拆分逻辑,实现智能拆分策略
|
||
|
||
### 2. 实现可配置的智能拆分规则
|
||
- **≤8字**:不拆分,整句处理
|
||
- **9-12字**:拆分为2部分并发处理
|
||
- **>12字**:拆分为3部分(6字+6字+剩余)并发处理
|
||
- **效果**:平衡了响应速度和播放流畅性
|
||
|
||
### 3. 实现流式传输功能
|
||
- 支持动画帧数据的实时流式推送
|
||
- 边生成边传输,降低首帧延迟
|
||
- 使用队列机制保证帧顺序的正确性
|
||
|
||
### 4. 修复时间码连续性问题
|
||
- **问题**:拆分后的片段时间码重置,导致动画不连续
|
||
- **解决**:重构时间码调整逻辑,连续片段保持累计时间无缝衔接
|
||
|
||
### 5. 添加连续片段标记机制
|
||
- 在每个动画帧中添加 `isContinuation` 标记
|
||
- 为前端提供片段连续性信息,便于后续优化
|
||
|
||
### 6. 优化并发处理性能
|
||
- 使用多线程(ThreadPoolExecutor)并行生成TTS和A2F数据
|
||
- 长句子(60字)处理速度提升约3倍
|
||
|
||
### 7. 更新API接口和前端调用
|
||
- 添加 `first_sentence_split_size` 参数控制拆分行为
|
||
- 前端默认启用拆分优化
|
||
|
||
### 8. 涉及文件
|
||
- 后端:`services/a2f_api/text_to_blendshapes_service.py`、`api.py`
|
||
- 前端:`examples/3d/main.js`
|
||
|
||
---
|
||
|
||
**日期**:2025年12月25日
|
||
**项目**:文本转语音动画服务优化
|