feat(voices): 配音素材卡片真实播放 + 预置/克隆音色 TTS 试听 #1544
Merged
auto-approve-bot
merged 1 commits from 2026-08-29 21:56:01 +08:00
feat/material-card-audio-preview into develop
1 Commits
| Author | SHA1 | Message | Date | |
|---|---|---|---|---|
|
|
76aa23d61f |
feat(voices): 配音素材卡片真实播放 + 预置/克隆音色 TTS 试听,三 tab 共用真实播放 hook
CI/CD Pipeline / Check push changed paths (pull_request) Has been skipped
CI/CD Pipeline / Check if frontend-only change (pull_request) Successful in 2m42s
PR Automation / Auto Merge on CI Green + Approved (pull_request) Successful in 3m45s
CI/CD Pipeline / Unit Tests (pull_request) Has been skipped
Preview Deploy / Deploy Preview Environment (pull_request) Successful in 3m49s
CI/CD Pipeline / Build Staging API Image (pull_request) Has been skipped
CI/CD Pipeline / Build Staging Web Image (pull_request) Has been skipped
CI/CD Pipeline / Build Staging Worker Image (pull_request) Has been skipped
CI/CD Pipeline / PR Build API Image (pull_request) Has been skipped
CI/CD Pipeline / Frontend Unit Tests (pull_request) Successful in 1m25s
CI/CD Pipeline / Retag skipped Staging API Image (pull_request) Has been skipped
CI/CD Pipeline / Retag skipped Staging Web Image (pull_request) Has been skipped
CI/CD Pipeline / Retag skipped Staging Worker Image (pull_request) Has been skipped
CI/CD Pipeline / Deploy Staging (Watchtower auto-deploy) (pull_request) Has been skipped
CI/CD Pipeline / PR Build Web Image (pull_request) Successful in 1m29s
CI/CD Pipeline / PR Build Worker Image (pull_request) Has been skipped
CI/CD Pipeline / ACR Image Cleanup (pull_request) Has been skipped
CI/CD Pipeline / Staging E2E Tests (pull_request) Has been skipped
CI/CD Pipeline / Staging API Integration Tests (pull_request) Has been skipped
CI/CD Pipeline / Frontend Lint (pull_request) Successful in 2m5s
PR Automation / Auto Approve on CI Green (pull_request) Successful in 5m58s
CI/CD Pipeline / Validate - Migration (alembic) (pull_request) Successful in 8m14s
AI Code Review / AI Code Review (pull_request) Successful in 8m50s
CI/CD Pipeline / Validate - Type Check (mypy) (pull_request) Successful in 9m15s
CI/CD Pipeline / Validate - Code Quality (pull_request) Successful in 16m47s
CI/CD Pipeline / Integration Tests (pull_request) Has been skipped
CI/CD Pipeline / Build Production API Image (pull_request) Has been skipped
CI/CD Pipeline / Build Production Worker Image (pull_request) Has been skipped
CI/CD Pipeline / Build Production Web Image (pull_request) Has been skipped
CI/CD Pipeline / Deploy Production (pull_request) Has been skipped
CI/CD Pipeline / Production Browser E2E (pull_request) Has been skipped
CI/CD Pipeline / Canary Release to Production (pull_request) Has been skipped
CI/CD Pipeline / CI Gate (pull_request) Successful in 28s
ACR Cleanup / ACR Image Cleanup (pull_request_target) Successful in 3m27s
Preview Cleanup / Cleanup Preview Environment (pull_request) Successful in 6m3s
- 素材 tab 卡片新增播放区(播放按钮+波形+进度条+时间,视觉对齐预置音色卡片), 复用 voice-materials 的 new Audio 真实播放,file_url 为空时按钮置灰 - 废弃 pages/voices/hooks/useAudioPlayer.ts 的 setInterval 假播放,重写为 统一真实播放 hook:素材直链播放 + 预置/克隆音色 POST /tts/preview 合成试听 (示例文案固定,结果按 voiceId 内存缓存),timeupdate 驱动进度、 loadedmetadata 取真实时长、ended 复位、暂停/恢复/seek - 合成中按钮 LoadingOutlined 禁点;互斥播放(切卡片/切 tab/离开页面停止) - 合成失败 toast 由 apiClient 拦截器统一处理(含「克隆尚未完成」文案) - 删除废弃 MaterialVoiceCard.tsx(仅 smoke 测试引用),同步更新测试 |