tencent cloud

云点播

动态与公告
产品动态
公告
产品简介
产品概述
产品特性
产品功能
产品优势
应用场景
解决方案
专业版
云点播专业版简介
快速入门
控制台指南
开发指南
购买指南
计费概述
计费方式
购买指引
账单查询
续费说明
欠费说明
退费说明
快速入门
控制台指南
控制台介绍
服务概览
应用管理
媒体管理
资源包管理
License 管理
实时日志分析
实践教程
媒体上传
如何将点播的媒体文件进行智能降冷
媒体处理
分发播放
如何接收事件通知
如何进行源站迁移
直播录制
如何进行自定义源站回源
直播精彩剪辑固化至云点播 VOD 指引
如何使用 EdgeOne 分发云点播内容
开发指南
媒体上传
媒体加工处理
媒体 AI
事件通知
媒体分发播放
媒体加密与版权保护
播放频道
访问管理
下载媒体文件
应用体系
错误码
播放器 SDK 文档
概述
基本概念
产品功能
Demo 体验
免费测试
购买指南
SDK 下载
License 指引
播放器教程
含 UI 集成方案
无 UI 集成方案
高级功能
API 文档
第三方播放器插件
Player SDK Policy
服务端 API 文档
History
Introduction
API Category
Other APIs
Media Processing APIs
Task Management APIs
Media Upload APIs
Media Management APIs
Event Notification Relevant API
Media Categorization APIs
Domain Name Management APIs
Distribution APIs
AI-based Sample Management APIs
Region Management APIs
Data Statistics APIs
Carousel-Related APIs
Just In Time Transcode APIs
No longer recommended APIs
Making API Requests
AI-based image processing APIs
Parameter Template APIs
Task Flow APIs
Data Types
Error Codes
Video on Demand API 2024-07-18
常见问题
移动端播放问题
费用相关问题
视频上传问题
视频发布问题
视频播放问题
Web 端播放问题
全屏播放问题
数据统计问题
访问管理相关问题
媒资降冷问题
相关协议
Service Level Agreement
VOD 政策
隐私政策
数据处理和安全协议
联系我们
词汇表

如何为视频添加字幕

PDF
Focus Mode
Font Size
Last updated: 2024-11-11 16:29:08
云点播支持为 转自适应码流 输出的 HLS 视频添加(或删除)多种语言的标准字幕文件。播放时,可以切换选择不同语言的字幕进行显示,以提升观看体验。
使用流程包括两个步骤:对媒体文件添加字幕对媒体文件关联字幕
为便于描述,本文假设如下具体场景:对 FileId(1397757888586312345)的 转自适应码流模板 ID(10) 输出的文件添加中文(zh)和英文(en)字幕,使得播放该文件时,可以选择添加的中文或英文字幕进行显示。

一、对媒体文件添加字幕

此步骤实现将字幕添加到 FileId(1397757888586312345)的媒资中,并得到字幕 ID。下一步将使用该字幕 ID 进行字幕关联。
云点播提供两种方式为媒体文件添加字幕:上传字幕和智能识别自动生成字幕。

上传字幕

上传已有的字幕文件,上传成功后自动添加字幕信息到媒资。支持两种方式上传:控制台上传、服务端 API 上传。

控制台上传

1. 登录 云点播控制台,进入目标应用的音视频管理页面,对需要处理的媒资单击管理。



2. 单击字幕信息 > 添加字幕。



3. 上传所需要的字幕文件,并编辑好语言类型字幕流名称(用于播放器展示),单击确定。



4. 得到中文、英文字幕 ID 分别为 qFXJrv 和 PPGQep。




服务端 API 上传

