上一篇文章我們使用了 Identification
API 來辨識使用者。今天我們要使用 Verificatoin
API 利用聲音來驗證使用者。
verificationProfileId
。最多可創建 1000 個 Profile 。
https://westus.dev.cognitive.microsoft.com/docs/services/563309b6778daf02acc0a508/operations/563309b7778daf06340c9652
目前
locale
參數只支援en-US
GET
請求,查看目前 Profile 的狀態。其中
EnrollmentStatus
可能的值為 [Enrolled | Enrolling | Training],必須等到狀態為Enrolled
後才可以開始驗證,也就是enrollmentsCount
必須大於remainingEnrollmentsCount
才可以。
https://westus.dev.cognitive.microsoft.com/docs/services/563309b6778daf02acc0a508/operations/56409ee2778daf19706420de
聲音檔案必需大於 1 秒,但小於 15 秒。
https://westus.dev.cognitive.microsoft.com/docs/services/563309b6778daf02acc0a508/operations/56406930e597ed20c8d8549c
如果聲音不合標準會回傳相關資訊給你,例如:聲音太多雜音或人聲不清楚等等。
筆者目前測試了十來個聲音都顯示"message": "TooNoisy"
,稍後下班再找個安靜的地方試一下。
後來筆者一直嘗試卻都出現InvalidPhrase
錯誤,仔細看了一下文件後發現只能註冊 Azure 提供給你的語句,如果不照他給你的語句唸的話會出現InvalidPhrase
錯誤。
之後照著念 Azure 提供的語句,錄製並轉檔後使用第三步驟的 API 上傳註冊聲音。
上傳完三個相同語句的聲音後,即可開始驗證聲音。
https://westus.dev.cognitive.microsoft.com/docs/services/563309b6778daf02acc0a508/operations/56406930e597ed20c8d8549d
這時的場景通常是有一個人想上廁所,但廁所的門只認得主人的聲音,此時他講話,麥克風收音後傳音訊檔案給此 Endpoint,然後如果回傳的資料 result 欄位為
Accept
,廁所門就會自動打開。
那麼以上就完成了我們聲音驗證這個章節的內容,各位讀者有興趣可以自行玩一下。