快速入门:使用命令行

本快速入门为您介绍 Text-to-Speech。在本快速入门中,您可以设置 Google Cloud Platform 项目和授权,然后向 Text-to-Speech 发出从文本创建音频的请求。

如需详细了解 Text-to-Speech 中的基本概念,请阅读 Text-to-Speech 基础知识

准备工作

  1. 登录您的 Google Cloud 帐号。如果您是 Google Cloud 新手,请创建一个帐号来评估我们的产品在实际场景中的表现。新客户还可获享 $300 赠金,用于运行、测试和部署工作负载。
  2. 在 Google Cloud Console 的项目选择器页面上,选择或创建一个 Google Cloud 项目。

    转到“项目选择器”

  3. 确保您的 Cloud 项目已启用结算功能。 了解如何确认您的项目是否已启用结算功能

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

    启用 API

  5. 创建服务帐号:

    1. 在 Cloud Console 中,转到创建服务帐号页面。

      转到“创建服务帐号”
    2. 选择一个项目。
    3. 服务帐号名称字段中,输入一个名称。 Cloud Console 会根据此名称填充服务帐号 ID 字段。

      服务帐号说明字段中,输入说明。例如,Service account for quickstart

    4. 点击完成以完成服务帐号的创建过程。

      不要关闭浏览器窗口。您将在下一步骤中用到它。

  6. 创建服务帐号密钥:

    1. 在 Cloud Console 中,点击您创建的服务帐号的电子邮件地址。
    2. 点击密钥
    3. 依次点击添加密钥创建新密钥
    4. 点击创建。JSON 密钥文件将下载到您的计算机上。
    5. 点击关闭
  7. 将环境变量 GOOGLE_APPLICATION_CREDENTIALS 设置为包含您的服务帐号密钥的 JSON 文件的路径。 此变量仅适用于当前的 shell 会话,因此,如果您打开新的会话,请重新设置该变量。

  8. 安装并初始化 Cloud SDK

从文本合成音频

您可以通过向 https://texttospeech.googleapis.com/v1/text:synthesize 端点发出 HTTP POST 请求,将文本转换为音频。在 POST 命令正文的 voice 配置部分指定要合成的语音类型,在 input 部分的 text 字段中指定要合成的文本,并在 audioConfig 部分指定要创建的音频类型。

  1. 在命令行执行以下命令以使用 Text-to-Speech 从文本合成音频。该命令使用 gcloud auth application-default print-access-token 命令检索请求的授权令牌。

    HTTP 方法和网址:

    POST https://texttospeech.googleapis.com/v1/text:synthesize

    请求 JSON 正文:

    {
      "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"
      }
    }
    

    如需发送您的请求,请展开以下选项之一:

    您应会收到如下所示的 JSON 响应:

    {
      "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 编码的音频内容进行解码

    Linux

    1. 仅将使用 base64 编码的内容复制到文本文件中。

    2. 使用 base64 命令行工具通过 -d 标志对源文本文件进行解码:

        $ base64 SOURCE_BASE64_TEXT_FILE -d > DESTINATION_AUDIO_FILE
    

    Mac OSX

    1. 仅将使用 base64 编码的内容复制到文本文件中。

    2. 使用 base64 命令行工具对源文本文件进行解码:

        $ base64 --decode SOURCE_BASE64_TEXT_FILE > DESTINATION_AUDIO_FILE
    

    Windows

    1. 仅将使用 base64 编码的内容复制到文本文件中。

    2. 使用 certutil 命令对源文本文件进行解码。

       certutil -decode SOURCE_BASE64_TEXT_FILE DESTINATION_AUDIO_FILE
    
  4. 在音频应用中或音频设备上播放 synthesized-audio.mp3 的内容。您还可以在 Chrome 浏览器中打开 synthesized-audio.mp3,以通过导航到包含该文件的文件夹来播放音频,例如 file://my_file_path/synthesized-audio.mp3

清理

为避免产生不必要的 Google Cloud Platform 费用,请使用 Cloud Console 删除您不需要的项目。

后续步骤