最美情侣中文字幕电影,在线麻豆精品传媒,在线网站高清黄,久久黄色视频

歡迎光臨散文網(wǎng) 會員登陸 & 注冊

如何在 Unity 游戲中集成 AI 語音識別?

2023-06-16 21:17 作者:HuggingFace  | 我要投稿

語音識別是一項將語音轉(zhuǎn)換為文本的技術(shù),想象一下它如何在游戲中發(fā)揮作用?發(fā)出命令操縱控制面板或者游戲角色、直接與 NPC 對話、提升交互性等等,都有可能。本文將介紹如何使用 Hugging Face Unity API 在 Unity 游戲中集成 SOTA 語音識別功能。

您可以訪問 itch.io 網(wǎng)站 下載 Unity 游戲樣例,親自嘗試一下語音識別功能。

先決條件

閱讀文本可能需要了解一些 Unity 的基本概念。除此之外,您還需安裝 Hugging Face Unity API,可以點擊?之前的博文?閱讀 API 安裝說明。

步驟

1. 設(shè)置場景

在本教程中,我們將設(shè)置一個非常簡單的場景。玩家可以點擊按鈕來開始或停止錄制語音,識別音頻并轉(zhuǎn)換為文本。

首先我們新建一個 Unity 項目,然后創(chuàng)建一個包含三個 UI 組件的畫布 (Canvas):

  1. 開始按鈕: 按下以開始錄制語音。

  2. 停止按鈕: 按下以停止錄制語音。

  3. 文本組件 (TextMeshPro): 顯示語音識別結(jié)果文本的地方。

2. 創(chuàng)建腳本

創(chuàng)建一個名為?SpeechRecognitionTest?的腳本,并將其附加到一個空的游戲?qū)ο?(GameObject) 上。

在腳本中,首先定義對 UI 組件的引用:

在 inspector 窗口中分配對應(yīng)組件。

然后,使用?Start()?方法為開始和停止按鈕設(shè)置監(jiān)聽器:

此時,腳本中的代碼應(yīng)該如下所示:

3. 錄制麥克風(fēng)語音輸入

現(xiàn)在,我們來錄制麥克風(fēng)語音輸入,并將其編碼為 WAV 格式。這里需要先定義成員變量:

然后,在?StartRecording()?中,使用?Microphone.Start()?方法實現(xiàn)開始錄制語音的功能:

上面代碼實現(xiàn)以 44100 Hz 錄制最長為 10 秒的音頻。

當錄音時長達到 10 秒的最大限制,我們希望錄音行為自動停止。為此,需要在?Update()?方法中寫上以下內(nèi)容:

接著,在?StopRecording()?中,截取錄音片段并將其編碼為 WAV 格式:

最后,我們需要實現(xiàn)音頻編碼的?EncodeAsWAV()?方法,這里直接使用 Hugging Face API,只需要將音頻數(shù)據(jù)準備好即可:

完整的腳本如下所示:

如要測試該腳本代碼是否正常運行,您可以在?StopRecording()?方法末尾添加以下代碼:

好了,現(xiàn)在您點擊?Start?按鈕,然后對著麥克風(fēng)說話,接著點擊?Stop?按鈕,您錄制的音頻將會保存為?test.wav?文件,位于工程目錄的 Unity 資產(chǎn)文件夾中。

4. 語音識別

接下來,我們將使用 Hugging Face Unity API 對編碼音頻實現(xiàn)語音識別。為此,我們創(chuàng)建一個?SendRecording()?方法:

該方法實現(xiàn)將編碼音頻發(fā)送到語音識別 API,如果發(fā)送成功則以白色顯示響應(yīng),否則以紅色顯示錯誤消息。

別忘了在?StopRecording()?方法的末尾調(diào)用?SendRecording():

5. 最后潤色

最后來提升一下用戶體驗,這里我們使用交互性按鈕和狀態(tài)消息。

開始和停止按鈕應(yīng)該僅在適當?shù)臅r候才產(chǎn)生交互效果,比如: 準備錄制、正在錄制、停止錄制。

在錄制語音或等待 API 返回識別結(jié)果時,我們可以設(shè)置一個簡單的響應(yīng)文本來顯示對應(yīng)的狀態(tài)信息。

完整的腳本如下所示:

祝賀!現(xiàn)在您可以在 Unity 游戲中集成 SOTA 語音識別功能了!

如果您有任何疑問,或想更多地參與 Hugging Face for Games 系列,可以加入 Hugging Face Discord 頻道!

英文原文:?https://hf.co/blog/unity-asr

作者: Dylan Ebert

譯者: SuSung-boy

審校/排版: zhongdongy (阿東)


如何在 Unity 游戲中集成 AI 語音識別?的評論 (共 條)

分享到微博請遵守國家法律
延川县| 波密县| 宜黄县| 天镇县| 巴东县| 六安市| 凭祥市| 本溪| 渝中区| 招远市| 乐安县| 商城县| 娱乐| 大新县| 八宿县| 乌苏市| 新密市| 嘉义县| 砀山县| 嘉禾县| 凤山市| 麻城市| 永新县| 涪陵区| 天门市| 陆河县| 竹山县| 周至县| 台北市| 临安市| 深水埗区| 滨州市| 嘉兴市| 布拖县| 陇西县| 法库县| 西峡县| 新野县| 托里县| 台中县| 正蓝旗|