工程開發
podcast-generation avatar

podcast-generation

利用 Azure OpenAI GPT Realtime Mini 模型與 WebSocket 串流技術,產生 AI 播客風格的音訊敘事,包含 PCM 轉 WAV 及前端播放整合。

簡介

播客生成技能為開發人員提供了一個強大的架構模板,用於將即時互動式語音敘事整合到應用程式中。此技能專為全端實作而設計,利用 Azure OpenAI Realtime API 彌合文字內容與對話式 AI 輸出之間的差距。它特別適用於需要低延遲語音回饋或自動化音訊說書的場景,例如新聞應用程式、教育內容平台及互動式 AI 代理。

此技能核心利用 GPT Realtime Mini 模型將輸入文字轉換為高品質的 PCM 音訊流。透過 WebSocket 連線,實現了近乎即時的音訊生成與播放。該技能包含了將原始 PCM 區塊轉換為標準 WAV 格式的必要工具邏輯,確保與現代網頁瀏覽器和音訊播放引擎的相容性。開發人員可以輕鬆選擇 alloy、echo、fable 或 nova 等多種語音檔案,以符合應用程式所需的音調。

  • 透過 Azure OpenAI 的 WebSocket 整合實現即時音訊串流。

  • 將 PCM 輸出直接轉換為瀏覽器相容的 WAV Blob。

  • 支援多種語音角色設定,包含 alloy、echo、fable、onyx、nova 及 shimmer。

  • 涵蓋 Python FastAPI 後端服務與 React 前端播放元件的全端模式。

  • 針對串流增量事件、轉錄同步與生成完成訊號的非同步事件處理。

  • 確保環境已設定正確的 AZURE_OPENAI_AUDIO_ENDPOINT,且不包含舊版的 /openai/v1/ 字尾。

  • 音訊輸出格式為 24kHz、16-bit、單聲道 PCM;請確認本地音訊管線支援此取樣率。

  • 在生產環境中需謹慎處理連線事件,以管理頻寬與潛在的 WebSocket 超時問題。

  • 使用隨附的 PCM 轉 WAV 輔助指令碼以維持音訊品質。

  • 監控包含 response.output_audio.delta 與 response.done 的事件類型,以有效地管理前端狀態與播放緩衝區。

倉庫統計

Star 數
2,204
Fork 數
251
Open Issue 數
46
主要語言
TypeScript
預設分支
main
同步狀態
閒置
最近同步時間
2026年5月3日 下午09:26
在 GitHub 查看