自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

科技帖 如何將AI原生的應(yīng)用到Android系統(tǒng)

譯文
新聞 移動應(yīng)用
在今天的文章中,我們將探討如何將沃森文本到語音(簡稱TTS)功能集成至現(xiàn)有Android原生移動應(yīng)用當(dāng)中。

【51CTO.com快譯】相較于閱讀消息內(nèi)容,直接聽取內(nèi)容無疑更為便捷。將沃森的文本到語音功能集成至現(xiàn)有Android原生應(yīng)用中能夠幫助大家輕松實現(xiàn)這一目標(biāo)。

在今天的文章中,我們將探討如何將沃森文本到語音(簡稱TTS)功能集成至現(xiàn)有Android原生移動應(yīng)用當(dāng)中。

 在***次嘗試向GitHub提交自己開發(fā)的Watbot時,這樣的經(jīng)歷簡直可以用“夢幻般”來形容。Watbot是一款利用沃森對話服務(wù)打造的Android聊天機器人,主要幫助高校學(xué)生們學(xué)習(xí)如何在30分鐘內(nèi)通過在Bluemix上創(chuàng)建服務(wù)并經(jīng)由模擬器或者物理設(shè)備運行應(yīng)用,最終實現(xiàn)學(xué)習(xí)目標(biāo)。不過在我看來,將其它沃森服務(wù)集成至應(yīng)用當(dāng)中顯然更為有趣,特別是沃森文本到語音服務(wù)。相較于閱讀消息內(nèi)容,直接聽取其內(nèi)容無疑更加便捷。

“文本到語音轉(zhuǎn)換能夠?qū)嫖谋巨D(zhuǎn)化為自然發(fā)聲音頻。您可以自定義并控制特定詞匯的發(fā)音,從而為受眾提供無縫化語音交互成果,其適用于兒童互動玩具、自動呼叫中心交互以及免提式導(dǎo)航系統(tǒng)。”

以不同語音聽取消息內(nèi)容

  • 在Bluemix上創(chuàng)建一項沃森文本到語音(簡稱TTS)服務(wù)。
  • 前往Service Credentials標(biāo)簽并點擊View Credentials。
  1. curl -X GET -u "{username}":"{password}" 
  2. "https://stream.watsonplatform.net/text-to-speech/api/v1/voices" 

以上代表用于檢索全部可用于服務(wù)的語音列表。其中提供的信息包括語音名稱、語種以及性別等等。要了解關(guān)于特定語音的信息,請使用“Get a voice”方法:


  1.   "voices": [ 
  2.     { 
  3.       "name": "pt-BR_IsabelaVoice", 
  4.       "language": "pt-BR", 
  5.       "customizable": true, 
  6.       "gender": "female", 
  7.       "url": "https://stream-s.watsonplatform.net/text-to-speech/api/v1/voices/pt-BR_IsabelaVoice", 
  8.       "supported_features": { 
  9.         "voice_transformation": false, 
  10.         "custom_pronunciation": true 
  11.       }, 
  12.       "description": "Isabela: Brazilian Portuguese (português brasileiro) female voice." 
  13.     }, 
  14.     { 
  15.       "name": "es-US_SofiaVoice", 
  16.       "language": "es-US", 
  17.       "customizable": true, 
  18.       "gender": "female", 
  19.       "url": "https://stream-s.watsonplatform.net/text-to-speech/api/v1/voices/es-US_SofiaVoice", 
  20.       "supported_features": { 
  21.         "voice_transformation": false, 
  22.         "custom_pronunciation": true 
  23.       }, 
  24.       "description": "Sofia: North American Spanish (español norteamericano) female voice." 
  25.     }, 
  26.     { 
  27.       "name": "en-GB_KateVoice", 
  28.       "language": "en-GB", 
  29.       "customizable": true, 
  30.       "gender": "female", 
  31.       "url": "https://stream-s.watsonplatform.net/text-to-speech/api/v1/voices/en-GB_KateVoice", 
  32.       "supported_features": { 
  33.         "voice_transformation": false, 
  34.         "custom_pronunciation": true 
  35.       }, 
  36.       "description": "Kate: British English female voice." 
  37.     }, 
  38.     { 
  39.       "name": "en-US_LisaVoice", 
  40.       "language": "en-US", 
  41.       "customizable": true, 
  42.       "gender": "female", 
  43.       "url": "https://stream-s.watsonplatform.net/text-to-speech/api/v1/voices/en-US_LisaVoice", 
  44.       "supported_features": { 
  45.         "voice_transformation": true, 
  46.         "custom_pronunciation": true 
  47.       }, 
  48.       "description": "Lisa: American English female voice." 
  49.     }, 
  50.     { 
  51.       "name": "ja-JP_EmiVoice", 
  52.       "language": "ja-JP", 
  53.       "customizable": true, 
  54.       "gender": "female", 
  55.       "url": "https://stream-s.watsonplatform.net/text-to-speech/api/v1/voices/ja-JP_EmiVoice", 
  56.       "supported_features": { 
  57.         "voice_transformation": false, 
  58.         "custom_pronunciation": true 
  59.       }, 
  60.       "description": "Emi: Japanese (日本語) female voice." 
  61.     }, 
  62.     . . . 
  63.   ] 