1. 调用服务端 API 修改媒体文件属性,输入参数 AddSubtitles 指定需要上传的字幕:
"AddSubtitles": [
{
"Name": "demo_zh.vtt",
"Language": "zh",
"Format": "vtt",
"Content": "V0VCVlRUCgowMDowMDowMC4wMDAgLS0+IDAwOjAwOjAyLjA0MArkvaDlpb3lkJfvvJ8KCjAwOjAwOjAyLjEwMCAtLT4gMDA6MDA6MDQuOTUwCuaIkeW+iOWlve+8jOiwouiwou+8jOS9oOWRou+8nwoKMDA6MDA6MDQuOTgwIC0tPiAwMDowMDowNi45MDAK5oiR5Lmf5b6I5aW944CCCg=="
},
{
"Name": "demo_en.vtt",
"Language": "en",
"Format": "vtt",
"Content": "V0VCVlRUCgowMDowMDowMC4wMDAgLS0+IDAwOjAwOjAyLjA0MApIb3cgYXJlIHlvdT8KCjAwOjAwOjAyLjEwMCAtLT4gMDA6MDA6MDQuOTUwCkZpbmUsIHRoYW5rIHlvdSwgYW5kIHlvdT8KCjAwOjAwOjA0Ljk4MCAtLT4gMDA6MDA6MDYuOTAwCkknbSBmaW5lIHRvby4K"
}
]
2. 接口输出示例(省略了其他字段),从中得到中文、英文字幕 ID 分别为 qFXJrv 和 PPGQep。
{
"Response": {
"AddedSubtitleSet": [
{
"Id": "qFXJrv",
"Name": "demo_zh",
"Language": "en",
"Format": "vtt",
"Url": "http://123.vod2.myqcloud.com/vodgzp123/1397757888586312345/subtitles/qFXJrv.vtt"
},
{
"Id": "PPGQep",
"Name": "demo_en",
"Language": "en",
"Format": "vtt",
"Url": "http://123.vod2.myqcloud.com/vodgzp123/1397757888586312345/subtitles/PPGQep.vtt"
}
],
"RequestId": "90b40581-bf44-4455-a238-c8fe614c20ca"
}
}

智能识别自动生成字幕

通过 音视频内容识别,自动生成字幕并添加字幕信息到媒资。使用流程包括:准备 音视频内容识别模板任务发起结果获取,要点如下:

1. 准备音视频内容识别模板

支持两种方式创建模板:控制台创建模板及服务端 API 创建模板。
1.1. 控制台创建模板
1.1.1. 登录 云点播控制台,进入目标应用后,单击媒体处理设置 > 模板设置 > 智能识别模板,单击创建智能识别模板。



1.1.2. 支持选择“语音全文识别”输出源语言字幕文件,或选择“语音翻译”输出目标翻译语言的字幕文件。以下截图场景为将源视频语音内容识别并翻译为目标语言字幕文件。



1.1.3. 创建后,在模板列表可以看到新建的模板 ID 为 102270。



1.2. 服务端 API 创建模板
1.2.1. 调用服务端 API 创建音视频内容识别模板,输入参数 AsrTranslateConfigure 指定语音翻译任务参数:
"AsrTranslateConfigure": {
"Switch": "ON",
"SrcLanguage": "zh",
"DstLanguage": "en",
"SubtitleFormats": ["vtt"]
}
注意,如果不需要翻译字幕,可以使用语音全文识别(AsrFullTextConfigure),指定生成视频源语言的字幕:
"AsrFullTextConfigure": {
"Switch": "ON",
"SrcLanguage": "zh",
"SubtitleFormats": ["vtt"]
}
1.2.2. 根据本文场景,我们指定语音翻译(AsrTranslateConfigure),接口输出示例(省略了其他字段),从中得到模板 ID(102270)。
{
"Response": {
"Definition": 102270,
"RequestId": "12ae8d8e-dce3-4151-9d4b-5594145287e1"
}
}

2. 任务发起

支持多种方式发起智能识别任务:
调用服务端 API
控制台发起任务流
上传时指定任务流
服务端上传
客户端上传
控制台上传
以上方式参考开发指南 任务发起。此外,您还可以直接通过控制台发起智能识别任务,参考如下:
2.1. 登录 云点播控制台,进入目标应用的音视频管理页面,选中要智能识别生成字幕的 FileId,单击智能识别。



2.2. 单击选择模板。



2.3. 选中要使用的识别模板然后单击确定。






页面会提示创建任务成功:



2.4. 在任务中心页面可以看到智能识别任务的任务 ID及任务状态。



当任务状态为已完成,则智能识别字幕已经成功,并且生成的字幕信息已经自动添加到媒资。

3. 结果获取

