如何開始使用 Google Cloud 的文字轉語音 API

在本教程中,我們將引導您完成設置和使用Google Cloud的Text-to-Speech API的過程,包括示例和代碼片段.

介紹Google的Text-to-Speech API

作為軟件工程師,您經常需要將各種API集成到您的應用程序中以增強其功能。Google Cloud的Text-to-Speech API是一個強大的工具,可以將文本轉換為自然聽起來的語音。

Google TTS API最常見的使用案例包括:

  • 可訪問性:TTS技術的主要應用之一是提高視覺障礙或閱讀困難人士的可訪問性。通過將文本轉換為語音,API使用戶能夠通過音頻訪問數字內容,使他們更容易瀏覽網站、閱讀文章和使用在線服務
  • 虛擬助手:TTS API常用於為虛擬助手和聊天機器人提供動力,使它們能夠以更像人類的方式與用戶交流。這增強了用戶體驗,並使開發人員能夠創建更吸引人和互動的應用程序。
  • E-Learning: In the education sector, the Google TTS API can be utilized to create audio versions of textbooks, articles, and other learning materials. This enables students to consume educational content while on the go, multitasking, or simply preferring to listen rather than read.
  • 有聲書:Google TTS API可用於將書面內容轉換為有聲書,為用戶提供享受書籍、文章和其他書面材料的不同方式。這不僅節省了手動敘述的時間和資源,還允許快速創建和分發內容。
  • 語言學習:該API支援多種語言,使其成為語言學習應用程式的寶貴工具。透過產生準確且自然的語音,TTS API能夠幫助使用者提升聽力技巧、發音及整體語言理解能力。
  • 內容行銷:企業可以利用TTS API來建立其部落格文章、文章及其他行銷素材的音訊版本。這使他們能夠觸及更廣泛的受眾,包括那些偏好聆聽而非閱讀內容的群體。
  • 電信業務:TTS API可整合至互動式語音回應(IVR)系統中,使企業能夠自動化客戶服務電話、向來電者提供資訊並將其導向適當部門。這有助於公司節省時間和資源,同時保持高水平的客戶滿意度。

使用Google的文字轉語音API

先決條件

在開始之前,請確保您具備以下條件:

  • A Google Cloud Platform (GCP) account. If you don’t have one, sign up for a free trial here.
  • 基本的Python程式設計知識。
  • A text editor or integrated development environment of your choice.

步驟1:啟用文字轉語音API

  • 登入您的GCP帳戶並前往GCP控制台.
  • 點擊項目下拉選單,新建一個項目或選擇現有項目.
  • 在左側導覽欄,點擊APIs & Services > 圖書館.
  • 搜尋文字轉語音API並點擊結果.
  • 點擊啟用以對您的項目啟用API.

步驟2:創建API憑證

  • 在左側導覽欄,點擊APIs & Services > 憑證.
  • 點擊創建憑證並選擇服務帳戶.
  • 填寫必要資訊後點擊創建.
  • 授予此服務帳戶項目存取權頁面,選擇Cloud Text-to-Speech API 使用者角色並點擊繼續.
  • 點擊完成以創建服務帳戶.
  • 服務帳戶列表中,點擊新創建的服務帳戶。
  • 金鑰 下,點擊 新增金鑰 並選擇 JSON.
  • 下載JSON金鑰檔案並安全存放,因為它包含敏感資訊。

第三步:設置Python環境

  • 按照這裡的指示安裝Google Cloud SDK。

  • 安裝Google Cloud文字轉語音Python庫:

      pip install --upgrade google-cloud-texttospeech
    
  • GOOGLE_APPLICATION_CREDENTIALS環境變數設置為您先前下載的JSON金鑰檔案的路徑:

      export GOOGLE_APPLICATION_CREDENTIALS="/path/to/your/keyfile.json"
    

    (將/path/to/your/keyfile.json替換為您的JSON金鑰檔案的實際路徑。)

第四步:創建Python腳本

建立一個新的Python腳本(例如text_to_speech.py)並添加以下代碼:

from google.cloud import texttospeech
def synthesize_speech(text, output_filename):

# 創建一個文字轉語音客戶端
client = texttospeech.TextToSpeechClient()

# 設置文字輸入
input_text = texttospeech.SynthesisInput(text=text)

# 配置語音設置
voice = texttospeech.VoiceSelectionParams(
language_code="en-US",
ssml_gender=texttospeech.SsmlVoiceGender.FEMALE
)

# 設置音頻配置
audio_config = texttospeech.AudioConfig(
audio_encoding=texttospeech.AudioEncoding.MP3
)

# 執行文字轉語音請求
response = client.synthesize_speech(
input=input_text, voice=voice, audio_config=audio_config
)

