Tongue Twister-快速集成華為實時語音識別服務玩轉繞口令


前言

實不相瞞,小編作為了一個湖南人,時常被說普通話不夠標准,不僅N/L不分,有時候還分不出來卷舌音,經常鬧笑話,導致小編十分苦惱。 有時看着電視里的主持人流利的口播,和完全標准的繞口令都羡慕不已,常常幻想着自己有一天也能說一口流利的繞口令。恰巧,小編昨日上網的時候被推送了集成了華為HMS ML Kit實時語音服務的小游戲-Tongue Twister, 這款游戲究竟是如何玩轉繞口令的,接下來就和小編一起一探究竟吧!

應用場景

Tongue Twister 就是一款集成了華為HMS ML Kit實時語音識別服務的繞口令小游戲,游戲中一共有5個關卡,每一個關卡就是一段繞口令,通過秘訣就是憑借強大的實時語音識別,實時語音識別服務覆蓋日常生活及工作中的眾多領域,並且深度優化了購物搜索、影視搜索、音樂搜索以及導航等場景中的識別能力,識別准確率高,可輕松檢測闖關者的發音,如若發音清晰標准即可過關,

在這里插入圖片描述

下面我們一起來看看這個游戲的正確打開方式吧!

這么樣,是不是心動了,那就一起來試試自己定制屬於你的繞口令大闖關吧!

開發步驟

  1. 請參見雲端鑒權信息實用須知,設置您應用的鑒權信息。
    中:https://developer.huawei.com/consumer/cn/doc/development/HMSCore-Guides-V5/sdk-data-security-0000001050040129-V5#ZH-CN_TOPIC_0000001050750251__section2688102310166
    英:https://developer.huawei.com/consumer/en/doc/development/HMSCore-Guides-V5/sdk-data-security-0000001050040129-V5#EN-US_TOPIC_0000001050750251__section2688102310166

  2. 用戶調用接口創建一個語音識別器。

MLAsrRecognizer = MLAsrRecognizer.(context);
  1. 創建語音識別結果監聽器回調。
SpeechRecognitionListener MLAsrListener {
     @Override
     onStartListening() {
         }
 
     @Override
     onStartingOfSpeech() {
         }
 
     @Override
     onVoiceDataReceived([] data, energy, Bundle bundle) {
         
     }
 
     @Override
     onRecognizingResults(Bundle partialResults) {
         
     }
 
     @Override
     onResults(Bundle results) {
         
         }
     }
 
     @Override
     onError(error, String errorMessage) {
         
     }
 
     @Override
     onState(state, Bundle params) {
         
     }
 }
  1. 將新建的結果監聽器回調與語音識別器綁定
.setAsrListener(SpeechRecognitionListener());
  1. 配置識別參數,調用啟動語音識別
Intent = Intent(MLAsrConstants.);
 .putExtra(MLAsrConstants., language)
         .putExtra(MLAsrConstants., MLAsrConstants.);
mSpeechRecognizer.startRecognizing(mSpeechRecognizerIntent);
  1. 識別完成后,釋放資源
(!= ) {
     .destroy();
     = ;
 }
maven地址

buildscript {
     repositories {
         maven { url }
     }
 }
 allprojects {
     repositories {
         maven { url }
     }
 }

引入SDK

dependencies {implementation implementation implementation }

清單文件

<...
     < />
     ...
 </>
 

權限

</>
 

動態權限申請

requestCameraPermission() {
     String[] permissions = String[]{Manifest.permission.};
     (!ActivityCompat.(,
             Manifest.permission.)) { ActivityCompat.(,
                 permissions,
                 TongueTwisterActivity.);
         ;
     }
 }

總結

除了在游戲當中的應用,實時語音識別服務在使用購物類App搜索商品時,可以將語音描述的商品名稱或特征識別為文字從而搜索到目標商品。同樣,在使用音樂類App時,可以將語音輸入的歌名或歌手識別為文字進而搜索歌曲。另外,司機在駕駛過程中不方便輸入文字時,可以將輸入的語音轉換為文字繼而搜索目的地,讓行車更加安全。

GitHub Demo Code

欲了解更多詳情,請參閱:

華為開發者聯盟官網:
https://developer.huawei.com/consumer/cn/hms/huawei-mlkit

獲取開發指導文檔:
https://developer.huawei.com/consumer/en/doc/development/HMSCore-Guides/service-introduction-0000001050040017

參與開發者討論請到Reddit社區:https://www.reddit.com/r/HuaweiDevelopers/

下載demo和示例代碼請到Github:https://github.com/HMS-Core

解決集成問題請到Stack Overflow:
https://stackoverflow.com/questions/tagged/huawei-mobile-services?tab=Newest


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM