- 新增 Excel 輸入模組:解析 .xlsx 格式講稿檔案 - 新增 TTS 引擎模組:整合 edge-tts 調用 Azure Neural Voice - 新增 PyQt6 圖形介面:檔案選擇、語音選擇、進度監控 - 新增執行緒模型:QThread + Asyncio 確保 UI 響應性 - 支援 10 種 Neural Voice (中文/越南/英文) - 支援中英混雜、越英混雜發音 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
60 lines
2.7 KiB
Plaintext
60 lines
2.7 KiB
Plaintext
專案名稱: 智慧簡報旁白生成系統 (Smart Slide Voiceover System) 版本: v1.0 日期: 2025/12/27 硬體基準: PC (Windows), 32GB RAM, RTX 4060 (主要利用 CPU 與 網路頻寬)
|
||
|
||
1. 專案概述 (Executive Summary)
|
||
本專案旨在開發一款桌面端應用程式 (Desktop Application),協助使用者將撰寫於 Excel 的簡報講稿,批次轉換為專業級、擬真且具備親切感的語音檔案。系統需解決跨語言(中文+英文專有名詞、越南文+英文專有名詞)的發音自然度問題,並提供圖形化介面以降低操作門檻。
|
||
|
||
2. 使用者流程 (User Flow)
|
||
環境啟動:使用者透過 Conda 啟動應用程式。
|
||
|
||
素材匯入:使用者透過 GUI 選擇標準格式的 Excel 腳本檔 (.xlsx)。
|
||
|
||
參數確認:使用者確認輸出路徑(預設為自動建立)。
|
||
|
||
執行生成:點擊「開始」按鈕,系統依序處理每一行講稿。
|
||
|
||
狀態監控:使用者透過進度條與日誌視窗監控生成狀態,且介面保持響應。
|
||
|
||
結果驗收:生成完畢後,彈出通知,使用者至資料夾查收 MP3 檔案。
|
||
|
||
3. 功能需求 (Functional Requirements)
|
||
3.1 輸入模組
|
||
格式支援:僅支援 .xlsx 格式。
|
||
|
||
欄位定義:
|
||
|
||
Filename (必要):輸出音檔名稱 (例如 Slide_01)。
|
||
|
||
Text (必要):旁白內容,支援中英夾雜或越英夾雜。
|
||
|
||
Lang (選填):指定該段落的主要語言 (zh 或 vi),若為空則預設為 zh。
|
||
|
||
3.2 核心處理模組 (TTS Engine)
|
||
引擎選型:採用微軟 Edge-TTS (Neural Voice) 技術,無需本地 GPU 模型推論。
|
||
|
||
語言處理邏輯:
|
||
|
||
越南文模式 (vi):針對越南廠區/客戶簡報。需精確朗讀越南文,並能以自然口音朗讀夾雜的英文術語(如 "Yield rate")。
|
||
|
||
中文模式 (zh):針對內部彙報。需使用台灣口音,語氣專業親切,無機械音,並能流利朗讀英文術語。
|
||
|
||
穩定性機制:必須包含 Rate Limit 防護(每筆請求間隔),防止因請求過快導致 IP 被封鎖。
|
||
|
||
3.3 圖形化使用者介面 (GUI)
|
||
框架:PyQt6。
|
||
|
||
主要元件:
|
||
|
||
檔案選擇器 (File Browser)。
|
||
|
||
操作按鈕:開始 (Start)、強制停止 (Stop)。
|
||
|
||
視覺回饋:百分比進度條 (Progress Bar)、多行日誌視窗 (Log Console)。
|
||
|
||
互動性:執行耗時任務時,主視窗不得凍結 (No Freeze),需維持可拖曳與最小化狀態。
|
||
|
||
4. 非功能性需求 (Non-Functional Requirements)
|
||
部署性:必須使用 Conda 進行依賴管理,確保環境可移植性。
|
||
|
||
效能:單筆音訊生成延遲不超過 3 秒(視網路狀況),支援 100 筆以上的批次佇列。
|
||
|
||
錯誤容忍:單一檔案生成失敗(如特殊字元錯誤)不應中斷整個批次作業,僅需記錄錯誤並跳至下一筆。 |