使用上一步任务发起得到的任务 ID,结合开发指南 结果获取,可以得到智能识别结果,位于 ProcedureTask 结构 里的 AiRecognitionResultSet(类型为AiRecognitionResult 数组):
Type 为 AsrFullTextRecognition 时,表示语音全文翻译结果保存在 AsrFullTextTask
Type 为 AsrTranslateRecognition 时,表示语音翻译结果保存在 AsrTranslateTask
AsrTranslateTask 示例:
{
"Status": "SUCCESS",
"ErrCode": 0,
"ErrCodeExt": "",
"Message": "SUCCESS",
"Progress": 100,
"BeginProcessTime": "2024-10-16T12:21:04Z",
"FinishTime": "2024-10-16T12:21:47Z",
"Input": {
"Definition": 102270
},
"Output": {
"SegmentSet": [
{
"Text": "您好吗?",
"Translation": "How are you?",
"StartTimeOffset": 0,
"EndTimeOffset": 2.04,
"Confidence": 100
},
{
"Text": "我很好,谢谢,您呢?",
"Translation": "Fine, thank you, and you?",
"StartTimeOffset": 2.1,
"EndTimeOffset": 4.95,
"Confidence": 100
},
{
"Text": "我也很好。",
"Translation": "I'm fine too.",
"StartTimeOffset": 4.98,
"EndTimeOffset": 6.9,
"Confidence": 100
}
],
"SegmentSetFileUrl": "http://251000800.vod2.myqcloud.com/6c0f30dfvodgzp251000800/397dbd234424135347904691234/75a7a19e-abaa-4af4-affb-04e76b3bc9bd.txt",
"SegmentSetFileUrlExpireTime": "2024-10-19T12:21:44.525Z",
"SubtitleSet": [
{
"Id": "qFXJrv",
"Name": "zh",
"Language": "zh",
"Format": "vtt",
"Url": "https://123.vod-qcloud.com/vodgzp123/1397757888586312345/subtitles/qFXJrv.vtt"
},
{
"Id": "PPGQep",
"Name": "en",
"Language": "en",
"Format": "vtt",
"Url": "https://123.vod-qcloud.com/vodgzp123/1397757888586312345/subtitles/PPGQep.vtt"
}
]
}
}
上面示例可以看到生成的中英文字幕 ID 分别为 qFXJrv 和 PPGQep。
任务成功时,生成的字幕信息已经自动添加到媒资。

二、对媒体文件关联字幕

支持两种方式对媒体文件关联字幕:控制台关联字幕和服务端 API 关联字幕。前者只支持对已经生成的转自适应码流输出文件关联字幕,后者同时支持对存量和增量文件关联字幕。

控制台关联字幕

1. 登录 云点播控制台,进入目标应用的音视频管理页面。对 FileId(1397757888586312345)媒资单击管理 > 字幕信息 > 编辑。






2. 单击确定后,页面右上方弹出操作成功提示。即表示关联字幕成功。

服务端 API 关联字幕

包括对存量文件和增量文件关联字幕。

1. 对存量文件关联字幕

对已经生成的转自适应码流输出文件关联字幕,请调用服务端 API 关联媒体字幕,输入参数示例如下:
{
"Action": "AttachMediaSubtitles",
"Version": "2018-07-17",
"FileId": "1397757888586312345",
"Operation": "Attach",
"AdaptiveDynamicStreamingDefinition": 10,
"SubtitleIds": ["qFXJrv", "PPGQep"]
}

2. 对增量文件关联字幕

发起 转自适应码流 任务时,在转自适应码流任务输入参数里指定字幕 ID 列表:MediaProcessTask -> AdaptiveDynamicStreamingTaskSet -> SubtitleSet
输入参数 MediaProcessTask 示例如下:
{
"AdaptiveDynamicStreamingTaskSet": [
{
"Definition": 10,
"SubtitleSet": ["qFXJrv", "PPGQep"]
}
]
}
任务完成时,转自适应码流的输出文件即关联了字幕。

三、播放效果

关联字幕成功后,播放视频时可选择不同语言的字幕展示,参考效果如下图:





Help and Support

Was this page helpful?

Help us improve! Rate your documentation experience in 5 mins.

Feedback