Social Proof

華為的文字轉語音功能

Speechify 是全球第一的音頻閱讀器。讓您更快地閱讀書籍、文件、文章、PDF、電子郵件——任何您需要閱讀的內容。

媒體報導

forbes logocbs logotime magazine logonew york times logowall street logo
使用Speechify收聽這篇文章!
Speechify

讓我們來看看華為內建的功能,並探索一些程式設計技巧,幫助你擴展華為的TTS功能。

華為的文字轉語音功能

如果你覺得三星手機的價格過高或想要一個替代選擇,你可以考慮華為手機。雖然這些設備通常有一些缺點,例如無法訪問Google Play商店,但它們仍然運行Android操作系統

這意味著你可以使用內建的文字轉語音(TTS) 閱讀器進行語音播放。讓我們來看看如何做到這一點,並探索一些程式設計技巧,幫助你擴展華為的TTS功能。

華為是誰?

自1987年成立以來,華為已成為領先的電子和通信技術供應商。這家中國公司在超過170個國家運營,擁有195,000名員工。

大多數人知道華為是生產一系列經濟實惠的移動設備的製造商,如智能手機。這些設備大多使用Android操作系統的版本。然而,由於許多美國公司對數據相關問題的擔憂,它們有一些限制。

即便如此,華為仍是一家世界領先的科技公司,提供各種有用的設備和服務。

如何在華為設備上啟用TalkBack TTS引擎

華為內建了一個名為TalkBack的文字轉屏幕閱讀器。它的功能類似於你可以在蘋果的iPhone和iPad上找到的VoiceOver。

該應用程式為你提供語音反饋,這意味著它會將螢幕上的任何內容讀出來。你也可以用語音指令操作華為手機——不必看螢幕。因此,TalkBack對視障人士來說是理想的選擇。

以下是啟用TalkBack的方法:

  1. 打開“設定”並選擇“無障礙功能”。
  2. 點擊“無障礙”。
  3. 選擇“TalkBack”並啟用該軟體。
  4. 點擊“確定”。

停用TalkBack

如果你想關閉TalkBack,按住手機的電源按鈕,直到顯示“重新啟動”和“關機”圖標。然後,觸摸螢幕並按住三秒鐘以停用TalkBack。

將文字轉換為語音

一旦TalkBack啟用,請按照以下步驟將數位文字轉換為語音:

  1. 打開“設定”並導航到“無障礙”螢幕。
  2. 點擊“文字轉語音”並選擇你想要的文字轉語音引擎。
  3. 調整語速和音調以符合你的喜好。

請注意,你可以使用這些步驟為任何安裝在華為設備上的TTS應用程式啟用文字轉語音功能。一旦啟用,手機將會讀出它看到的任何文字信息。

使用MLTtsengine.speak為Android應用程式添加語音

華為設備提供MLTtsengine.speak開發套件。此套件允許你在使用設備創建的任何Android應用程式中添加文字轉語音功能。

以下是使用一位名為Tushar Srivastava的開發者提供的信息的基本步驟:

  1. 使用Android Studio創建一個新專案。
  2. 將以下依賴項添加到專案中:
    • implementation 'com.huawei.hms:ml-computer-voice-tts:1.0.4.300'
  3. 使用以下代碼將AGC插件添加到app.gradle文件的頂部:
    • apply plugin: 'com.huawei.agconnect'
  4. 在你的Android Studio活動中使用以下代碼創建一個回調:

var callback: MLTtsCallback = object : MLTtsCallback {

override fun onError(taskId: String, err: MLTtsError) {

}

override fun onWarn(taskId: String, warn: MLTtsWarn) {

}

override fun onRangeStart(taskId: String, start: Int, end: Int) {

}

override fun onEvent(taskId: String, eventName: Int, bundle: Bundle?) {

if (eventName == MLTtsConstants.EVENT_PLAY_STOP) {

val isStop = bundle?.getBoolean(MLTtsConstants.EVENT_PLAY_STOP_INTERRUPTED)

}

}

  1. 使用以下代碼行初始化對象:

mlConfigs = MLTtsConfig()

.setLanguage(MLTtsConstants.TTS_EN_US)

.setPerson(MLTtsConstants.TTS_SPEAKER_FEMALE_EN)

.setSpeed(1.0f)

.setVolume(1.0f)

mlTtsEngine = MLTtsEngine(mlConfigs)

mlTtsEngine.setTtsCallback(callback)

  1. 在您的活動中創建以下方法,以便您可以通過按鈕點擊訪問應用中的文字轉語音輸出:

private fun startTtsService() { val id = mlTtsEngine.speak(sourceText,MLTtsEngine.QUEUE_APPEND)}

其他有用的回調方法

華為的API提供了多種回調方法,用於在應用中使用音頻數據和文字轉語音。以下是四種最常見的方法。

Public void onError()

如果發生錯誤,控制流程將轉到此錯誤回調。它用於通知應用用戶發生錯誤,並請求他們將分析數據發送到適當的地方進行驗證。

Public void onWarn()

如果用戶遇到警告,例如應用的帶寬不足,回調流程將流向此處。

Public void onEvent()

每當發生新事件時,例如用戶暫停音頻時,使用此回調。

Public void onRangeStart()

此回調返回當前播放段與用戶想要閱讀的文本之間的映射。

附加說明

您創建的任何新的mlttscallback例程都有其限制。在上述示例中,字符以UTF-8編碼,並且有500個字符的限制。

好的一面是,該功能支持英語、普通話的男聲和女聲,以及兩者的組合。

Speechify - Talkback的替代方案

如您所見,使用華為設備來閱讀設備上的文本可能會變得複雜。然而,如果您不想編程,一個替代的文字轉語音應用可以實時為您朗讀任何文本。

那個應用就是Speechify。

Speechify適用於所有Android設備,使用語音合成技術提供多種人聲音色。用戶可以選擇超過14種語言,並根據需要調整朗讀速度。

當您不使用該應用時,只需關閉,您就可以像平常一樣閱讀文本。

如果您想了解更多關於Speechify如何在您的華為設備上運作, 今天就試用免費試用版。您也可以在瀏覽器中使用閱讀器。

常見問題

如何在我的華為設備上開啟文字轉語音功能?

使用本文中的指導來啟用TalkBack應用。

如何在華為設備上進行語音輸入?

進入設備的「控制面板」,然後前往「輔助功能」。選擇「語音識別」並點擊「開始語音識別」。

Android 有文字轉語音功能嗎?

除了 TalkBack,您還可以在 Android 手機上使用許多 TTS 引擎。

Tyler Weitzman

泰勒·魏茲曼

泰勒·魏茲曼是 Speechify 的聯合創辦人、人工智慧負責人及總裁,這是全球排名第一的文字轉語音應用程式,擁有超過 100,000 個五星評價。魏茲曼畢業於史丹佛大學,獲得數學學士學位及人工智慧方向的計算機科學碩士學位。他被《Inc.》雜誌評選為 50 大企業家之一,並曾在《Business Insider》、《TechCrunch》、《LifeHacker》、《CBS》等媒體上亮相。魏茲曼的碩士研究專注於人工智慧和文字轉語音,他的最終論文題為:「CloneBot:個性化對話回應預測」。