專案名稱: 智慧簡報旁白生成系統 (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 筆以上的批次佇列。 錯誤容忍:單一檔案生成失敗(如特殊字元錯誤)不應中斷整個批次作業,僅需記錄錯誤並跳至下一筆。