感興趣的朋友可以點擊此處參閱沃森開發(fā)者云之上的API參考資料,從而了解更多與TTS API調(diào)用相關(guān)的知識

如何將TTS集成至我的Android原生應(yīng)用?

這要求我們將TTS的Gradle條目添加至build.gradle(應(yīng)用)文件當(dāng)中:

  1. compile 'com.ibm.watson.developer_cloud:text-to-speech:3.5.3' 
  2. compile 'com.ibm.watson.developer_cloud:android-sdk:0.2.1' 

在您的MainActivity.java文件內(nèi)添加以下代碼,并將用戶名與密碼占位符替換為實際TTS服務(wù)憑據(jù)。另外,在添加以下代碼后,點觸一段消息即可將文本轉(zhuǎn)換為語音:

  1. recyclerView.addOnItemTouchListener(new RecyclerTouchListener(getApplicationContext(), recyclerView, new ClickListener() { 
  2.  @Override 
  3.  public void onClick(View view, final int position) { 
  4.   Thread thread = new Thread(new Runnable() { 
  5.    public void run() { 
  6.     Message audioMessage; 
  7.     try { 
  8.      audioMessage = (Message) messageArrayList.get(position); 
  9.      streamPlayer = new StreamPlayer(); 
  10.      if (audioMessage != null && !audioMessage.getMessage().isEmpty()) 
  11.      //Change the Voice format and choose from the available choices 
  12.       streamPlayer.playStream(service.synthesize(audioMessage.getMessage(), Voice.EN_LISA).execute()); 
  13.      else 
  14.       streamPlayer.playStream(service.synthesize("No Text Specified", Voice.EN_LISA).execute()); 
  15.     } catch (Exception e) { 
  16.      e.printStackTrace(); 
  17.     } 
  18.    } 
  19.   }); 
  20.   thread.start(); 
  21.  } 
  22.  @Override 
  23.  public void onLongClick(View view, int position) { 
  24.  } 
  25. })); 
接下來,構(gòu)建并運行您的應(yīng)用。
現(xiàn)在只要點觸某段消息,其文本亦會通過Voice(Voice.EN_LISA)形式進行播放。大家也可以在代碼中變更語音格式。
請注意:如果您發(fā)現(xiàn)錯誤并希望檢查完整代碼,請使用以下命令:
  1. git clone https://github.com/VidyasagarMSC/WatBot.git 
而后檢查MainActivity.java的第105到第134行。
當(dāng)然,這段旅程到這里還遠(yuǎn)沒有結(jié)束。在后續(xù)文章中,我們將繼續(xù)介紹沃森語音到文本(簡稱STT)服務(wù)的集成方式與效果。敬請期待!
 
原文標(biāo)題:Integrating Watson Text-to-Speech Into an Android Native App
原文作者:Vidyasagar Machupalli 

【51CTO譯稿,合作站點轉(zhuǎn)載請注明原文譯者和出處為51CTO.com】

責(zé)任編輯:陳琳 來源: 51cto
相關(guān)推薦

2023-12-12 16:46:44

AI云團隊云管理

2012-02-10 09:38:48

JMP工業(yè)工程

2018-02-05 00:02:48

WANSDN網(wǎng)絡(luò)

2022-07-04 14:21:11

人工智能工具存儲

2018-09-29 09:00:00

2021-07-05 16:53:04

AI人工智能教育

2023-11-03 15:12:44

數(shù)據(jù)治理AI/ML系統(tǒng)

2021-12-29 14:57:47

德勤人工智能AI驅(qū)動型企業(yè)

2021-08-03 15:26:56

代碼智能阿里云

2010-03-15 14:03:37

CloudSwitch遷移應(yīng)用到云端

2018-11-13 10:40:01

區(qū)塊鏈汽車大數(shù)據(jù)

2017-09-25 15:49:01

2009-02-10 10:49:28

滕博視頻應(yīng)用

2023-10-06 23:36:50

2022-11-25 16:27:07

應(yīng)用開發(fā)鴻蒙

2024-05-06 08:00:00

GenAIGraphQL人工智能

2022-09-14 11:32:49

物聯(lián)網(wǎng)物聯(lián)網(wǎng)技術(shù)

2022-09-21 12:37:43

物聯(lián)網(wǎng)安全設(shè)備

2023-03-31 14:30:10

點贊
收藏

51CTO技術(shù)棧公眾號