共用方式為


Azure AI 語音有何新功能?

Azure AI 語音會持續更新。 為了讓您隨時掌握最新的開發訊息,此文章提供有關新版本與新功能的資訊。

最近醒目提示

版本資訊

選擇服務或資源

語音 SDK 1.42.0:2024 年 12 月版本

新功能

  • Java:使用 FileLogger、MemoryLogger、EventLogger 和 SpxTrace 類別新增診斷記錄 API。
  • 支援將會議參與者的 JSON 屬性「詳細數據」傳送至服務
  • Go:已新增公用屬性標識碼SpeechServiceConnection_ProxyHostBypass,以指定未使用 Proxy 的主機。
  • JavaScript,Go:已新增公用屬性標識碼Speech_SegmentationStrategy,以判斷口語詞組何時結束,且應該產生最終辨識的結果(包括語意分割)
  • JavaScript,Go:新增公用屬性標識符Speech_SegmentationMaximumTimeMs根據 Java、Python、C#、C++的時間決定口語詞組的結尾

錯誤修正

  • 已修正未設定語音名稱時,針對每個合成載入的內嵌 TTS 語音 (re)。
  • 修正在某些情況下使用 MeetingTranscriber 時的位移計算問題。
  • 已修正平行註冊多個診斷事件接聽程式時的潛在死結。
  • (JavaScript)已修正音訊結尾時可能遺失的 NoMatch 結果。 此修正程式也會讓語音結尾的行為與其他 SDK 語言一致,而且可能會導致不再引發某些空白事件。
  • (JavaScript)修正結果 JSON 中的位移,以配合結果物件上的位移。 先前只有結果物件的 offset 屬性已修正,以考慮服務重新連線。
  • Go 語言:修正編譯錯誤 https://github.com/Azure-Samples/cognitive-services-speech-sdk/issues/2639
  • 已修正重新連線至服務時會議轉譯的結果位移。
  • 已修正記錄中的死結。

範例

  • 已更新 C# 範例以使用 .NET 8.0。
  • Java 範例使用診斷記錄 API,顯示新診斷記錄類別的使用方式。

2024 年 11 月版本

適用於 Visual Studio Code 的 Azure AI 語音工具組擴充功能

Azure AI 語音工具組擴充功能現在適用於 Visual Studio Code 使用者。 其中包含一份語音快速入門和案例範例清單,可透過簡單的點選輕鬆建置及執行。 如需詳細資訊,請參閱 Visual Studio Code Marketplace中的 Azure AI 語音工具組

文字到語音轉換虛擬人偶程式代碼範例

我們已將文字新增至 AndroidiOS 的語音虛擬人偶程式代碼範例。 這些範例示範如何在行動應用程式中使用即時文字到語音虛擬人偶。

語音 SDK 1.41.1:2024 年 10 月版本

新功能

  • 已新增 Amazon Linux 2023 和 Azure Linux 3.0 的支援。
  • 已新增公用屬性標識碼SpeechServiceConnection_ProxyHostBypass,以指定未使用 Proxy 的主機。
  • 已新增屬性來控制新的片語分割策略。

錯誤修正

重大變更

  • 已移除 Windows ARM 32 位上的關鍵詞辨識支援,因為此平台無法使用必要的 ONNX 運行時間。

語音 SDK 1.40:2024 年 8 月版本

注意

語音 SDK 1.39.0 版是內部版本,並未遺失。

新功能

  • 已新增在語音辨識中串流 G.722 壓縮音訊的支援。
  • 已新增語音合成輸入文字串流中音調、速率和音量設定的支援。
  • 已新增個人語音輸入文字串流的支援,方法是在語音合成中引進 PersonalVoiceSynthesisRequest。 此 API 處於預覽狀態,未來版本中可能會有所變更。
  • 已新增在使用 ConversationTranscriber 時對中繼結果進行自動分段的支援。
  • 已移除 CentOS/RHEL 7 支援,因為 CentOS 7 EOLRHEL 7 維護支援終止 2
  • 使用內嵌語音模型現在需要模型授權,而不是模型金鑰。 如果您是現有的內嵌語音客戶,且想要升級,請在連絡您的 Microsoft 支援人員,以取得模型更新的詳細資料。

錯誤修正

範例

  • 已更新內嵌語音範例,以使用模型授權,而不是金鑰。

語音 SDK 1.38.0:2024 年 6 月版本

新功能

  • 升級語音 SDK Linux 平台需求:
    • 新的最低基準為 Ubuntu 20.04 LTS,或與 glibc 2.31 或更新版本相容。
    • Linux x86 的二進位檔會依照 Ubuntu20.04 平台支援移除。
    • 請注意,RHEL/CentOS 7 會持續支援到 6 月 30 日 (CentOS 7 結束和 RHEL 7 維護支援 2 結束)。 其二進位檔將會在語音 SDK 1.39.0 版本中移除。
  • 在 Linux 上新增 OpenSSL 3 的支援。
  • 使用語音合成器新增 g722-16khz-64kbps 音訊輸出格式的支援。
  • 新增使用語音合成器透過連接物件傳送訊息的支援。
  • 在 Objective-C 和 Swift 中新增 Start/StopKeywordRecognition API。
  • 新增用於選取自訂翻譯模型類別的 API。
  • 使用語音合成器更新 GStreamer 使用方式。

錯誤修正

  • 修正 Start/StopKeywordRecognition 期間「Websocket 訊息大小不能超過 65,536 個位元組」錯誤。
  • 修正語音合成期間的 Python 分割錯誤。

範例

  • 更新 C# 範例,以預設使用 .NET 6.0。

語音 SDK 1.37.0:2024 年 4 月版本

新功能

  • 新增語音合成中輸入文字串流的支援。
  • 將預設語音合成語音變更為 en-US-AvaMultilingualNeural。
  • 更新 Android 組建以使用 OpenSSL 3.x。

錯誤修正

範例

  • 新功能已更新。

語音 SDK 1.36.0:2024 年 3 月版本

新功能

  • 使用 AutoDetectSourceLanguageConfig::FromOpenRange() 在 v2 端點上新增語言識別支援。

錯誤修正

  • 修正如果在 SynthesisStarted 事件期間呼叫 stop 則不會觸發 SynthesisCanceled 事件。

  • 修正內嵌語音合成中的雜訊問題。

  • 修正平行執行多個識別器時,內嵌語音辨識中的當機問題。

  • 修正 v1/v2 端點上的片語偵測模式設定。

  • 修正 Microsoft Audio Stack 的各種問題。

範例

  • 新功能的更新。

語音 SDK 1.35.0:2024 年 2 月版本

新功能

  • 將預設文字轉換語音,從 en-US-JennyMultilingualNeural 變更為 en-US-AvaNeural。
  • 使用詳細的輸出格式,支援內嵌語音翻譯結果中的文字層級詳細資料。

錯誤修正

  • 修正 Python 中的 AudioDataStream 位置 getter API。
  • 使用 v2 端點修正語音翻譯,無需進行語言偵測。
  • 修正內嵌文字轉換語音中的隨機當機和重複字邊界事件。
  • 針對 WebSocket 連線上的內部伺服器錯誤,傳回正確的取消錯誤碼。
  • 修正當 MAS 與 C# 搭配使用時,載入 FPIEProcessor.dll 程式庫失敗的問題。

範例

  • 內嵌辨識範例的次要格式設定更新。

語音 SDK 1.34.1:2024 年 1 月版本

重大變更

  • 僅限錯誤修正

新功能

  • 僅限錯誤修正

錯誤修正

  • 修正在 1.34.0 中引進的迴歸,其中服務端點 URL 是使用錯誤的區域設定資訊,針對多個中國地區的使用者所建立。

語音 SDK 1.34.0:2023 年 11 月版本

重大變更

  • SpeechRecognizer 預設會更新為使用新的端點 (也就是未明確指定 URL 時),該端點不再支援大多數屬性的查詢字串參數。 請使用對應的 API 函式,而不是使用 ServicePropertyChannel.UriQueryParameter 直接設定查詢字串參數。

