本页演示如何使用同步语音识别将短音频文件转录为文字。
同步语音识别功能可返回短音频(少于 60 秒)的识别文本。如需处理超过 60 秒的音频的语音识别请求,请使用异步语音识别。
Speech-to-Text 可以直接接收本地文件中的音频内容,也可以处理存储在 Google Cloud Storage 存储桶中的音频内容。请参阅配额和限制页面,了解同步语音识别请求的限制。
对本地文件执行同步语音识别
以下是对本地音频文件执行同步语音识别的示例:
REST
如需了解完整的详细信息,请参阅 speech:recognize
API 端点。 如需详细了解如何配置请求正文,请参阅 RecognitionConfig 参考文档。
请求正文中提供的音频内容必须采用 base64 编码。如需详细了解如何对音频执行 base64 编码,请参阅 Base64 编码音频内容。如需详细了解 content
字段,请参阅 RecognitionAudio。
在使用任何请求数据之前,请先进行以下替换:
- LANGUAGE_CODE:音频剪辑中所用语言的 BCP-47 代码。
- ENCODING:要转写的音频的编码。
- SAMPLE_RATE_HERTZ:要转写的音频的采样率(以赫兹为单位)。
- ENABLE_WORD_TIME_OFFSETS:如果要返回字词的开始时间和结束时间偏移值(时间戳),请启用此字段。
- INPUT_AUDIO:要转录的音频数据的 base64 编码字符串。
- PROJECT_ID:您的 Google Cloud 项目的字母数字 ID。
HTTP 方法和网址:
POST https://speech.googleapis.com/v1/speech:recognize
请求 JSON 正文:
{ "config": { "languageCode": "LANGUAGE_CODE", "encoding": "ENCODING", "sampleRateHertz": SAMPLE_RATE_HERTZ, "enableWordTimeOffsets": ENABLE_WORD_TIME_OFFSETS }, "audio": { "content": "INPUT_AUDIO" } }
如需发送您的请求,请展开以下选项之一:
您应该收到类似以下内容的 JSON 响应:
{ "results": [ { "alternatives": [ { "transcript": "how old is the Brooklyn Bridge", "confidence": 0.98267895 } ] } ] }
gcloud
如需详细了解全部信息,请参阅 recognize
命令。
如需对本地文件执行语音识别,请使用 Google Cloud CLI,并传入要对其执行语音识别的文件的本地文件路径。
gcloud ml speech recognize PATH-TO-LOCAL-FILE --language-code='en-US'
如果请求成功,则服务器返回 JSON 格式的响应:
{ "results": [ { "alternatives": [ { "confidence": 0.9840146, "transcript": "how old is the Brooklyn Bridge" } ] } ] }
Go
如需了解如何安装和使用 Speech-to-Text 客户端库,请参阅 Speech-to-Text 客户端库。 如需了解详情,请参阅 Speech-to-Text Go API 参考文档。
如需向 Speech-to-Text 进行身份验证,请设置应用默认凭据。 如需了解详情,请参阅为本地开发环境设置身份验证。
Java
如需了解如何安装和使用 Speech-to-Text 客户端库,请参阅 Speech-to-Text 客户端库。 如需了解详情,请参阅 Speech-to-Text Java API 参考文档。
如需向 Speech-to-Text 进行身份验证,请设置应用默认凭据。 如需了解详情,请参阅为本地开发环境设置身份验证。
Node.js
如需了解如何安装和使用 Speech-to-Text 客户端库,请参阅 Speech-to-Text 客户端库。 如需了解详情,请参阅 Speech-to-Text Node.js API 参考文档。
如需向 Speech-to-Text 进行身份验证,请设置应用默认凭据。 如需了解详情,请参阅为本地开发环境设置身份验证。
Python
如需了解如何安装和使用 Speech-to-Text 客户端库,请参阅 Speech-to-Text 客户端库。 如需了解详情,请参阅 Speech-to-Text Python API 参考文档。
如需向 Speech-to-Text 进行身份验证,请设置应用默认凭据。 如需了解详情,请参阅为本地开发环境设置身份验证。
其他语言
C#:请按照客户端库页面上的 C# 设置说明操作,然后访问 .NET 版 Speech-to-Text 参考文档。
PHP:请按照客户端库页面上的 PHP 设置说明操作,然后访问 PHP 版 Speech-to-Text 参考文档。
Ruby:请按照客户端库页面上的 Ruby 设置说明操作,然后访问 Ruby 版 Speech-to-Text 参考文档。
对远程文件执行同步语音识别
为方便您使用,Speech-to-Text API 可以直接对位于 Google Cloud Storage 的音频文件执行同步语音识别,而您无需在请求体中发送音频文件的内容。
以下是对 Cloud Storage 中的文件执行同步语音识别的示例:
REST
如需了解完整的详细信息,请参阅 speech:recognize
API 端点。 如需详细了解如何配置请求正文,请参阅 RecognitionConfig 参考文档。
请求正文中提供的音频内容必须采用 base64 编码。如需详细了解如何对音频执行 base64 编码,请参阅 Base64 编码音频内容。如需详细了解 content
字段,请参阅 RecognitionAudio。
在使用任何请求数据之前,请先进行以下替换:
- LANGUAGE_CODE:音频剪辑中所用语言的 BCP-47 代码。
- ENCODING:要转写的音频的编码。
- SAMPLE_RATE_HERTZ:要转写的音频的采样率(以赫兹为单位)。
- ENABLE_WORD_TIME_OFFSETS:如果要返回字词的开始时间和结束时间偏移值(时间戳),请启用此字段。
- STORAGE_BUCKET:Cloud Storage 存储桶;
- INPUT_AUDIO:您要转录的音频数据文件。
- PROJECT_ID:您的 Google Cloud 项目的字母数字 ID。
HTTP 方法和网址:
POST https://speech.googleapis.com/v1/speech:recognize
请求 JSON 正文:
{ "config": { "languageCode": "LANGUAGE_CODE", "encoding": "ENCODING", "sampleRateHertz": SAMPLE_RATE_HERTZ, "enableWordTimeOffsets": ENABLE_WORD_TIME_OFFSETS }, "audio": { "uri": "gs://STORAGE_BUCKET/INPUT_AUDIO" } }
如需发送您的请求,请展开以下选项之一:
您应该收到类似以下内容的 JSON 响应:
{ "results": [ { "alternatives": [ { "transcript": "how old is the Brooklyn Bridge", "confidence": 0.98267895 } ] } ] }
gcloud
如需详细了解全部信息,请参阅 recognize
命令。
如需对本地文件执行语音识别,请使用 Google Cloud CLI,并传入要对其执行语音识别的文件的本地文件路径。
gcloud ml speech recognize 'gs://cloud-samples-tests/speech/brooklyn.flac' \ --language-code='en-US'
如果请求成功,则服务器返回 JSON 格式的响应:
{ "results": [ { "alternatives": [ { "confidence": 0.9840146, "transcript": "how old is the Brooklyn Bridge" } ] } ] }
Go
如需了解如何安装和使用 Speech-to-Text 客户端库,请参阅 Speech-to-Text 客户端库。 如需了解详情,请参阅 Speech-to-Text Go API 参考文档。
如需向 Speech-to-Text 进行身份验证,请设置应用默认凭据。 如需了解详情,请参阅为本地开发环境设置身份验证。
Java
如需了解如何安装和使用 Speech-to-Text 客户端库,请参阅 Speech-to-Text 客户端库。 如需了解详情,请参阅 Speech-to-Text Java API 参考文档。
如需向 Speech-to-Text 进行身份验证,请设置应用默认凭据。 如需了解详情,请参阅为本地开发环境设置身份验证。
Node.js
如需了解如何安装和使用 Speech-to-Text 客户端库,请参阅 Speech-to-Text 客户端库。 如需了解详情,请参阅 Speech-to-Text Node.js API 参考文档。
如需向 Speech-to-Text 进行身份验证,请设置应用默认凭据。 如需了解详情,请参阅为本地开发环境设置身份验证。
Python
如需了解如何安装和使用 Speech-to-Text 客户端库,请参阅 Speech-to-Text 客户端库。 如需了解详情,请参阅 Speech-to-Text Python API 参考文档。
如需向 Speech-to-Text 进行身份验证,请设置应用默认凭据。 如需了解详情,请参阅为本地开发环境设置身份验证。
其他语言
C#:请按照客户端库页面上的 C# 设置说明操作,然后访问 .NET 版 Speech-to-Text 参考文档。
PHP:请按照客户端库页面上的 PHP 设置说明操作,然后访问 PHP 版 Speech-to-Text 参考文档。
Ruby:请按照客户端库页面上的 Ruby 设置说明操作,然后访问 Ruby 版 Speech-to-Text 参考文档。