# 將音頻保存到文件
with open(outputwb") as out:
out.write(response.audio_content)
print(f"Audio content written to '{output_filename}'")

# 測試文字轉語音功能
synthesize_speech("Hello, world!", "output.mp3")

此腳本定義了一個synthesize_speech函數,該函數接受一個文字字符串和一個輸出文件名作為參數。它使用Google Cloud Text-to-Speech API將文字轉換成語音,並將生成的音頻保存為MP3文件。

步驟5:運行腳本

從命令行執行Python腳本:

python text_to_speech.py

這將創建一個output.mp3文件,其中包含輸入文字“Hello, world!”的語音版本。

步驟6(可選):自定義語音和音頻設置

您可以透過修改synthesize_speech函數中的voiceaudio_config變數來自訂語音和音訊設定。例如,要更改語言,請將en-US替換為其他語言代碼(如es-ES代表西班牙語)。要更改性別,請將texttospeech.SsmlVoiceGender.FEMALE替換為texttospeech.SsmlVoiceGender.MALE。更多選項,請參閱文字轉語音API文件

微調Google文字轉語音參數

Google的語音轉文字API提供了廣泛的配置參數,允許開發者根據特定使用案例微調API的行為。一些最常見的配置參數及其使用案例包括:

  • 音訊編碼:指定傳送至API的音訊檔案的編碼格式。支援的編碼格式包括FLACLINEAR16MULAWAMRAMR_WBOGG_OPUSSPEEX_WITH_HEADER_BYTE。開發者可以根據輸入來源、音訊品質和目標應用程式的需求選擇合適的編碼格式。
  • 音訊取樣率:指定音訊檔案的取樣頻率。支援的取樣率包括8000、16000、22050和44100 Hz。開發者可以根據輸入來源和目標應用程式的需求選擇適當的取樣率。
  • 語言代碼:指定輸入語音的語言。支援的語言包括英語、西班牙語、法語、德語、普通話等多種選擇。開發者可以利用此參數確保API能夠準確地將輸入語音轉寫成相應的語言。
  • 模型:允許開發者選擇Google提供的不同轉錄模型。可用的模型包括默認、視頻、phone_callcommand_and_search。開發者可以根據輸入源和目標應用的需求選擇合適的模型。
  • 語音上下文:允許開發者指定可能出現在輸入語音中的特定詞語或短語。這可以通過為API提供輸入語音的上下文來提高轉錄的準確性。

這些配置參數可以以多種方式組合,以創建最適合特定用例的自定義配置。例如,開發者可以配置API以使用特定轉錄模型和自定義語音上下文清單來提高準確性地轉錄西班牙語電話通話。

總體而言,Google的語音轉文字API是一個強大的工具,用於將語音轉錄成文字,而能夠自定義其配置使其更加多功能。通過仔細選擇適當的配置參數,開發者可以優化API的性能和準確性,適用於廣泛的用例。

結論

在本教學中,我們展示了如何開始使用Google Cloud的Text-to-Speech API,包括設置您的GCP帳戶、創建API憑證、安裝必要的庫,以及編寫Python腳本來將文字或SSML轉換為語音。您現在可以將此功能整合到您的應用程式中,以增強用戶體驗、創建音頻內容或支援可訪問性功能。

關於Google Cloud的Text-to-Speech API的常見問題解答

Google Cloud的Text-to-Speech API的主要特點是什麼?

Google Cloud的Text-to-Speech API是一個強大的工具,可以將文字轉換成自然聽起來的語音。它提供超過200種聲音,涵蓋40多種語言和變體,為您在語言支援方面提供了很大的靈活性。它還提供了一系列由神經網絡驅動的聲音,以實現極其逼真的語音。API支持SSML標籤,允許您添加暫停、數字、日期和時間格式以及其他發音指令。它還提供了高度的自定義功能,包括音高、說話速度和音量增益控制。

如何開始使用Google Cloud的Text-to-Speech API?

要開始使用Google Cloud的Text-to-Speech API,您首先需要設置一個Google Cloud項目並為該項目啟用Text-to-Speech API。然後,您可以對您的項目進行身份驗證並開始向API發出請求。API使用簡單的語法將文字轉換為語音,並且您可以自定義語音和語音輸出的格式。

Google Cloud的Text-to-Speech API是否免費使用?

Google Cloud 的文字轉語音API並非完全免費。它採用按字元數量計費的模式。不過,Google確實提供了一個免費層級的API,允許您每月免費轉換一定數量的字元。

如何將Google Cloud的文字轉語音API整合到我的應用程式中?

您可以透過向API發送HTTP POST請求來將Google Cloud的文字轉語音API整合到您的應用程式中。您需要在請求中包含您想要轉換成語音的文字,以及任何您想要應用的自訂選項。API隨後會返回音訊數據回應,您可以播放或保存為音訊文件。

我可以用Google Cloud的文字轉語音API進行商業用途嗎?

是的,您可以使用Google Cloud的文字轉語音API進行商業用途。但您應該了解,使用API需遵守Google的服務條款,如果您超過了免費層級的限制,可能需要支付API費用。

Google Cloud的文字轉語音API支援哪些語言?

Google Cloud的文字轉語音API支援超過40種語言及變體,包括英語、西班牙語、法語、德語、義大利語、荷蘭語、俄語、中文、日語和韓語。這使得它成為需要支援多種語言的應用程式的多功能工具。

如何自訂Google Cloud的文字轉語音API中的語音?

您可以透過在API請求中指定語音名稱、語言代碼及SSML性別,來自訂Google Cloud的Text-to-Speech API中的語音。此外,您還可以調整語音的音高、說話速度及音量增益。

我能否在離線狀態下使用Google Cloud的Text-to-Speech API?

不行,Google Cloud的Text-to-Speech API是一項基於雲端的服務,需要網路連接才能運作。您必須發送HTTP請求至API,而API則透過網路返回音訊數據。

Google Cloud的Text-to-Speech API產生的語音音質如何?

Google Cloud的Text-to-Speech API所產生的語音音質非常高。該API運用先進的神經網絡來生成幾乎與真人語音無法區分的自然語音。

我能否使用Google Cloud的Text-to-Speech API來製作有聲書?

可以,您可以使用Google Cloud的Text-to-Speech API來製作有聲書。您能將大量文字轉換成高品質語音,並可自訂語音以符合書籍內容。然而,您應該了解,使用該API製作有聲書可能涉及大量數據,並且若超出免費額度限制,可能會產生費用。

Source:
https://www.sitepoint.com/started-with-google-clouds-text-to-speech-api/