新功能

  • 與 .NET 8 的相容性 (適用於 https://github.com/Azure-Samples/cognitive-services-speech-sdk/issues/2170 的修正程式,但 centos7-x64 相關警告除外)
  • 支援內嵌語音效能計量,可用來評估裝置執行內嵌語音的能力。
  • 支援內嵌多語系翻譯中的來源語言識別。
  • 支援 iOS 和 Swift/Objective-C 的內嵌語音轉換文字、文字轉換語音和翻譯,預覽版已發行。
  • MicrosoftCognitiveServicesSpeechEmbedded-iOS Cocoapod 中提供內嵌支援。

錯誤修正

  • 適用於 iOS SDK x2 倍二進位大小成長的修正程式 · 問題 #2113 · Azure-Samples/cognitive-services-speech-sdk (github.com)
  • 適用於無法從 Azure 語音轉換文字 API 取得文字層級時間戳記的修正程式 · 問題 #2156 · Azure-Samples/cognitive-services-speech-sdk (github.com)
  • 適用於 DialogServiceConnector 解構階段以正確中斷事件連線的修正程式。 這偶爾會造成當機。
  • 適用於使用 MAS 時建立識別器期間之例外狀況的修正程式。
  • Microsoft.CognitiveServices.Speech.Extension.MAS NuGet 套件的 FPIEProcessor.dll (適用於 Windows UWP x64 和 Arm64) 相依於原生 C++ 的 VC 執行階段程式庫。 已修正此問題,方法是更新相依性以更正 VC 執行階段程式庫 (適用於 UWP)。
  • 適用於 [MAS] 使用 MAS 時重複呼叫 recognizeOnceAsync 導致 SPXERR_ALREADY_INITIALIZED 的修正程式 · 問題 #2124 · Azure-Samples/cognitive-services-speech-sdk (github.com)
  • 適用於使用片語清單時內嵌語音辨識當機之問題的修正程式。

範例

  • 語音轉換文字、文字轉換語音和翻譯的內嵌 iOS 範例。

語音 CLI 1.34.0:2023 年 11 月版本

新功能

  • 在合成語音時支援字邊界事件輸出。

錯誤修正

  • 已將 JMESPath 相依性更新為最新版本,改善了字串評估

語音 SDK 1.33.0:2023 年 10 月版本

中斷性變更通知

  • 目前在套件設定檔中使用 MAS 的應用程式,需要包含針對 Microsoft Audio Stack (MAS) 新增的 NuGet 套件。

新功能

  • 已新增新的 NuGet 套件 Microsoft.CognitiveServices.Speech.Extension.MAS.nupkg,可在使用 Microsoft Audio Stack 時提供改善的回音消除性能
  • 發音評量:新增了對韻律和內容評估的支援,其可從韻律、詞彙、文法、主題等方面對口語進行評估。

錯誤修正

範例

語音 CLI 1.33.0:2023 年 10 月版本

新功能

  • 在合成語音時支援字邊界事件輸出。

錯誤修正

  • none

語音 SDK 1.32.1:2023 年 9 月版本

錯誤修正

  • Android 套件會使用 OpenSSL1.1.1v 的最新安全性修正進行更新
  • JS – 新增 WebWorkerLoadType 屬性以允許略過逾時背景工作角色的資料 URL 載入
  • JS – 修正 10 分鐘後的交談翻譯中斷連線
  • JS – 來自交談的交談翻譯驗證權杖現在會傳播至翻譯服務連線

範例

語音 SDK 1.31.0:2023 年 8 月版本

新功能

  • 語音 SDK 1.31.0 公開預覽中提供即時自動分段標記的支援。 這項功能適用於下列 SDK:C#、C++、JAVA、JavaScript、Python 和 Objective-C/Swift。

  • 使用音訊播放同步的語音合成字邊界和描聲影像事件

重大變更

  • 先前的「對話謄寫」案例已重新命名為「會議謄寫」。 例如,使用 MeetingTranscriber 而非 ConversationTranscriber,並使用 CreateMeetingAsync 而非 CreateConversationAsync。 雖然 SDK 物件和方法的名稱已變更,但重新命名不會造成功能變更。 使用會議謄寫物件來謄寫具有使用者設定檔和語音簽章的會議。 如需詳細資訊,請參閱會議謄寫。 這些變更不會影響「對話翻譯」物件和方法。 您仍然可以針對會議翻譯案例使用 ConversationTranslator 物件及其方法。
  • 針對即時自動分段標記,會導入新的 ConversationTranscriber 物件。 新的「對話謄寫」物件模型和呼叫模式類似於 SpeechRecognizer 物件的持續辨識。 主要差異在於 ConversationTranscriber 物件是設計成用於對話案例中,您想要區分多個說話者 (自動分段標記)。 使用者設定檔和語音簽章不適用。 如需詳細資訊,請參閱即時自動分段標記快速入門

下表顯示即時自動分段標記和會議謄寫的先前和新物件名稱。 案例名稱位於第一個資料行,前一個物件名稱位於第二個資料行中,而新的物件名稱則位於第三個資料行中。
案例名稱 先前的物件名稱 新的物件名稱
即時自動分段標記 N/A ConversationTranscriber
會議謄寫 ConversationTranscriber
ConversationTranscriptionEventArgs
ConversationTranscriptionCanceledEventArgs
ConversationTranscriptionResult
RemoteConversationTranscriptionResult
RemoteConversationTranscriptionClient
RemoteConversationTranscriptionResult
Participant1
ParticipantChangedReason1
User1
MeetingTranscriber
MeetingTranscriptionEventArgs
MeetingTranscriptionCanceledEventArgs
MeetingTranscriptionResult
RemoteMeetingTranscriptionResult
RemoteMeetingTranscriptionClient
RemoteMeetingTranscriptionResult
Participant
ParticipantChangedReason
User
Meeting2

1ParticipantParticipantChangedReasonUser 物件同時適用於會議謄寫和會議翻譯案例。

2Meeting 物件是新的,會與 MeetingTranscriber 物件搭配使用。

錯誤修正

範例

語音 SDK 1.30.0:2023 年 7 月版本

新功能

  • C++、C#、JAVA - 已新增內嵌語音辨識詳細結果中 DisplayWords 的支援。
  • Objective-C/Swift - 已新增 Objective-C/Swift 中 ConnectionMessageReceived 事件的支援。
  • Objective-C/Swift - 改善 iOS 的關鍵字現成模型。 這項變更已增加特定套件的大小,其中包含 iOS 二進位檔 (例如 NuGet、XCFramework)。 我們正努力減少未來版本的大小。

錯誤修正

  • 已修正搭配 PhraseListGrammar 使用語音辨識器時的記憶體流失,如客戶回報 (GitHub 問題)。
  • 已修正文字轉換語音開啟連線 API 中的死結。

其他注意事項

  • JAVA - 某些內部使用的 publicJAVA API 方法已變更為封裝 internalprotectedprivate。 這項變更不應該對開發人員產生影響,因為我們不會預期應用程式正在使用那些變更。 此處已針對透明度所述。

範例

語音 SDK 1.29.0:2023 年 6 月版本

新功能

  • C++、C#、JAVA - 內嵌語音翻譯 API 的預覽。 現在您可以執行語音翻譯,而不需要雲端連線!
  • JavaScript - 已針對語音翻譯啟用連續語言識別 (LID)。
  • JavaScript - 將 LocaleName 屬性新增至 VoiceInfo 類別的社群貢獻。 感謝您 GitHub 使用者 shivsarthak 進行提取要求。
  • C++、C#、JAVA - 已新增從 16 kHz 到 48 kHz 採樣速率重新取樣內嵌文字轉換語音輸出的支援。
  • 已新增在意圖識別器中使用樣本模式比對 hi-IN 的地區設定支援。

錯誤修正

  • 已修正在物件解構期間,語音辨識器競爭條件所造成的損毀,如某些 Android 測試所示
  • 已修正使用樣本模式比對器在意圖識別器中可能的死結

範例

  • 新的內嵌語音翻譯範例

語音 SDK 1.28.0:2023 年 5 月版本

重大變更

  • JavaScript SDK:已移除線上憑證狀態通訊協定 (OCSP)。 這可讓用戶端更符合憑證處理的瀏覽器和 Node 標準。 1.28 版和更新版本將不再包含我們的自訂 OCSP 模組。

新功能

  • 內嵌語音辨識現在會在語句結束時發生無回應逾時時傳回 NoMatchReason::EndSilenceTimeout。 這符合使用即時語音服務進行辨識時的行為。
  • JavaScript SDK:使用 PropertyId 列舉值設定 SpeechTranslationConfig 上的屬性。

錯誤修正

  • Windows 上的 C# - 修正 Windows 音訊延伸模組中的潛在競爭條件/死結。 在同時快速處置音訊轉譯器,以及使用合成器方法來停止說話的情況下,基礎事件不會由停止重設,而且可能會導致轉譯器物件永遠不會處置,同時它可能會保留全域鎖定以處置,凍結 dotnet GC 執行緒。

範例

  • 已新增 MAUI 的內嵌語音範例。
  • 已更新 Android JAVA 的內嵌語音範例,以包含文字轉換語音。

語音 SDK 1.27.0:2023 年 4 月版本

即將進行的變更通知

  • 我們計畫在下一個 JavaScript SDK 版本中移除線上憑證狀態通訊協定 (OCSP)。 這可讓用戶端更符合憑證處理的瀏覽器和 Node 標準。 1.27 版是包含我們自訂 OCSP 模組的最後一個版本。

新功能

  • JavaScript – 已新增使用說話者辨識和驗證從瀏覽器輸入麥克風的支援。
  • 內嵌語音辨識 - 更新 PropertyId::Speech_SegmentationSilenceTimeoutMs 設定的支援。

錯誤修正

  • 一般 - 服務重新連線邏輯中的可靠性更新 (JavaScript 以外的所有程式設計語言)。
  • 一般 - 修正 Windows (除了 JavaScript 以外所有相關程式設計語言) 上的字串轉換流失記憶體。
  • 內嵌語音辨識 - 修正使用特定文法清單項目時法文語音辨識損毀的問題。
  • 原始程式碼文件 - 修正 SDK 參考文件註解,與服務上的音訊記錄相關。
  • 意圖辨識 - 修正與清單實體相關的模式比對器優先順序。

範例

  • 在 C# 對話謄寫 (CTS) 樣本中正確處理驗證失敗。
  • 已新增 Python、JavaScript、Objective-C 和 Swift 的串流發音評估範例。

語音 SDK 1.26.0:2023 年 3 月版本

重大變更

  • 下列套件中的所有 iOS 目標都已停用 Bitcode:Cocoapod with xcframework、NuGet (適用於 Xamarin 和 MAUI) 和 Unity。 此變更是因為 Apple 從 Xcode 14 和更新版本取代 Bitcode 支援。 這項變更也表示如果您使用 Xcode 13 版本,或者您已使用語音 SDK 明確啟用應用程式上的 Bitcode,您可能會遇到錯誤,指出「架構不包含 Bitcode,而且您必須重建它」。 若要解決此問題,請確定您的目標已停用 Bitcode。
  • 此版本中的最低 iOS 部署目標已升級為 11.0,這表示不再支援 armv7 HW。

新功能

  • 內嵌 (裝置上) 語音辨識現在支援 8 和 16-kHz 取樣率輸入音訊 (每個樣本 16-bit、單聲道 PCM)。
  • 語音合成現在會報告結果中的連線、網路和服務延遲,以協助端對端延遲最佳化。
  • 使用樣本模式比對進行意圖辨識的新中斷規則。 比對的字元位元組越多,將會勝過具有較低字元位元組計數的模式比對。 範例:模式「選取右上方的 {something}」將會勝過「選取 {something}」

錯誤修正

  • 語音合成:修正 Emoji 在字邊界事件中不正確的錯誤。
  • 使用交談語言理解 (CLU) 進行意圖辨識
    • 來自 CLU Orchestrator 工作流程的意圖現在會正確出現。
    • JSON 結果現在可透過屬性識別碼 LanguageUnderstandingServiceResponse_JsonResult 取得。
  • 使用關鍵字啟用的語音辨識:修正關鍵字辨識之後遺漏 ~150 毫秒的音訊。
  • 修正語音 SDK NuGet iOS MAUI 發行組建,客戶 (GitHub 問題)

範例

語音 SDK 1.25.0:2023 年 1 月版本

重大變更

  • 語言識別 (預覽) API 已經過簡化。 如果您更新為語音 SDK 1.25 並看到建置中斷,請瀏覽 [語言識別] 頁面以了解新的屬性 SpeechServiceConnection_LanguageIdMode。 這個單一屬性會取代前兩個 SpeechServiceConnection_SingleLanguageIdPrioritySpeechServiceConnection_ContinuousLanguageIdPriority 屬性。 在最近的模型改進之後,不再需要在低延遲和高精確度之間設定優先順序。 現在,您只需要選取在執行連續語音辨識或翻譯時,是否要在啟動時執行或連續語言識別。

新功能

  • C#/C++/JAVA:內嵌語音 SDK 現已在受閘道公開預覽下發行。 請參閱內嵌語音 (預覽) 文件。 當雲端連線斷斷續續或無法使用時,您現在可以進行裝置上的語音轉換文字和文字轉換語音。 已支援 Android、Linux、macOS 和 Windows 平台
  • C# MAUI:在語音 SDK NuGet (客戶問題) 中已新增 iOS 和 Mac Catalyst 目標的支援
  • Unity:Android x86_64架構已新增至 Unity 套件 (客戶問題)
  • Go
    • 已針對語音辨識 (客戶問題) 新增 ALAW/MULAW 直接串流支援
    • 已新增 PhraseListGrammar 的支援。 感謝您 GitHub 使用者 czkoko 對社群貢獻!
  • C#/C++:意圖識別器現在支援 C++ 和 C# 中以及 Microsoft 服務上協調流程的交談語言理解模型

錯誤修正

  • 修正在嘗試停止 KeywordRecognizer 時偶爾停止回應的問題
  • Python
    • 修正 PronunciationAssessmentGranularity.FullText 設定時取得發音評定結果 (客戶問題)
    • 修正取得語音合成語音時未擷取男性語音的性別屬性
  • JavaScript
    • 修正在 iOS 裝置 (客戶問題) 上記錄的一些 WAV 檔案
    • JS SDK 現在會建置而不使用 npm-force-resolutions (Customer 問題)
    • 使用使用 SpeechConfig.fromEndpoint() 建立的 speechConfig 執行個體時,對話翻譯工具現在已正確設定服務端點

範例

  • 已新增示範如何使用內嵌語音的範例

  • 已新增 MAUI 的語音轉換文字範例

    請參閱語音 SDK 範例存放庫

語音 SDK 1.24.2:2022 年 11 月版本

新功能

  • 沒有新功能,只要內嵌引擎修正即可支援新的模型檔案。

錯誤修正

  • 所有程式設計語言
    • 已修正內嵌語音辨識模型的加密問題。

語音 SDK 1.24.1:2022 年 11月版本

新功能

錯誤修正

  • 所有程式設計語言
    • 修正不支援語音字型時的內嵌 TTS 損毀
    • 修正 stopSpeaking() 無法在 Linux (#1686) 上停止播放
  • JavaScript SDK
    • 已修正交談轉譯閘道音訊方式的迴歸。
  • Java
    • 暫時將 POM 和 Javadocs 檔案發佈至 Maven Central,讓文件管線能夠更新線上參考文件。
  • Python
    • 修正 Python speak_text (ssml) 傳回 void 的回歸。

語音 SDK 1.24.0:2022 年 10 月版本

新功能

  • 所有程式設計語言:AMR-WB (16khz) 新增至支援的文字轉換語音音訊輸出格式清單
  • Python:針對支援的 Linux 發行版本新增了適用於 Linux Arm64 的套件。
  • C#/C++/JAVA/Python:使用 AudioStreamWaveFormat 新增了對語音服務 (除了現有 PCM 串流) ALAW 與 MULAW 直接串流的支援。
  • C# MAUI:已更新 NuGet 套件以支援適用於 .NET MAUI 開發人員的 Android 目標 (客戶問題)
  • Mac:已新增個別的 XCframework for Mac,其中不包含任何 iOS 二進位檔。 這可為只需要使用較小 XCframework 套件的 Mac 二進位檔開發人員提供選項。
  • Microsoft 音訊堆疊 (MAS):
    • 當指定波束成形角度時,來自指定範圍以外的音效將會受到更好的抑制。
    • Linux ARM32 和 Linux Arm64 的 libMicrosoft.CognitiveServices.Speech.extension.mas.so 大小大約減少 70%。
  • 使用模式比對的意圖辨識
    • 新增語言 frdeesjp 的正寫法支援
    • 已新增語言 es 的預先建置整數支援。

錯誤修正

  • iOS:修正 iOS 16 上壓縮音訊解碼失敗導致的語音合成錯誤 (客戶問題)。
  • JavaScript
    • 修正在取得語音合成語音清單時無法運作的驗證權杖 (客戶問題)。
    • 使用資料 URL 載入背景工作角色 (客戶問題)。
    • 只有在瀏覽器支援 AudioWorklet 時,才建立音訊處理器工作程式 (客戶問題)。 這是 William Wong 的社群貢獻。 感謝您,William!
    • 修正 LUIS 回應 connectionMessage 為空時辨識的回撥 (客戶問題)。
    • 正確設定語音分割逾時。
  • 使用模式比對的意圖辨識
    • 模型內的非 JSON 字元現在會正確載入。
    • 修正在連續辨識期間呼叫 recognizeOnceAsync(text) 的停止問題。

語音 SDK 1.23.0:2022 年 7 月版本

新功能

  • C#、C++、Java:已透過模式比對新增對語言 zh-cnzh-hk 的意圖辨識支援。
  • C#:已新增對 AnyCPU .NET Framework 編譯的支援

錯誤修正

  • Android:已將 OpenSSL 更新為 1.1.1q,進而修正了 OpenSSL 弱點 CVE-2022-2068
  • Python:修正使用 PushAudioInputStream 時的損毀問題
  • iOS:修正 iOS 回報的「EXC_BAD_ACCESS:嘗試取值 null 指標」(GitHub 問題)

語音 SDK 1.22.0:2022 年 6 月版本

新功能

  • JAVA:已新增適用於 getEntities ()、applyLanguageModels () 和 recognizeOnceAsync(text) 的 IntentRecognitionResult API,以支援「樣本模式比對」引擎。
  • Unity:已新增適用於 Unity 套件的 Mac M1 (Apple Silicon) 支援 (GitHub 問題)
  • C#:已新增適用於 Xamarin Android 的 x86_64 支援 (GitHub 問題)
  • C#:.NET Framework 最低版本已更新為適用於 SDK C# 套件的 v4.6.2,因為 v4.6.1 已淘汰 (請參閱 Microsoft .NET Framework 元件生命週期原則)
  • Linux:已新增對 Debian 11 和 Ubuntu 22.04 LTS 的支援。 Ubuntu 22.04 LTS 需要從此處手動安裝 libssl1.1 做為二進位套件 (例如 libssl1.1_1.1.1l-1ubuntu1.3_amd64.deb 或適用於 x64 的更新版本),或從來源編譯。

錯誤修正

  • UWP:從 UWP 程式庫移除 OpenSSL 相依性,並以 WinRT Websocket 和 HTTP API 取代,以符合安全性合規性和較小的二進位磁碟使用量。
  • Mac:已修正使用以 macOS 平台為目標的 Swift 專案時發生「找不到 MicrosoftCognitiveServicesSpeech 模組」問題
  • Windows、Mac:已修正透過屬性設定的音訊來源,以即時速率進行串流時,有時侯會落後且最終會超過容量的平台特定問題

範例 (GitHub)

  • C#:.NET Framework 範例已更新至使用 v4.6.2
  • Unity:已修正適用於 Android 和 UWP 的虛擬助理範例
  • Unity:已更新 Unity 範例至 Unity 2020 LTS 版本

語音 SDK 1.21.0:2022 年 4 月版本

新功能

  • JAVA 與 JavaScript:已新增使用 SpeechRecognizer 物件時,對連續語言識別的支援
  • JavaScript:已新增診斷 API 以啟用主控台記錄層級和 (僅節點) 檔案記錄,以協助 Microsoft 針對客戶回報的問題進行疑難排解
  • Python:已新增對話轉錄的支援
  • o:已新增對說話者辨識的支援
  • C++ 與 C#:已新增意圖識別器中對必要單字群組的支援 (簡單模式比對)。 例如:「(設定|開始|啟動) 計時器」,其中 「設定」、「開始」或「啟動」必須存在,才能辨識意圖。
  • 所有程式設計語言、語音合成:在字邊界事件中已新增持續時間屬性。 已新增對標點符號界限和句子界限的支援
  • Objective-C/Swift/JAVA:在發音評定結果物件上已新增文字層級結果 (類似 C#)。 應用程式不再需要剖析 JSON 結果字串以取得文字層級資訊 (GitHub 問題)
  • iOS 平台:已新增對 ARMv7 架構的實驗性支援

錯誤修正

  • iOS 平台:修正使用 CocoaPod 時,允許針對目標「任何 iOS 裝置」進行建置 (GitHub 問題)
  • Android 平台:OpenSSL 版本已更新為 1.1.1n,以修正安全性弱點 CVE-2022-0778
  • JavaScript:修正未以檔案大小更新 wav 標頭的問題 (GitHub 問題)
  • JavaScript:修正中斷轉錄案例的要求識別碼非同步問題 (GitHub 問題)
  • JavaScript:修正具現化 SpeakerAudioDestination 時沒有串流的問題 (GitHub 問題)
  • C++:修正 C++ 標頭,以移除編譯 C++17 或更新版本時的警告

GitHub 範例

  • 全新 JAVA 範例,適用於透過語言識別進行的語音辨識
  • 全新 PythonJAVA 範例,適用於對話轉錄
  • 全新 Go 範例,適用於說話者辨識
  • 全新 C++ 和 C# 工具,適用於 Windows 列舉所有音訊擷取和轉錄裝置,以尋找其裝置識別碼。 如果您打算從非預設裝置擷取音訊或轉錄音訊,則語音 SDK 會需要此識別碼。

語音 SDK 1.20.0:2022 年 1 月版本

新功能

  • Objective-C、Swift 和 Python:已新增對 DialogServiceConnector 的支援,用於語音助理案例
  • Python:已新增對 Python 3.10 的支援。 已移除對 Python 3.6 的支援,依據為 Python 的 3.6 生命週期結束
  • Unity:Linux 上的 Unity 應用程式現可支援語音 SDK。
  • C++、C#:C# 現可支援使用模式比對的 IntentRecognizer。 此外,C++ 和 C# 現可支援具有自訂實體、選擇性群組和實體角色的案例。
  • C++、C#:使用新的類別 FileLogger、MemoryLogger 和 EventLogger 改善診斷追蹤記錄。 SDK 記錄是 Microsoft 診斷客戶回報問題的重要工具。 這些新類別可讓客戶更輕鬆地將語音 SDK 記錄整合到自己的記錄系統中。
  • 所有程式設計語言:PronunciationAssessmentConfig 現在都有屬性可設定所需的音素字母 (IPA 或 SAPI) 和 N-Best Phoneme Count (避免需要撰寫設定 JSON,如 GitHub 問題 1284 所述)。 此外,現也支援音節層級輸出。
  • Android、iOS 和 macOS (所有程式設計語言):不再需要 GStreamer 就能支援受限頻寬網路。 SpeechSynthesizer 現在會使用作業系統的音訊解碼功能,以解碼從文字轉換語音服務串流的壓縮音訊。
  • 所有程式設計語言:SpeechSynthesizer 現可支援三個新的原始輸出 Opus 格式 (不含容器),這些格式在即時串流案例中受到廣泛使用。
  • JavaScript:已新增 getVoicesAsync () API 至 SpeechSynthesizer,以擷取支援的合成語音清單 (GitHub 問題 1350)
  • JavaScript:已新增 getWaveFormat () API 至 AudioStreamFormat 以支援非 PCM 波格式 (GitHub 問題 452)
  • JavaScript:已新增磁碟區 getter/setter 和 mute () /unmute () API 至 SpeakerAudioDestination (GitHub 問題 463)

錯誤修正

  • C++、C#、JAVA、JavaScript、Objective-C 和 Swift:修正以在停止使用 PushAudioInputStream 的語音辨識器時,移除 10 秒的延遲。 這適用於呼叫 StopContinuousRecognition 後沒有推送新音訊的案例 (GitHub 問題 1318331)
  • Android 和 UWP 上的 Unity:已修正 UWP、Android Arm64 和 Windows 子系統 Android 版 (WSA) Arm64 的 Unity 中繼檔案 (GitHub 問題 1360 (英文))
  • iOS:現已修正使用 CocoaPods 時在任何 iOS 裝置上編譯語音 SDK 應用程式 (GitHub 問題 1320)
  • iOS:當 SpeechSynthesizer 設定為將音訊直接輸出至喇叭時,播放會在罕見情況下停止。 已修正此問題。
  • JavaScript:如果找不到音訊工作程式,則會使用指令碼處理器後援 (GitHub 問題 455)
  • JavaScript:新增通訊協定至代理程式,以降低 Sentry 整合時發生的 BUG (GitHub 問題 465)

GitHub 範例

  • C++C#PythonJAVA 範例,示範如何取得詳細的辨識結果。 詳細資料包括替代辨識結果、信賴分數、語彙表單、標準化表單、遮罩標準化表單,以及每個結果的文字層級計時。
  • 已新增 iOS 範例,使用 AVFoundation 做為外部音訊來源。
  • 已新增 JAVA 範例,示範如何使用 WordBoundary 事件取得 SRT (SubRip Text) 格式。
  • Android 範例,適用於發音評定。
  • C++C#,示範新的診斷記錄類別使用方式。

語音 SDK 1.19.0:2021 年 11 月版本

重點

  • 說話者辨識服務現已正式發行 (GA)。 語音 SDK API 適用於 C++、C#、JAVA 和 JavaScript。 使用說話者辨識時,您可以依據說話者的獨特聲音特性,精準地驗證和識別說話者。 如需此主題的詳細資訊,請參閱文件

  • 我們已中斷支援搭配 Azure DevOps 和 GitHub 的 Ubuntu 16.04。 Ubuntu 16.04 已於 2021 年 4 月中止支援服務。 將 Ubuntu 16.04 工作流程移轉至 Ubuntu 18.04 或更新的版本。

  • Linux 二進位檔案中的 OpenSSL 連結已變更為動態。 Linux 二進位檔案大小已減少約 50%。

  • 已新增對 Mac M1 ARM 型晶片的支援。

新功能

  • C++/C#/JAVA:已新增新的 API,以啟用 Microsoft 音訊堆疊語音輸入的音訊處理支援。 文件在這裡

  • C++:新的意圖辨識 API 可輔助更進階的模式比對。 這包括清單和預建的整數實體,以及將意圖和實體分組為模型的支援 (文件、更新,和範例正在開發中,並且將在不久的未來中發行)。

  • Mac:支援適用於 CocoaPod、Python、JAVA 和與 GitHub 問題 #1244 (英文) 相關的 NuGet 套件的 Silicon Arm64 (M1) 晶片。

  • iOS/Mac:iOS 和 macOS 二進位檔案已封裝至與 GitHub 問題 #919 相關的 xcframework。

  • iOS/Mac:支援與 GitHub 問題 #1171的 Mac Catalyst。

  • Linux:CentOS 7 新增新的 tar 套件有關語音 SDK。 Linux .tar 套件現已在 lib/centos7-x64 中包含適用於 RHEL/CentOS 7 的特定程式庫。 lib/x64 中的語音 SDK 程式庫仍適用於所有其他支援的 Linux x64 發行版本 (包括 RHEL/CentOS 8),但無法在 RHEL/CentOS 7 上運作。

  • JavaScript:VoiceProfile 與 SpeakerRecognizer API 產生非同步/可等候。

  • JavaScript:已新增支援至美國政府的Azure 區域。

  • Windows:已新增支援通用 Windows 平台 (UWP) 的播放。

錯誤修正

  • Android:Android 套件的 OpenSSL 安全性更新 (已更新至 1.1.1l 版本)。

  • Python:已解決在 Python 上選擇喇叭裝置失敗的 BUG。

  • Core:連線失敗時自動重新連線。

  • iOS:由於使用 GStreamer 時有不穩定與 Bitcode 的編譯問題,使得 iOS 套件的音訊壓縮停用。 透過 GitHub 問題 #1209,了解更多詳細資料。

GitHub 範例

  • Mac/iOS:已更新使用 xcframework 套件的範例和快速入門。

  • .NET:已更新範例,以使用 .NET Core 3.1 版本。

  • JavaScript:已新增語音助理的範例。

語音 SDK 1.18.0:2021 年 7 月版本

注意:從這裡開始使用語音 SDK。

重點摘要

  • Ubuntu 16.04 已於 2021 年 4 月中止支援服務。 使用 Azure DevOps 和 GitHub,我們將於 2021 年 9 月中斷支援 16.04。 將 Ubuntu 16.04 工作流程移轉至 Ubuntu 18.04 或更新的版本。

新功能

  • C++:符合意圖辨識器的簡單語言模式現在可讓您更輕鬆地 執行簡單意圖辨識案例
  • C++/C#/JAVA:我們已新增 GetActivationPhrasesAsync() API 至 VoiceProfileClient 類別,以接收適用於獨立辨識案例的說話者辨識註冊階段中的有效啟用片語清單。
    • 重要事項:說話者辨識功能為預覽版。 在預覽版中建立的所有語音設定檔,將會在說話者辨識功能移出預覽版本到正式運作後的 90 天中止。 到時預覽語音設定檔將會停止運作。
  • Python:已新增 支援現有 SpeechRecognizer 中的持續語言辨識 (LID)TranslationRecognizer 物件。
  • Python:已新增名為SourceLanguageRecognizer新 Python 物件,以執行一次或持續 LID (無辨識或翻譯)。
  • JavaScript:已新增 getActivationPhrasesAsync API 至 VoiceProfileClient 類別,以接收適用於獨立辨識情節的說話者辨識註冊階段中的有效啟用片語清單。
  • JavaScript VoiceProfileClientenrollProfileAsync API 目前為非同步且可等候的。 如需使用方式範例,請參閱此獨立識別程式碼

改善

  • JAVAAutoCloseable支援已新增至許多 Java 物件中。 目前可支援 try-with-resources 模型以釋放資源。 請參閱此使用 try-with-resources 的範例。 也請參閱 Oracle JAVA 文件教學課程的 try-with-resources 陳述式,以學習此模式。
  • 許多平台和架構的磁碟使用量大幅減少。 Microsoft.CognitiveServices.Speech.core 二進位檔案的範例:x64 Linux 減少 475KB (降低 8.0%);Arm64 Windows UWP 減少 464KB (降低 11.5%);x86 Windows 減少 343KB (降低 17.5%);x64 Windows 減少 451KB (降低 19.4%)。

錯誤修正

  • JAVA:已修正合成文字包括代理字元的合成錯誤。 如需更多詳細資料,請參考這裡
  • JavaScript:瀏覽器麥克風音訊流程目前使用 AudioWorkletNode,而非取代 ScriptProcessorNode。 如需更多詳細資料,請參考這裡
  • JavaScript:在長時間執行的對話翻譯案例中,讓對話保持正確地運作。 如需更多詳細資料,請參考這裡
  • JavaScript:辨識器重新連線至連續辨識中 MediaStream 的問題已修正。 如需更多詳細資料,請參考這裡
  • JavaScript:已修正辨識器重新連線至連續辨識中 PushStream 的問題。 如需更多詳細資料,請參考這裡
  • JavaScript:更正詳細辨識結果中的文字層級位移計算。 如需更多詳細資料,請參考這裡

範例

  • JAVA 快速入門已於這裡更新範例。
  • JavaScript 說話者辨識範例已更新為顯示 enrollProfileAsync() 的新使用方式。 請參閱這裡的範例。

語音 SDK 1.17.0:2021 年 5 月版本

注意

這裡開始使用語音 SDK。

重點摘要

  • 較小的磁碟使用量 - 我們會持續減少語音 SDK 及其元件的記憶體和磁碟使用量。
  • 新的獨立語言識別 API 可讓您辨識所說的語言。
  • 在 macOS 上使用 Unity 開發啟用混合現實與遊戲應用程式的語音。
  • 除了語音辨識之外,您現在還可以使用來自 Go 程式設計語言的文字轉換語音。
  • 修正幾個 BUG 可解決您 (我們最有價值的客戶) 標示在 GitHub 的問題! 感謝您! 請繼續提供意見反應!

新功能

  • C++/C#:透過 SourceLanguageRecognizer API 執行新的獨立開始和連續語言偵測。 如果您只想要偵測音訊內容中所說的語言,這就是用來進行這項作業的 API。 請參閱更多 C++C# 的詳細資料。
  • C++/C#:語音辨識和翻譯辨識目前支援開始和連續語言識別,因此您可以在執行謄寫或翻譯之前,用程式設計的方式判斷語音使用的是哪種語言。 請參閱這裡的語音辨識這裡的語音翻譯文件。
  • C#:新增 Unity 支援至 macOS (x64)。 這會在混合現實和遊戲中將語音辨識和語音合成使用案例解除鎖定!
  • Go:我們已新增語音合成文字轉換語音的支援至 Go 程式設計語言中,使語音合成能在更多使用案例中使用。 請參閱我們的快速入門或者我們的參考文件
  • C++/C#/JAVA/Python/Objective-C/Go:語音合成器目前支援 connection 物件。 這可協助您管理和監視語音服務的連線,而且特別有助於於預先連線以減少延遲。 請參閱這裡的文件。
  • C++/C#/JAVA/Python/Objective-C/Go:我們目前會公開 SpeechSynthesisResult 中的延遲和不足時間,以協助您監視和診斷語音合成延遲問題。 請參閱 C++C#JAVAPythonObjective-CGo 的詳細資料。
  • C++/C#/JAVA/Python/Objective-C:文字轉換語音在沒有指定使用語音下,預設使用神經語音。 根據預設,這會提供您更高的精確度輸出,但也會增加預設價格。 您可以指定任何我們超過 70 種標準語音超過 130 種神經語音變更預設設定。
  • C++/C#/JAVA/Python/Objective-C/Go:我們新增性別屬性至合成語音資訊,使它更容易依照性別選擇語音。 這個解決 GitHub 問題 #1055
  • C++、C#、JAVA、JavaScript:我們現可支援說話者辨識的 retrieveEnrollmentResultAsyncgetAuthorizationPhrasesAsyncgetAllProfilesAsync(),以方便使用者管理特定帳戶的所有語音設定檔。 請參閱 C++C#JAVAJavaScript 的文件。 這個解決 GitHub 問題 #338
  • JavaScript:我們已新增連線失敗的重試,讓您的 JavaScript 語音應用程式更為穩固。

改善

  • 已更新 Linux 和 Android 語音 SDK 二進位檔案,以使用最新版的 OpenSSL (1.1.1k)
  • 程式碼大小改善:
    • Language Understanding 現在會分割成獨立的 「lu」 程式庫。
    • Windows x64 Core 二進位檔案的大小減少 14.4%。
    • Android Arm64 Core 二進位檔案大小減少 13.7%。
    • 其他元件的大小也會減少。

錯誤修正

  • All:已修正 GitHub 問題 #842 服務逾時。 您現在可以使用語音 SDK 來謄寫長音訊檔案,無需擔心連線至服務因為此錯誤而終止。 不過,我們仍建議您長檔案使用批次謄寫
  • C#:已修正 GitHub 問題 #947,該問題為不好的狀態下無法在應用程式中留下語音輸入。
  • JAVA:已修正 GitHub 問題 #997,該問題為在沒有網路連線或是沒有訂用帳戶金鑰下使用 DialogServiceConnector 時,會導致適用於 JAVA 1.16 的語音 SDK 當機。
  • 已修正突然停止語音辨識 (例如,在主控台應用程式上使用 CTRL + C) 時的當機。
  • JAVA:已新增修正,在使用適用於 JAVA 語音 SDK 時,可刪除 Windows 上的暫存檔案。
  • JAVA:已修正 GitHub 問題 #994,該問題為呼叫 DialogServiceConnector.stopListeningAsync 可能導致錯誤發生。
  • JAVA:已修正在 虛擬助理快速入門中的客戶問題。
  • JavaScript:已修正 GitHub 問題 #366,該問題為 ConversationTranslator 會顯示「this.cancelSpeech 不是函式」的錯誤。
  • JavaScript:已修正 GitHub 問題 #298,該問題為 「取得為記憶體串流結果」 範例的播放聲音過大。
  • JavaScript:已修正 GitHub 問題 #350 ,該問題為呼叫 AudioConfig 可能導致「ReferenceError:MediaStream 未定義」。
  • JavaScript:已修正長時間執行工作階段, Node.js 中的 UnhandledPromiseRejection 警告。

範例

  • 已於這裡更新 macOS 的 Uinity 範例文件。
  • 您現在可以在這裡找到 Azure AI 語音辨識服務的 React Native 範例。

語音 SDK 1.16.0:2021 年 3 月版本

注意

Windows 上的語音 SDK 取決於 Visual Studio 2015、2017 和 2019 的共用 Microsoft 適用於 Visual Studio 的 Visual C++ 可轉散發套件。 在這裡下載。

新功能

  • C++/C#/JAVA/Python:已移至最新版本的 GStreamer (1.18.3),以在 Windows、Linux 和 Android 上新增對轉錄任何媒體格式的支援。 請參閱這裡的文件。
  • C++/C#/JAVA/Objective-C/Python:已新增解碼壓縮 TTS / 合成音訊到 SDK 的支援。 如果您將輸出音訊格式設定為 PCM,而且 GStreamer 可在系統上使用,則 SDK 將會自動從服務要求壓縮的音訊,以節省頻寬,並在用戶端上解碼音訊。 您可以設定 SpeechServiceConnection_SynthEnableCompressedAudioTransmissionfalse,以停用這項功能。 C++C#JAVAObjective-CPython 的詳細資料。
  • JavaScript:Node.js 使用者現在可以使用 AudioConfig.fromWavFileInput API。 這個解決 GitHub 問題 #252
  • C++/C#/JAVA/Objective-C/Python:已新增 TTS 到傳回所有可用的合成語音的 GetVoicesAsync() 方法。 C++C#JAVAObjective-CPython 的詳細資料。
  • C++/C#/JAVA/JavaScript/Objective-C/Python:已新增 VisemeReceived 事件,讓 TTS / 語音合成傳回同步的發音嘴型動畫。 請參閱這裡的文件。
  • C++/C#/JAVA/JavaScript/Objective-C/Python:已新增 TTS 的 BookmarkReached 事件。 您可以在輸入 SSML 中設定書簽,並取得每個書簽的音訊位移。 請參閱這裡的文件。
  • JAVA:已新增對說話者辨識 API 的支援。 如需更多詳細資料,請參考這裡
  • C++/C#/JAVA/JavaScript/Objective-C/Python:已新增兩個適用於 TTS (Webm16Khz16BitMonoOpus 和 Webm24Khz16BitMonoOpus),具有 WebM 容器的輸出語音格式。 這些是使用 Opus 轉碼器串流音訊的較佳格式。 C++C#JAVAJavaScriptObjective-CPython 的詳細資料。
  • C++/C#/JAVA:已新增對說話者辨識案例擷取語音設定檔的支援。 C++C#JAVA 的詳細資料。
  • C++/C#/JAVA/Objective-C/Python:已新增音訊麥克風和喇叭控制的獨立共享程式庫支援。 這可讓開發人員在無需必要音訊程式庫相依性的環境中使用 SDK。
  • Objective-C/Swift:已新增模組架構的傘標頭支援。 這可讓開發人員將語音 SDK 匯入為 iOS/Mac Objective-C/Swift 應用程式中的模組。 這個解決 GitHub 問題 #452
  • Python:已新增支援 Python 3.9,並中斷支援每個 Python 的3.5 中止支援服務的 Python 3.5。

已知問題

  • C++/C#/JAVADialogServiceConnector 無法使用 CustomCommandsConfig 存取自訂命令應用程式,且將會代替遇到連線錯誤。 這可以透過手動將您的應用程式識別碼新增至具有 config.SetServiceProperty("X-CommandsAppId", "your-application-id", ServicePropertyChannel.UriQueryParameter) 的要求,來解決此問題。 下個版本將會還原 CustomCommandsConfig 的預期行為。

改善

  • 減少語音 SDK 的記憶體使用量和磁碟使用量作為我們在多個版努力過程中,使得 Android 二進位檔案的大小減少 3% 至 5%。
  • 請於這裡參閱 C# 參考文件的已改善精確性、可讀性和「另請參閱」章節。

錯誤修正

  • JavaScript:大型 WAV 檔案標頭現在可以正確剖析 (增加標頭切片至 512 位元組)。 這個解決 GitHub 問題 #962
  • JavaScript:如有麥克風串流在停止辨識之前結束的狀況,麥克風時間點的問題已修正,並解決在 Firefox 中無法使用語音辨識的問題。
  • JavaScript:當瀏覽器在 turnOn 完成之前強制麥克風關閉時,我們現在會正確處理初始化的 Promise。
  • JavaScript:我們以 url-parse 取代 URL 相依性。 這個解決 GitHub 問題 #264
  • Android:已修正當 minifyEnabled 設定為真時,回撥無法運作的問題。
  • C++/C#/JAVA/Objective-C/PythonTCP_NODELAY 將會正確地設定 TTS 的基礎通訊端 IO,以降低延遲。
  • C++/C#/JAVA/Python/Objective-C/Go:已修正開始辨識後識別器立即終結所產生的偶爾當機。
  • C++/C#/JAVA:已修正喇叭辨識器終結時偶爾產生的當機。

範例

  • JavaScript瀏覽器範例不再要求下載獨立 JavaScript 程式庫檔案。

語音 SDK 1.15.0:2021 年 1 月版本

注意

Windows 上的語音 SDK 取決於 Visual Studio 2015、2017 和 2019 的共用 Microsoft 適用於 Visual Studio 的 Visual C++ 可轉散發套件。 在這裡下載。

重點摘要

  • 更小的記憶體和磁碟使用量使得 SDK 更有效率。
  • 適用於自訂神經語音個人預覽版的較高精確度輸出格式。
  • 意圖辨識器現在會傳回比最上層意圖還多,讓您能夠對客戶的意圖進行個別的評量。
  • 語音助理和聊天機器人現在更容易設定,而且您可以讓它立即停止聆聽,並更有效地控制其回應錯誤的方式。
  • 透過將壓縮設為選擇性,改善裝置效能。
  • 在 Windows ARM/Arm64 上使用語音 SDK。
  • 已改善底層的偵錯。
  • 發音評定功能的使用範圍更廣泛。
  • 修正幾個 BUG 可解決您 (我們最有價值的客戶) 標示在 GitHub 的問題! 感謝您! 請繼續提供意見反應!

改善

  • 語音 SDK 現在更有效率且更輕量。 我們已開始進行多個版本的工作,以減少語音 SDK 的記憶體使用量和磁碟使用量。 第一步,我們在大部分平台上的共用程式庫中大幅減少檔案大小。 相較於 1.14 版本:
    • 64 位元與 UWP 相容的 Windows 程式庫大小減少約為 30%。
    • 32 位元 Windows 程式庫尚未有大小改善。
    • Linux 程式庫的大小減少 20 到 25%。
    • Android 程式庫的大小減少 3 到 5%。

新功能

  • 全部:提供新的 48KHz 輸出格式,可透過 TTS 語音合成 API 自訂神經語音的個人預覽:Audio48Khz192KBitRateMonoMp3、audio-48KHz-192kbitrate-mono-Mp3、Audio48Khz96KBitRateMonoMp3、audio-48KHz-96kbitrate-mono-Mp3、Raw48Khz16BitMonoPcm、raw-48KHz-16bit-mono-Pcm、Riff48Khz16BitMonoPcm、riff-48KHz-16bit-mono-pcm。
  • 全部:自訂語音也易於使用。 已新增透過 EndpointId (C++C#JAVAJavaScripObjective-CPython) 設定自訂語音支援。 在此變更之前,自訂語音使用者需要透過 FromEndpoint 方法設定端點 URL。 現在客戶可以使用 FromSubscription 的方法,就像預先建立的語音一樣,然後藉由設定 EndpointId 提供部署識別碼。 這可簡化自訂語音的設定。
  • C++/C#/JAVA/Objective-C/Python:從 IntentRecognizer 取得超過的最上層意圖。 它現在支援透過使用 verbose=true uri 參數的 LanguageUnderstandingModel FromEndpoint 方法來設定包括所有意圖的 JSON 結果,而不是只有排名最高的評分意圖。 這個解決 GitHub 問題 #880。 請參閱這裡的更新文件。
  • C++/C#/JAVA:使得您的語音助理或聊天機器人立即停止聆聽。 DialogServiceConnector (C++C#JAVA) 目前有隨附 ListenOnceAsync()StopListeningAsync() 方法。 這會立即停止音訊擷取並正常等候結果,使其非常適合用於 「立即停止」 按鈕的情況。
  • C++/C#/JAVA/JavaScript:讓您的語音助理或聊天機器人能更妥善地回應基礎系統錯誤。 DialogServiceConnector (C++C#JAVAJavaScript) 目前有新的 TurnStatusReceived 事件處理常式。 這些選擇性事件對應至聊天機器人上的每個 ITurnContext 解析度,並會在發生失敗時回報回合執行失敗,例如因為未處理的例外狀況、逾時或 Direct Line Speech 與聊天機器人之間的網路中斷。 TurnStatusReceived 使您能更輕鬆地回應錯誤狀況。 例如,如果聊天機器人在後端資料庫查詢的時間太長 (例如查閱產品),TurnStatusReceived 可讓用戶端知道 「很抱歉,我不了解您的意思,您可以再試一次」 或類似內容的重新提示。
  • C++/C#:在更多平台使用語音 SDK。 語音 SDK NuGet 套件 (英文) 現已支援 Windows 的 ARM/Arm64 桌面原生二進位檔 (已支援 UWP),讓語音 SDK 更適合更多電腦類型。
  • JAVADialogServiceConnector 目前具有 setSpeechActivityTemplate() 方法,會無意地將之前的語言排除在外。 這相當於設定 Conversation_Speech_Activity_Template 屬性,而且要求 Direct Line Speech 服務未來所有產生的 Bot Framework 活動與提供的內容合併到其 JSON 承載中。
  • JAVA:改善底層的偵錯。 Connection 類別現在具有 MessageReceived 事件,類似其他程式語言 (C++ 和 C#)。 此事件可讓您從服務取得內送資料的低層級存取權,並且有助於診斷和偵錯。
  • JavaScript:更輕鬆透過 BotFrameworkConfig 設定語音助理和聊天機器人,目前具有 fromHost()fromEndpoint() Factory 方法,可簡化使用自訂服務位置和手動設定屬性。 我們也將 botId 的選擇性規格標準化,以在設定處理站中使用非預設的聊天機器人。
  • JavaScript:已透過新增 websocket 壓縮的字串控制屬性改善裝置效能。 基於效能考量,我們預設停用 WebSocket 壓縮。 這可以針對低頻寬案例重新啟用。 這裡提供更多詳細資料。 這個解決 GitHub 問題 #242
  • JavaScript:已新增對發音評定的支援,以啟用語音發音評定。 請參閱這裡的快速入門。

錯誤修正

  • 全部 (JavaScript 除外):已修正 1.14 版本中的迴歸,由於識別器分配到過多的記憶體。
  • C++:已使用 DialogServiceConnector 修正記憶體回收問題,解決 GitHub 問題 #794
  • C#:已修正執行緒關機的問題,該問題會在處置時造成物件約 1 秒的阻礙。
  • C++/C#/JAVA:已修正例外狀況,避免應用程式在 DialogServiceConnector 上設定語音授權權杖或活動範本超過一次以上。
  • C++/C#/JAVA:已修正由於終止競爭條件造成的識別器當機。
  • JavaScriptDialogServiceConnector 先前並未接受選用專屬 BotFrameworkConfig 處理站的 botId 參數。 這使得 botId 查詢字串參數必須手動設定為使用非預設的聊天機器人。 BUG 已經修正,且已提供給 BotFrameworkConfig 處理站的 botId 值將會被接受和使用,包括新的 fromHost()fromEndpoint() 加法。 這也適用於 CustomCommandsConfigapplicationId 參數。
  • JavaScript:已修正 GitHub 問題 #881,允許辨識器物件重新使用。
  • JavaScript:已修正 SKD 於一次 TTS 工作階段傳送 speech.config 多次,浪費頻寬的問題。
  • JavaScript:簡化麥克風授權錯誤處理,在使用者未允許其瀏覽器上的麥克風輸入時,允許更多描述性訊息湧現。
  • JavaScript:已修正 GitHub 問題 #249,該問題為 ConversationTranslatorConversationTranscriber 的類型錯誤導致 TypeScript 使用者的編譯錯誤。
  • Objective-C:已修正 iOS 在 Xcode 11.4 上 GSsreamer 組建失敗的錯誤,並解決 GitHub 問題 #911
  • Python:已修正 GitHub 問題 #870,移除 「DeprecationWarning:已取代 imp 模組以支持 importlib」。

範例

語音 SDK 1.14.0:2020 年 10 月版本

注意

Windows 上的語音 SDK 取決於 Visual Studio 2015、2017 和 2019 的共用 Microsoft 適用於 Visual Studio 的 Visual C++ 可轉散發套件。 在這裡下載。

新功能

  • Linux:已新增 Debian 10 和 Ubuntu 20.04 LTS 的支援。
  • Python/Objective-C:已新增 KeywordRecognizer API 支援。 文件將會在這裡
  • C++/JAVA/C#:已新增支援透過 ServicePropertyChannel::HttpHeader 設定任何 HttpHeader 金鑰 / 值。
  • JavaScript:已新增 ConversationTranscriber API 支援。 請閱讀這裡的文件。
  • C++/C#:已新增新的 AudioDataStream FromWavFileInput 方法 (以讀取 .WAV 檔案) 至這裡 (C++)這裡 (C#)
  • C++/C#/JAVA/Python/Objective-C/Swift:新增 stopSpeakingAsync() 方法以停止文字轉換語音合成。 閱讀這裡 (C++)這裡 (C#)這裡 (JAVA)這裡 (Python)這裡 (Objective-C/Swift) 的參考文件。
  • C#、C++、JAVA:已新增 FromDialogServiceConnector() 函式至 Connection 類別,可以用於監視 DialogServiceConnector 的連線和中斷連線事件。 閱讀這裡 (C#)這裡 (C++)這裡 (JAVA) 的參考文件。
  • C++/C#/JAVA/Python/Objective-C/Swift:已新增發音評定支援,該支援可評估語音發音,並提供說話者精確性和口語音訊流暢度的意見反應。 請閱讀此處的文件。

重大變更

  • JavaScript:PullAudioOutputStream.read() 具有從內部 Promise 到原生 JavaScript Promise 的傳回型別變更。

錯誤修正

  • 全部:已修正 1.13 版本在 SetServiceProperty 的迴歸,該問題為忽略部分特殊字元的值。
  • C#:已修正 Visual Studio 2019 上找不到原生 DLL 的 Windows 主控台範例。
  • C#:已修正如果串流作為 KeywordRecognizer 輸入使用,所造成的記憶體管理當機。
  • ObjectiveC/Swift:已修正如果串流作為識別器輸入使用,所造成的記憶體管理當機。
  • Windows:已修正 UWP 上 BT HFP/A2DP 共存的問題。
  • JavaScript:已修正工作階段識別碼的對應,以改善內部偵錯 / 服務相互關聯的記錄和協助。
  • JavaScript:已新增在第一次呼叫後DialogServiceConnector停用ListenOnce呼叫的修正程式。
  • JavaScript:已修正結果只會輸出 「簡單」 的問題。
  • JavaScript:已修正 macOS 中 Safari 持續辨識的問題。
  • JavaScript:高要求運輸量案例的 CPU 負載風險降低。
  • JavaScript:允許存取語音設定檔註冊結果。
  • JavaScript:已新增 IntentRecognizer 的連續辨識修正程式。
  • C++/C#/JAVA/Python/Swift/ObjectiveC:已修正 IntentRecognizer 中不正確的 AustraliaEast 和 BrazilSouth URL。
  • C++/C#:已新增 VoiceProfileType 作為建立 VoiceProfile 物件的引數。
  • C++/C#/JAVA/Python/Swift/ObjectiveC:已修正從特定位置嘗試讀取 SPX_INVALID_ARG 時,潛在的 AudioDataStream
  • iOS:已修正 Unity 上的語音辨識當機

範例

  • ObjectiveC:已於這裡新增關鍵字辨識範例。
  • C#/JavaScript:已新增對話謄寫的快速入門至這裡 (C#)這裡 (JavaScript)
  • C++/C#/JAVA/Python/Swift/ObjectiveC:已新增發音評定的範例至此處

已知問題

  • HoloLens 2 和 Android 4.4 (KitKat) 中預設不支援 DigiCert 全域根 G2 憑證,且必須將其新增至系統,才能讓語音 SDK 正常運作。 憑證會在不久的將來新增至 HoloLens 2 OS 映像。 Android 4.4 的客戶必須將更新的憑證新增至系統。

COVID-19 簡易測試

由於過去幾週的遠端工作,我們無法像往常一樣執行手動驗證測試。 我們未進行任何可能造成錯誤的變更,並且全數通過我們的自動化測試。 萬一我們遺漏了什麼,請在 GitHub 上告訴我們。
保持身體健康!

語音 SDK 1.13.0:2020 年 7 月版本

注意

Windows 上的語音 SDK 取決於 Visual Studio 2015、2017 和 2019 的共用 Microsoft 適用於 Visual Studio 的 Visual C++ 可轉散發套件。 請從這裡下載並安裝。

新功能

  • C#:已新增非同步對話謄寫支援。 請參閱這裡的文件。
  • JavaScript:已新增對瀏覽器Node.js 的說話者辨識支援。
  • JavaScript:已新增對語言識別 / 語言識別碼的支援。 請參閱這裡的文件。
  • Objective-C:已新增多裝置對話和對話謄寫支援。
  • Python:在 Windows 和 Linux 上新增適用於 Python 的壓縮音訊支援。 請參閱這裡的文件。

錯誤修正

  • 全部:已修正導致 KeywordRecognizer 在辨識之後不會向前移動串流的問題。
  • 全部:已修正導致從 KeywordRecognitionResult 取得的串流不包括關鍵字的問題。
  • 全部:已修正 SendMessageAsync 在使用者完成等候時,不會真的在網路上傳送訊息的問題。
  • 全部:已修正當使用者呼叫 VoiceProfileClient::SpeakerRecEnrollProfileAsync 方法多次,且未等候呼叫完成時,說話者辨識 API 的當機。
  • 全部:已修正在 VoiceProfileClient 和 SpeakerRecognizer 類別中啟用檔案記錄。
  • JavaScript:已修正瀏覽器最小化時節流的問題
  • JavaScript:已修正串流記憶體流失的問題
  • JavaScript:已新增從 Node.js 的 OCSP 回應快取。
  • JAVA:已修正導致 BigInteger 欄位永遠傳回 0 的問題。
  • iOS:已修正在 iOS 應用程式商店中發佈基於語音 SDK 應用程式的問題

範例

  • C++:已新增說話者辨識的範例程式碼至這裡

COVID-19 簡易測試

由於過去幾週的遠端工作,我們無法像往常一樣執行手動驗證測試。 我們未進行任何可能造成錯誤的變更,並且全數通過我們的自動化測試。 萬一我們遺漏了什麼,請在 GitHub 上告訴我們。
保持身體健康!

語音 SDK 1.12.1:2020 年 6 月版本

新功能

  • C#、C++:說話者辨識預覽:此功能可啟用說話者識別 (誰是說話者?) 和說話者驗證 (說話者是其所聲稱的身分嗎?)。 請參閱概觀文件

錯誤修正

  • C#、C++:已修正說話者辨識 1.12 版本中,麥克風錄製無法運作的問題。
  • JavaScript:針對 Firefox,以及在 macOS 和 iOS 上 Safari 中的文字轉換語音進行修正。
  • 在使用八個通道的串流時,對話謄寫上 Windows 應用程式驗證器的存取違規當機修正程式。
  • 在多裝置對話翻譯上 Windows 應用程式驗證器的存取違規當機修正程式。

範例

COVID-19 簡易測試

由於過去幾週的遠端工作,我們無法像往常一樣執行手動驗證測試。 我們未進行任何可能造成錯誤的變更,並且全數通過我們的自動化測試。 萬一我們遺漏了什麼,請在 GitHub 上告訴我們。
保持身體健康!

語音 SDK 1.12.0:2020 年 5 月版本

新功能

  • Go:新推出適用於語音辨識自訂語音助理的 Go 語言支援。 於這裡設定開發環境。 如需範例程式碼,請參閱下面的「範例」一節。
  • JavaScript:已新增文字轉換語音的瀏覽器支援。 請參閱這裡的文件。
  • C++、C#、JAVA:支援 Windows、Android、Linux 和 iOS 平台的新 KeywordRecognizer 物件和 API。 請閱讀此處的文件。 如需範例程式碼,請參閱下面的「範例」一節。
  • JAVA:已新增多裝置對話的翻譯支援。 請參閱這裡的參考文件。

改善項目與最佳化

  • JavaScript:已最佳化瀏覽器麥克風實作,改善語音辨識的精確性。
  • JAVA:使用沒有 SWIG 的直接 JNI 執行重構的繫結。 針對 Windows、Android、Linux 和 Mac 使用的所有 JAVA 套件,這項變更可減少 10 倍的繫結大小,並簡化語音 SDK Java 實作的進一步開發。
  • Linux:更新支援具有最新 RHEL 7 特定資訊的文件
  • 已改善連線邏輯,在發生服務和網路錯誤時嘗試連接多次。
  • 已更新 portal.azure.com 語音快速入門頁面,協助開發人員在 Azure AI 語音旅程途中進行下一步驟。

錯誤修正

  • C#、JAVA:已修正 Linux ARM (32 位元和 64 位元) 載入 SDK 二進位檔案的問題
  • C#:已修正 TranslationRecognizer、IntentRecognizer 和 Connection 物件原生控制代碼的明確處置。
  • C#:已修正 ConversationTranscriber 物件的音訊輸入存留期管理。
  • 已修正從樣本片語辨識意圖時,未正確設定 IntentRecognizer 結果原因的問題。
  • 已修正未正確設定 SpeechRecognitionEventArgs 結果位移的問題。
  • 已修正 SDK 在開啟 websocket 連線之前嘗試傳送網路訊息的競爭條件。 新增參與者的同時可重現 TranslationRecognizer
  • 已修正關鍵字辨識器引擎中的記憶體流失。

範例

COVID-19 簡易測試

由於過去幾週的遠端工作,我們無法像往常一樣執行手動驗證測試。 我們未進行任何可能造成錯誤的變更,並且全數通過我們的自動化測試。 萬一我們遺漏了什麼,請在 GitHub 上告訴我們。
保持身體健康!

語音 SDK 1.11.0:2020 年 3 月版本

新功能

  • Linux:已新增 Red Hat Enterprise Linux (RHEL)/CentOS 7 x64 的支援。
  • Linux:已新增 Linux ARM32 和 Arm64 上的 .NET Core C# 支援。 您可以在這裡深入了解.
  • C#、C++:在 ConversationTranscriptionResult 已新增 UtteranceId,涵蓋所有中間和最後語音辨識結果的一致識別碼。 C#C++ 的詳細資料。
  • Python:已新增 Language ID 支援。 請參閱 GitHub 存放庫中的 speech_sample.py。
  • Windows:在所有 win32 主控台應用程式的 Windows 平台上新增壓縮的音訊輸入格式支援。 如需更多詳細資料,請參考這裡
  • JavaScript:支援 NodeJS 中的語音合成 (文字轉換語音)。 在這裡深入了解。
  • JavaScript:新增新的 API,以啟用所有傳送和接收訊息的檢查。 在這裡深入了解。

錯誤修正

  • C#、C++:已修正問題,因此 SendMessageAsync 現在會將二進位訊息傳送為二進位類型。 C#C++ 的詳細資料。
  • C# 和 C++:已修正如果 RecognizerConnection 物件前已處置,使用 Connection MessageReceived 事件可能造成當機。 C#C++ 的詳細資料。
  • Android:來自麥克風的音訊緩衝區大小從 800 毫秒減少為 100 毫秒,以改善延遲。
  • Android:已修正 Android Studio 中 x86 Android 模擬器的問題
  • JavaScript:已新增使用 fromSubscription API 支援中國區域。 如需更多詳細資料,請參考這裡
  • JavaScript:針對 NodeJS 的連線失敗,新增更多錯誤資訊。

範例

  • Unity:意圖辨識公用範例中 LUIS json 匯入失敗已修正。 如需更多詳細資料,請參考這裡
  • Python:為新增 Language ID 的範例。 如需更多詳細資料,請參考這裡

COVID-19 簡易測試:由於過去幾週的遠端工作,我們無法像往常一樣執行手動驗證測試。 例如,我們無法測試 Linux、iOS 和 macOS 上的麥克風輸入和喇叭輸出。 我們未進行任何可能造成這些平台錯誤的變更,並且全數通過我們的自動化測試。 萬一我們遺漏了什麼,請在 GitHub 上告訴我們。
感謝您的持續支援。 一如往常,請在 GitHub Stack Overflow 張貼問題或意見反應。
保持身體健康!

語音 SDK 1.10.0:2020 年 2 月版本

新功能

  • 已新增 Python 套件以支援 Python 新的 3.8 版本。
  • Red Hat Enterprise Linux (RHEL) / CentOS 8 x64 支援 (C++、C#、JAVA 和 Python)。

    注意

    客戶必須根據 這些指示來設定 OpenSSL。

  • Linux ARM32 支援 Debian 和 Ubuntu。
  • DialogServiceConnector 現在支援 BotFrameworkConfig 上的選擇性 「聊天機器人識別碼」 參數。 此參數可讓您使用多個 Direct Line Speech 聊天機器人搭配單一語音資源。 如果未指定參數,則會使用 Direct Line Speech 通道設定頁面所決定的預設聊天機器人。
  • DialogServiceConnector 現在具有 SpeechActivityTemplate 屬性。 Direct Line Speech 將會使用此 JSON 字串的內容,在所有與 Direct Line Speech 聊天機器人交流的活動中預先填入各種支援的欄位,包括自動產生的活動,以回應像是語音辨識的事件。
  • TTS 現在會使用訂用帳戶金鑰進行驗證,以在建立合成器之後,減少第一個合成結果的第一個位元組延遲。
  • 已更新 19 個地區設定的語音辨識模型,平均字錯率可減少 18.6% (es-ES、es-MX、fr-CA、fr-FR、it-IT、ja-JP、ko-KR、pt-BR、zh-CN、zh-HK、nb-NO、fi-FL、ru-RU、pl-PL、ca-ES、zh-TW、th-TH、pt-PT 和 tr-TR)。 新模型會在多個網域中帶來顯著的改善,包括聽寫、客服中心轉錄和影片索引編制案例。

錯誤修正

  • 已修正對話轉錄程式在 Java API 中未適當等候的 BUG
  • Xamarin GitHub issue 的 Android x86 模擬器修正程式
  • 新增遺漏的 (Get|Set) 屬性方法至 AudioConfig
  • 修正連線失敗時無法停止 audioDataStream 的 TTS BUG
  • 使用不含區域的端點會造成對話翻譯工具的 USP 失敗
  • 通用 Windows 應用程式中的識別碼產生現在會使用適當的唯一 GUID 演算法;它先前無意地預設為虛設常式的實作,這通常會在大型的互動集上產生衝突。

範例

其他變更

語音 SDK 1.9.0:2020 年 1 月版本

新功能

  • 多裝置對話:將多個裝置連線到相同的語音或文字型對話,並選擇性地翻譯對話之間傳送的訊息。 在此文章中深入了解。
  • 已新增 Android .aar 套件的關鍵字辨識支援,並已新增 x86 和 x64 類別支援。
  • Objective-C:SendMessageSetMessageProperty 方法已新增至 Connection 物件。 請參閱這裡的文件。
  • TTS C++ API 目前支援 std::wstring 作為合成文字輸入,在將需求傳遞給 SDK 之前,移除將 Wstring 轉換成字串的需求。 請參閱此處的詳細資料。
  • C#:語言識別碼來源語言組態現在可使用。
  • JavaScript:已新增功能至 Connection 物件,以傳遞來自語音服務的自訂訊息做為回呼 receivedServiceMessage
  • JavaScript:已新增 FromHost API 支援,以簡化內部部署容器和主權雲端的使用。 請參閱這裡的文件。
  • JavaScript:由於 orgads 的貢獻,我們目前接受 NODE_TLS_REJECT_UNAUTHORIZED。 請參閱此處的詳細資料。

重大變更

  • OpenSSL 已更新為 1.1.1b 版本,並以靜態方式連結至適用於 Linux 的語音 SDK Core 程式庫。 如果您的信箱 OpenSSL 尚未安裝至系統的 /usr/lib/ssl 目錄,可能會造成中斷。 參閱語音 SDK 文件中的我們的文件,以解決問題。
  • 我們已變更從 intlong 傳回 C# WordLevelTimingResult.Offset 的資料類型,當語音資料大於 2 分鐘,允許存取 WordLevelTimingResults
  • PushAudioInputStreamPullAudioInputStream 現在會以 AudioStreamFormat 將 wav 標頭資訊傳送到語音服務,可於建立時選擇性地指定。 客戶現在必須使用已支援的音訊輸入格式。 任何其他格式都會產生並非最佳的辨識結果,或可能造成其他問題。

錯誤修正

  • 請參閱上方重大變更中的 OpenSSL 更新。 我們已修正在 Linux 和 JAVA 下的間歇性損毀和效能問題 (高負載下的鎖定競爭)。
  • JAVA:對高並行存取案例中的物件關閉進行改善。
  • 已重新建構我們的 NuGet 套件。 我們移除在 lib 資料夾下 Microsoft.CognitiveServices.Speech.core.dllMicrosoft.CognitiveServices.Speech.extension.kws.dll的三個複本,讓 NuGet 套件更小且下載更快速,而且我們已新增編譯一些 C++ 原生應用程式所需的標頭。
  • 請參閱這裡的已修正快速入門範例。 在 Linux、macOS 和 Windows 上,這些都不會顯示 「找不到麥克風」 的例外狀況。
  • 已修正在特定程式碼路徑 (例如此範例) 上,具有長語音辨識結果的 SDK 結果的當機。
  • 已修正 Azure Web 應用程式環境中的 SDK 部署錯誤,以解決此客戶的問題
  • 已修正使用多 <voice> 標記或 <audio> 標記 的TTS 錯誤,以解決此客戶的問題
  • 已修正 SDK 從暫停中復原時的 TTS 401 錯誤。
  • JavaScript:由於 euirim 的貢獻,已修正音訊資料的迴圈匯入。
  • JavaScript:已新增設定服務屬性的支援,如同 1.7 版本中所新增。
  • JavaScript:已修正連線錯誤可能導致連續失敗的 websocket 重新連線嘗試的問題。

範例

  • 已新增 Android 關鍵字辨識範例至這裡
  • 已新增伺服器情節的 TTS 範例至這裡
  • 已新增 C# 和 C++ 的多裝置對話快速入門至這裡

其他變更

  • 已最佳化 Android 上 SDK 核心程式庫的大小。
  • SDK 1.9.0 版本開始支援對話謄寫器中語音簽章版本欄位的 intstring 類型。

語音 SDK 1.8.0:2019 年 11月版本

新功能

  • 已新增 FromHost() API,以簡化內部部署容器和主權雲端的使用。
  • 已新增語音辨識 (JAVA 和 C++) 的來源語言識別
  • 已新增語音辨識的 SourceLanguageConfig 物件,用於指定預期的來源語言 (JAVA 和 C++)
  • 已透過 NuGet 和 Unity 套件新增 Windows (UWP)、Android 和 iOS 的 KeywordRecognizer 支援
  • 已新增遠端對話 Java API,以非同步批次進行對話謄寫。

重大變更

  • 對話謄寫器的功能已移至命名空間下 Microsoft.CognitiveServices.Speech.Transcription
  • 對話轉義氣方法的元件會移至新的 Conversation 類別。
  • 已中斷支援 32 位元 (ARMv7 和 x86) iOS

錯誤修正

  • 如果未使用有效的語音服務訂用帳戶金鑰執行本地 KeywordRecognizer,所產生的當機修正程式

範例

  • KeywordRecognizer 的 Xamarin 範例
  • KeywordRecognizer 的 Unity 範例
  • 自動來源語言識別的 C++ 和 JAVA 範例。

語音 SDK 1.7.0:2019 年 9 月版本

新功能

  • 已於通用 Windows 平台 (UWP)、Android 和 iOS 上新增搶鮮版 (Beta) 支援 Xamarin
  • 已新增 Unity 的 iOS 支援
  • 針對 Android、iOS 和 Linux 上的 ALaw、Mulaw、FLAC 新增 Compressed 輸入支援
  • 已新增 SendMessageAsyncConnection 類別,以傳送訊息到服務
  • 已新增 SetMessagePropertyConnection 類別,以設定訊息的屬性
  • TTS 已新增 JAVA (JRE 和 Android)、Python、Swift 和 Objective-C 的資料繫結
  • TTS 已新增 macOS、iOS 和 Android 的播放支援。
  • 已新增 TTS 的 「字邊界」資訊。

錯誤修正

  • 已修正 Android 的 Unity 2019 IL2CPP 編譯問題
  • 已修正 wav 檔案輸入中格式錯誤的標頭未正確處理的問題
  • 已修正某些連線屬性中 UUID 不是唯一的問題
  • 已修正 Swift 繫結 (可能需要變更少量的程式碼) 中的可 NULL 性指定名稱的一些警告
  • 已修正在網路負載下導致 websocket 連線強制關閉的 BUG
  • 已修正 Android 上的問題,該問題有時會導致複製 DialogServiceConnector 使用的印象識別碼
  • 當發生 DialogServiceConnector 時,改善跨多重回合互動的連線穩定性以及失敗報告 (透過 Canceled 事件)
  • DialogServiceConnector 工作階段啟動將會正確提供事件,包括在使用中的 StartKeywordRecognitionAsync() 期間呼叫 ListenOnceAsync()
  • 已解決與已接收 DialogServiceConnector 活動有關的當機

範例

  • Xamarin 快速入門
  • 已更新 CPP 快速入門,包含 Linux Arm64 資訊
  • 以 iOS 資訊更新 Unity 快速入門

語音 SDK 1.6.0:2019 年 6 月版本

範例

  • UWP 和 Unity 上文字轉換語音的快速入門範例
  • iOS 上 Swift 的快速入門範例
  • Unity 範例,適用於語音與意圖辨識和翻譯
  • 已更新 DialogServiceConnector 的快速入門範例

/變更

  • 對話方塊命名空間:
    • SpeechBotConnector 已重新命名為 DialogServiceConnector
    • BotConfig 已重新命名為 DialogServiceConfig
    • BotConfig::FromChannelSecret()已重新對應至 DialogServiceConfig::FromBotSecret()
    • 重新命名之後,仍會繼續支援所有現有的 Direct Line Speech 用戶端
  • 更新 TTS REST 配接器以支持 proxy 和 持續連線
  • 通過不正確的區域時改善錯誤訊息
  • Swift/Objective-C:
    • 已改善的錯誤報表:可能導致錯誤的方法現在會出現在兩個版本中:一個會公開處理錯誤的 NSError 物件,另一個則會引發例外狀況。 前者已公開至 Swift。 這種變更需要採用現有的 Swift 程式碼。
    • 已改善的事件處理

錯誤修正

  • TTS 修正程式:SpeakTextAsync 未來傳回但未等候音訊已完成謄寫的情況
  • C# 中的封送處理字串以啟用完整語言支援的修正程式
  • .NET Core 應用程式問題,以使用 net461 目標架構在範例中載入核心程式庫的修正程式
  • 將原生程式庫部署至範例中輸出檔案夾出現偶爾問題的修正程式
  • 可靠地關閉 web 通訊端的修正程式
  • 在 Linux 負載過重下開啟連線時可能損毀問題的修正程式
  • macOS 架構套件組合中遺失的中繼資料修正程式
  • Windows 上 pip install --user 問題的修正程式

語音 SDK 1.5.1

這是 BUG 修正版本,只會影響原生 / 受控 SDK。 不會影響 JavaScript 版本的 SDK。

錯誤修正

  • 修正搭配對話謄寫使用時的 FromSubscription。
  • 修正語音助理找出關鍵字中的 BUG。

語音 SDK 1.5.0:2019 年 5 月版本

新功能

  • 找出關鍵字 (KWS) 目前適用於 Windows 和 Linux。 KWS 功能可能適用於任何麥克風類型、官方 KWS 支援,但目前僅限於 Azure Kinect DK 硬體或語音裝置 SDK 中的麥克風陣列。
  • 片語提示功能可透過 SDK 取得。 如需詳細資訊,請參閱此處
  • 您可以透過 SDK 取得對話謄寫功能。
  • 新增使用 Direct Line Speech 通道對語音助理的支援。

範例

  • 已新增 SDK 所支援的新功能或新服務的範例。

/變更

  • 已新增各種辨識器屬性來調整服務行為或服務結果 (例如遮罩不雅的內容和其他)。
  • 您現在可以透過標準設定屬性來設定辨識器,即使您已建立辨識器 FromEndpoint
  • Objective-C:新增 OutputFormat 屬性到 SPXSpeechConfiguration
  • SDK 目前支援 Debian 9 作為 Linux 發行版。

錯誤修正

  • 已修正文字轉換語音中說話者資源過早解構的問題。

語音 SDK 1.4.2

這是 BUG 修正版本,只會影響原生 / 受控 SDK。 不會影響 JavaScript 版本的 SDK。

語音 SDK 1.4.1

這是僅限 JavaScript 的版本。 未新增任何功能。 已進行下列修正:

  • 防止網頁套件載入 https-proxy-agent。

語音 SDK 1.4.0:2019年 4 月版本

新功能

  • SDK 搶鮮版 (Beta) 目前支援文字轉換語音服務。 Windows 和 Linux 桌面 C++ 和 C# 都支援此服務。 如需詳細資訊,請參閱文字轉換語音概觀
  • SDK 目前支援 MP3 和 Opus/OGG 音訊檔案作為串流輸入檔。 這項功能僅適用於 Linux 上的 C++ 和 C#,且目前為搶鮮版 (Beta) (更多詳細資料,請前往這裡)。
  • JAVA、.NET Core、C++ 和 Objective-C 的語音 SDK 已獲得 macOS 支援。 macOS 的 Objective-C 支援目前為搶鮮版 (Beta)。
  • iOS:iOS (Objective-C) 的語音 SDK 現在也發佈為 CocoaPod。
  • JavaScript:支援非預設的麥克風作為輸入裝置。
  • JavaScript:Proxy 支援 Node.js。

範例

  • 已在 macOS 上新增使用搭配 Objective-C 和 C++ 的語音 SDK 範例。
  • 已新增示範如何使用文字轉換語音服務的範例。

/變更

  • Python:辨識結果的其他屬性現在會透過 properties 屬性公開。
  • 如需其他開發和偵錯工具支援,您可以將 SDK 記錄和診斷資訊重新導向至記錄檔 (更多詳細資料,請看這裡)。
  • JavaScript:改善音訊處理效能。

錯誤修正

  • Mac/iOS:已修正無法建立語音服務連線時,導致等候時間過長的 BUG。
  • Python:改善 Python 回撥中引數的錯誤處理。
  • JavaScript:已修正在 RequestSession 上結束語音的錯誤狀態報表。

語音 SDK 1.3.1:2019 年 2 月更新版本

這是 BUG 修正版本,只會影響原生 / 受控 SDK。 不會影響 JavaScript 版本的 SDK。

錯誤 (bug) 修正

  • 已修正使用麥克風輸入時的記憶體流失。 以串流為基礎或檔案輸入不受影響。

語音 SDK 1.3.0:2019 年 2 月版本

新功能

  • 語音 SDK 支援透過 AudioConfig 類別來選取輸入麥克風。 這可讓音訊資料從非預設麥克風串流到語音服務。 如需詳細資訊,請參閱說明音訊輸入裝置選取的文件。 此功能還無法在 JavaScript 中使用。
  • 語音 SDK 現在支援搶鮮版 (Beta) Unity。 請透過 GitHub 範例存放庫中的問題一節提供意見反應。 此版本可在 Windows x86 和 x64 (桌面或通用 Windows 平台應用程式) 以及 Android (ARM32/64、x86) 上支援 Unity。 詳情請參閱 Unity 快速入門
  • 不再需要 Microsoft.CognitiveServices.Speech.csharp.bindings.dll 檔案 (已於先前版本中寄送)。 這項功能現已整合到 Core SDK 中。

範例

範例存放庫有提供下列新內容:

  • AudioConfig.FromMicrophoneInput 的其他範例。
  • 額外的 Python 範例,適用於意圖辨識和翻譯。
  • 在 iOS 中使用 Connection 物件的額外範例。
  • 額外的 Java 範例,適用於以音訊輸出進行翻譯。
  • 批次轉譯 REST API 的新使用範例。

/變更

  • Python
    • 已改善 SpeechConfig 中的參數驗證及錯誤訊息。
    • 新增 Connection 物件的支援。
    • 支援在 Windows 上使用 32 位元的 Python (x86)。
    • 適用於 Python 的語音 SDK 已不再是搶鮮版 (Beta)。
  • iOS
    • SDK 現在是根據 iOS SDK 12.1 版來建置。
    • SDK 現在支援 iOS 9.2 版和更新版本。
    • 改善參考文件,並修正數個屬性名稱。
  • JavaScript
    • 新增 Connection 物件的支援。
    • 為配套的 JavaScript 新增了類型定義檔
    • 初次支援和實作片語提示。
    • 傳回含有服務 JSON 的屬性集合以供辨識
  • Windows DLL 現在會包含版本資源。
  • 如果您建立識別器 FromEndpoint,您可以直接將參數新增至端點 URL。 使用 FromEndpoint 時,您無法透過標準設定屬性來設定辨識器。

錯誤修正

  • 空的 Proxy 使用者名稱和 Proxy 密碼之前不會正確處理。 在此版本中,如果您將 Proxy 使用者名稱和 Proxy 密碼設定為空字串,系統將不會在連線到 Proxy 時提交出去。
  • 在某些語言 / 環境中,SDK 所建立的 SessionId 並不一定是真正隨機。 已新增亂數產生器初始化來修正此問題。
  • 改善授權權杖的處理方式。 如果您想要使用授權權杖,請在 SpeechConfig 中指定,並讓訂用帳戶金鑰保持空白。 然後如往常般建立辨識器。
  • 在某些情況下,Connection 物件未正確發行。 已修正此問題。
  • JavaScript 範例已修正,現在也能夠在 Safari 上支援以音訊輸出合成翻譯。

語音 SDK 1.2.1

這是僅限 JavaScript 的版本。 未新增任何功能。 已進行下列修正:

  • 會在 turn.end 而非 speech.end 引發資料流的結束。
  • 修正音訊幫浦中的 BUG,此 BUG 會導致系統未在目前的傳送失敗時排程下一次傳送。
  • 修正使用驗證權杖來進行的連續辨識。
  • 修正不同辨識器/端點的 BUG。
  • 文件改進。

語音 SDK 1.2.0:2018 年 12 月版本

新功能

  • Python
    • 這一版提供 Python 支援的搶鮮版 (Beta) (3.5 和更新版本)。 如需詳細資訊,請參閱[此處](../../quickstart-python.md)。
  • JavaScript
    • 適用於 JavaScript 的語音 SDK 已開放原始碼。 原始程式碼可在 GitHub 中取得。
    • 我們現在支援 Node.js,您可以在這裡找到更多資訊。
    • 音訊工作階段的長度限制已移除,重新連線會自動發生。
  • Connection 物件
    • Recognizer,您可以存取 Connection 物件。 此物件可讓您明確地起始服務連線,並訂閱連線和中斷連線事件。 (此功能還無法在 JavaScript 和 Python 中使用。)
  • Ubuntu 18.04 支援。
  • Android
    • 已在 APK 產生期間啟用 ProGuard 支援。

改善

  • 改進內部執行緒使用方式,並減少執行緒、鎖定、Mutex 的數目。
  • 已改善錯誤回報 / 資訊。 在有些情況下,錯誤訊息尚未完全傳播出去。
  • 已將 JavaScript 中的開發相依性更新為使用最新的模組。

錯誤修正

  • 已修正由於 RecognizeAsync 中類型不符所造成的記憶體流失。
  • 在某些情況下,例外狀況正在流失。
  • 已修正翻譯事件引數的記憶體流失。
  • 已修正在長時間執行的工作階段中重新連線的鎖定問題。
  • 已修正因為翻譯失敗而可能導致遺漏最終結果的問題。
  • C#:如果 async 作業未在主執行緒中等候,則在非同步工作完成之前,就可能處置了辨識器。
  • JAVA:已修正導致 JAVA VM 損毀的問題。
  • Objective-C:已修正列舉對應;傳回了 RecognizedIntent 而不是 RecognizingIntent
  • JavaScript:在 SpeechConfig 中將預設輸出格式設定為 「simple」。
  • JavaScript:移除 JavaScript 與其他語言中組態物件屬性之間的不一致。

範例

  • 已更新和修正數個範例 (例如可供翻譯的輸出語音等)。
  • 已在範例存放庫中新增 Node.js 範例。

語音 SDK 1.1.0

新功能

  • 支援 Android x86/x64。
  • Proxy 支援:您現在可以在 SpeechConfig 物件中呼叫函式來設定 Proxy 資訊 (主機名稱、連接埠、使用者名稱和密碼)。 此功能尚無法在 iOS 上取得。
  • 改善的錯誤碼和訊息。 如果辨識傳回錯誤,系統現在會將 Reason (在取消的事件中) 或 CancellationDetails (在辨識結果中) 設為 Error。 取消的事件現在包含兩個額外的成員,ErrorCodeErrorDetails。 如果伺服器隨報告的錯誤傳回其他錯誤資訊,現在將可以透過新成員取得這些資訊。

改善

  • 已在辨識器設定中新增其他驗證,及新增其他錯誤訊息。
  • 已改善對音訊檔案中長時間無聲之部分的處理。
  • NuGet 套件:針對 .NET Framework 專案,其可防止使用 AnyCPU 設定來建置。

錯誤修正

  • 已修正在辨識器中找到的幾個例外狀況。 此外,系統會攔截例外狀況,並轉換成 Canceled 事件。
  • 修正屬性管理中的記憶體流失。
  • 已修正音訊輸入可能會損毀辨識器的錯誤。
  • 已修正工作階段將事件停止之後,仍然可收到事件的錯誤。
  • 已修正執行緒中的一些競爭條件。
  • 已修正可能會導致當機的 iOS 相容性問題。
  • 已改善對 Android 麥克風支援的穩定性。
  • 已修正 JavaScript 中的辨識器會忽略辨識語言的錯誤。
  • 已修正 JavaScript 中 (在某些情況下) 會防止設定 EndpointId 的 BUG。
  • 已變更 JavaScript 中 AddIntent 內參數的順序,並已新增遺失的 AddIntent JavaScript 簽章。

範例

  • 已在範例存放庫中新增可供提取和推送資料流使用方式的 C++ 和 C# 範例。

語音 SDK 1.0.1

穩定性改進及 Bug 修正:

  • 已修正處置辨識器時因競爭條件而可能導致的嚴重錯誤
  • 已修正未設定屬性時可能導致的嚴重錯誤。
  • 已新增額外的錯誤和參數檢查。
  • Objective-C:已修正因 NSString 中的名稱覆寫而可能導致的嚴重錯誤。
  • Objective-C:已調整 API 的可見性
  • JavaScript:已修正有關事件及其承載的問題。
  • 文件改進。

在我們的範例存放庫中,已新增新的 JavaScript 範例。

Azure AI 語音 SDK 1.0.0:2018 年 9 月版本

新功能

重大變更

  • 此版本引進了幾個重大變更。 如需詳細資訊,請參閱此頁面

Azure AI 語音 SDK 0.6.0:2018 年 8 月版本

新功能

  • 使用語音 SDK 所建置的 UWP 應用程式現在可以通過 Windows 應用程式認證套件 (WACK) 的認證。 請參閱 UWP 快速入門
  • 在 Linux (Ubuntu 16.04 x64) 上支援 .NET Standard 2.0。
  • 實驗性:在 Windows (64 位元) 和 Linux (Ubuntu 16.04 x64) 上支援 Java 8。 請參閱 Java 執行階段環境快速入門

功能性變更

  • 公開關於連線錯誤的其他錯誤詳細資訊。

重大變更

  • 在 Java (Android) 上,SpeechFactory.configureNativePlatformBindingWithDefaultCertificate 函式不再需要路徑參數。 系統現在會自動在所有支援平台上偵測路徑。
  • Java 和 C# 中 EndpointUrl 屬性的 get-accessor 已移除。

錯誤修正

  • 在 Java 中,現已實作翻譯辨識器上的音訊合成結果。
  • 已修正錯誤,此錯誤可能導致非作用中的執行緒,並增加已開啟且未使用的通訊端數目。
  • 已修正問題,長時間執行的辨識可能會在傳輸途中終止。
  • 已修正辨識器關機中的競爭條件。

Azure AI 語音 SDK 0.5.0:2018 年 7 月版本

新功能

  • 支援 Android 平台 (API 23: Android 6.0 Marshmallow 或更新版本)。 請參閱 Android 快速入門
  • 在 Windows 上支援 .NET Standard 2.0。 請參閱 .NET Core 快速入門
  • 實驗性:在 Windows 上支援 UWP (1709 版或更新版本)。
    • 請參閱 UWP 快速入門
    • 注意:使用語音 SDK 建置的 UWP 應用程式尚未通過 Windows 應用程式認證套件 (WACK) 的認證。
  • 使用自動重新連線支援長時間執行辨識。

功能性變更

  • StartContinuousRecognitionAsync() 支援長時間執行辨識。
  • 辨識結果包含更多欄位。 它們從已辨識文字的音訊開頭和持續時間 (兩者都以刻度為單位),以及表示辨識狀態的其他值位移,例如 InitialSilenceTimeoutInitialBabbleTimeout
  • 支援 AuthorizationToken 以建立處理站執行個體。

重大變更

  • 辨識事件:NoMatch 事件類型已合併到 Error 事件中。
  • C# 中的 SpeechOutputFormat 已重新命名為 OutputFormat,以便與 C++ 保持一致。
  • AudioInputStream 介面部分方法的傳回型別已稍微變更:
    • 在 Java 中,read 方法現在會傳回 long 而不是 int
    • 在 C# 中,Read 方法現在會傳回 uint 而不是 int
    • 在 C++ 中,ReadGetFormat 方法現在會傳回 size_t 而不是 int
  • C++:音訊輸入串流的執行個體現在只能當作 shared_ptr 傳遞。

錯誤修正

  • 修正 RecognizeAsync() 逾時的時候,結果中不正確的傳回值。
  • 已移除 Windows 上媒體基礎程式庫的相依性。 SDK 現在使用核心音訊 API。
  • 文件修正:已新增區域頁面來描述支援的區域。

已知問題

  • 適用於 Android 的語音 SDK 不會回報用於翻譯的語音合成結果。 此問題將在下一版中修正。

Azure AI 語音 SDK 0.4.0:2018 年 6 月版本

功能性變更

  • AudioInputStream

    辨識器現在可以取用資料流作為音訊來源。 如需詳細資訊,請參閱相關的操作說明指南

  • 詳細的輸出格式

    建立 SpeechRecognizer 時,您可以要求 DetailedSimple 輸出格式。 DetailedSpeechRecognitionResult 包含信賴分數、已辨識的文字、未經處理的語彙形式,以及標準化形式和加上遮罩的粗話。

重大變更

  • 在 C# 中已從 SpeechRecognitionResult.RecognizedText 變更為 SpeechRecognitionResult.Text

錯誤修正

  • 已修正在關閉期間 USP 層中可能發生的回呼問題。
  • 如果辨識器取用音訊輸入檔,其保留檔案控制代碼超過所需的時間。
  • 已移除訊息幫浦與辨識器之間的數個死結。
  • 如果來自服務的回應逾時,則引發 NoMatch
  • Windows 上的媒體基礎程式庫延遲載入。 只有麥克風輸入需要此程式庫。
  • 音訊資料的上傳速度受限於大約兩倍的原始音訊速度。
  • 在 Windows 上,C# .NET 組件現在使用強式名稱。
  • 文件修正:Region 是建立辨識器時所需的資訊。

已新增更多範例,且持續更新。 如需最新的範例集,請參閱語音 SDK 範例 GitHub 存放庫 \(英文\)。

Azure AI 語音 SDK 0.2.12733:2018 年 5 月版本

此版本為 Azure AI 語音 SDK 的第一個公開預覽版本。