快速入门:使用命令行

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

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

准备工作

  1. 登录您的 Google 帐号。

    如果您还没有 Google 帐号,请注册新帐号

  2. 在 Google Cloud Console 的项目选择器页面上,选择或创建一个 Google Cloud 项目。

    转到项目选择器页面

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

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

    启用 API

  5. 设置身份验证:
    1. 在 Cloud Console 中,转到创建服务帐号密钥页面。

      转到“创建服务帐号密钥”页面
    2. 服务帐号列表中,选择新的服务帐号
    3. 服务帐号名称字段中,输入一个名称。
    4. 请勿从角色列表中选择值。访问此服务不需要角色。
    5. 点击创建。此时会出现一条提醒,警告此服务帐号没有角色。
    6. 单击创建无角色帐号。包含密钥的 JSON 文件就会下载到计算机。
  6. 将环境变量 GOOGLE_APPLICATION_CREDENTIALS 设置为包含您的服务帐号密钥的 JSON 文件的路径。 此变量仅适用于当前的 shell 会话,因此,如果您打开新的会话,请重新设置该变量。

  7. 安装并初始化 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 编码的音频内容进行解码

    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 费用,请使用 Cloud Console 删除您不需要的项目。

后续步骤