快速入門:使用指令列

本快速入門將介紹 Cloud Text-to-Speech API。在本快速入門中,您將設定您的 Google Cloud Platform 專案與授權,然後提出要求,讓 Text-to-Speech API 從文字建立音訊。

如要進一步瞭解 Cloud Text-to-Speech API 中的基本概念,請參閱 Cloud Text-to-Speech API 基本資訊

事前準備

  1. 登入您的 Google 帳戶。

    如果您沒有帳戶,請申請新帳戶

  2. 選取或建立 Google Cloud Platform 專案。

    前往「Manage resources」(管理資源) 頁面

  3. 請確認您已啟用 Google Cloud Platform 專案的計費功能。

    瞭解如何啟用計費功能

  4. 啟用Cloud Text-to-Speech API。

    啟用 API

  5. 設定驗證:
    1. 在 GCP 主控台中,前往「Create service account key」(建立服務帳戶金鑰) 頁面。

      前往「Create Service Account Key」(建立服務帳戶金鑰) 頁面
    2. 從 [Service account] (服務帳戶) 清單中選取 [New service account] (新增服務帳戶)
    3. 在 [Service account name] (服務帳戶名稱) 欄位中輸入一個名稱。
    4. 請勿在 [Role] (角色) 清單中選取任何值。存取這項服務並不需要任何角色。
    5. 點選 [建立]。系統會顯示一個附註,警告您這個服務帳戶沒有任何角色。
    6. 按一下 [建立 (不指派角色)]。一個包含您金鑰的 JSON 檔案會下載到電腦中。
  6. 將環境變數 GOOGLE_APPLICATION_CREDENTIALS 設為包含服務帳戶金鑰的 JSON 檔案路徑。 此變數僅適用於您目前的殼層工作階段,所以如果您開啟新的工作階段,請再次設定變數。

  7. 安裝並初始化 Cloud SDK

從文字合成音訊

您可以向 https://texttospeech.googleapis.com/v1/text:synthesize 端點發出 HTTP POST 要求,將文字轉換成音訊。在 POST 指令的內容中,請在 voice 設定區段指定要合成的語音類型,在 input 區段的 text 欄位中指定要合成的文字,並在 audioConfig 區段中指定要建立的音訊類型。

  1. 在指令列執行下列指令,使用 Text-to-Speech API 從文字合成音訊。此指令使用 gcloud auth application-default print-access-token 指令來擷取要求的授權憑證。

    系統會將回應導向輸出檔案 synthesize-text.txt

    curl -H "Authorization: Bearer $(gcloud auth application-default print-access-token)" \
      -H "Content-Type: application/json; charset=utf-8" \
      --data "{
        'input':{
          'text':'Android is a mobile operating system developed by Google,
             based on the Linux kernel and designed primarily for
             touchscreen mobile devices such as smartphones and tablets.'
        },
        'voice':{
          'languageCode':'en-gb',
          'name':'en-GB-Standard-A',
          'ssmlGender':'FEMALE'
        },
        'audioConfig':{
          'audioEncoding':'MP3'
        }
      }" "https://texttospeech.googleapis.com/v1/text:synthesize" > synthesize-text.txt
    

    synthesize-text.txt 檔案的內容應與下列類似:

    {
      "audioContent": "//NExAASCCIIAAhEAGAAEMW4kAYPnwwIKw/BBTpwTvB+IAxIfghUfW.."
    }
    
    
  2. REST 指令的 JSON 輸出含有 base64 編碼格式的合成音訊。將 audioContent 欄位的內容複製到名為 synthesize-output-base64.txt 的新檔案。您的新檔案看起來會像下方這樣:

    //NExAARqoIIAAhEuWAAAGNmBGMY4EBcxvABAXBPmPIAF//yAuh9Tn5CEap3/o
    ...
    VVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV
    
  3. synthesize-output-base64.txt 檔案的內容解碼到名為 synthesized-audio.mp3 的新檔案。如需解碼 base64 檔案的資訊,請參閱解碼 Base64 編碼的音訊內容

    base64 synthesize-output-base64.txt --decode > synthesized-audio.mp3
    
  4. 在音訊應用程式中或音訊裝置上播放 synthesized-audio.mp3 的內容。您也可以在 Chrome 瀏覽器中導覽至 synthesized-audio.mp3 檔案所在的資料夾,例如 file://my_file_path/synthesized-audio.mp3,以開啟此檔案並播放音訊。

清除

如要避免不必要的 Google Cloud Platform 收費,請前往 GCP 主控台刪除您不需要的專案。

後續步驟

  • 如要進一步瞭解 Cloud Text-to-Speech,請參閱基本資訊
  • 查看可用於合成語音的可用語音清單。

本頁內容對您是否有任何幫助?請提供意見:

傳送您對下列選項的寶貴意見...

這個網頁
Cloud Text-to-Speech API
需要協助嗎?請前往我們的支援網頁