Microsoft Speech SDK(Kinect 使用的底層引擎)**官方不支援中文識別**。`RecognizerInfo` 的 `Culture` 必須為 `en-US`、`zh-CN` 不在支援列表中。
Func<RecognizerInfo, bool> matchingFunc = r =>
"True".Equals(r.AdditionalInfo["Kinect"]) &&
"en-US".Equals(r.Culture.Name); // 只能是 en-US
var commands = new Choices();
commands.Add("help"); // 對應「幫助」
commands.Add("green"); // 對應「綠燈」
commands.Add("blue"); // 對應「藍燈」
commands.Add("red"); // 對應「紅燈」
| 服務商 | SDK | 中文支援 | 特點 |
|---|---|---|---|
| Azure Speech | Speech SDK | ✅ 普通話/方言 | 實時流式、自定義熱詞、離線容器 |
| 百度語音 | REST/WebSocket | ✅ 覆蓋全 | 價格低、識別率高 |
| 訊飛開放平台 | MSC SDK | ✅ 多語種 | 嵌入式設備友好 |
架構調整:Kinect 麥克風陣列採集 PCM → 客戶端 VAD 切片 → HTTPS/WebSocket 發送雲端 → 獲取文本 → 本地語義理解。