实现:字幕

以下示例展示了如何使用 YouTube Data API (v3) 来执行与字幕相关的功能。

检索视频的字幕轨道列表

如需检索可用于特定视频的字幕轨道列表,请调用 captions.list 方法。将 videoId 参数值设为 YouTube 视频 ID,该 ID 可唯一标识您要检索其字幕的视频。您的请求必须使用 OAuth 2.0 进行授权。

以下请求检索了 Google 短片故事 YouTube 频道中视频的字幕列表:

https://developers.google.com/apis-explorer/#p/youtube/v3/youtube.captions.list?
part=snippet
&videoId=PRU2ShMzQRg

如需查看代码示例,请参阅 captions.list 方法的文档。

创建字幕轨道

无法使用 API Explorer 测试此查询,因为 API Explorer 不支持上传文件的功能,而这是此方法的必要条件。

您可以使用 API 的 captions.insert 方法为视频上传新的字幕轨道。上传轨道时,您必须为以下 caption 资源属性指定一个值:

上传字幕轨道时还有以下可用选项:

  • 如果您将 sync 参数设为 true,YouTube 将忽略已上传的字幕文件中的所有时间码,并为字幕生成新的时间码。

    如果您要上传没有时间代码的解说词,或者如果您怀疑文件中的时间代码不正确并希望 YouTube 尝试修复这些错误,则应将 sync 参数设置为 true

  • 如果您将 caption 资源的 snippet.isDraft 属性设置为 true,则相应轨道将不会公开显示。

如需查看代码示例,请参阅 captions.insert 方法的文档。

下载字幕轨

无法使用 API Explorer 对此查询进行测试,因为 API Explorer 不支持下载文件。

如需下载特定的字幕轨道,请调用 captions.download 方法。将 id 参数值设为 YouTube 字幕轨道 ID,以便唯一标识您要下载的字幕轨道。您的请求必须使用 OAuth 2.0 进行授权。

v3 API 支持以下选项:

  • 要指定应以特定格式返回字幕轨道,请设置 tfmt 参数值以标识所需的格式。参数定义列出了支持的值。

  • 如需检索字幕轨道的翻译,请将 tlang 参数值设为 ISO 639-1 双字母语言代码,以指定所需的字幕语言。翻译是通过谷歌翻译等机器翻译生成的。

如需查看代码示例,请参阅 captions.download 方法的文档。

更新字幕轨道

该 API 支持更改字幕轨道的草稿状态和/或为文件上传新的字幕轨道。

您可以使用 API Explorer 测试更改轨道草稿状态的能力。不过,您无法使用 API Explorer 更新实际的字幕轨道,因为此工具不支持上传文件。

以下请求检索了 Google 短片故事 YouTube 频道中视频的字幕列表:

该请求将字幕轨道的草稿状态更新为 true,这意味着该轨道将不会公开显示。如需在 API Explorer 中完成请求,您需要设置 id 属性的值,以便识别字幕轨道。

https://developers.google.com/apis-explorer/#p/youtube/v3/youtube.captions.update?
part=snippet

如需查看代码示例,请参阅 captions.update 方法的文档。

删除字幕轨

以下示例展示了如何删除字幕轨。该示例包含以下步骤: