方案概述
应用场景
该解决方案基于华为云函数工作流 FunctionGraph无服务器架构,利用开源FFmpeg的添加字幕功能,以硬字幕的方式帮助用户将字幕文件合入视频中。当用户上传视频文件以及配套字幕文件到对象存储服务 OBS桶中,会自动触发函数添加字幕,并将合成后的视频文件存储到OBS中。适用于如下场景:视频教学、视频广告、视频社交媒体等需要添加字幕的场景。
方案架构
该解决方案基于华为云函数工作流 FunctionGraph、对象存储服务 OBS等资源一键式部署,实现为视频添加字幕。解决方案架构图如下:
该解决方案会部署如下资源:
- 在函数工作流 FunctionGraph中创建一个添加字幕的函数和OBS触发器,实现将用户上传到OBS桶中的字幕文件及视频文件进行合成,并将带有字幕的视频转储到OBS桶。
- 创建两个对象存储服务 OBS桶,一个用于用户上字幕文件及视频文件,另一个用于转储添加字幕后的视频文件。
- 通过统一身份认证服务 IAM的委托功能,用于授权函数工作流 FunctionGraph访问OBS桶下载和上传文件。
方案优势
约束与限制
- 部署该解决方案之前,您需注册华为账号并开通华为云,完成实名认证,且账号不能处于欠费或冻结状态,如使用包周期部署确保余额充足。
- 须保证视频文件和字幕文件同名且同名文件有且只能为两个(文件名只能包含字母、数字、_(下划线)及-(中划线)),视频大小限制在100M及以内。
- 该解决方案经验证过的字幕文件有:srt、ass、ssa、vtt四种字幕文件格式,编码格式有:ASCII、UTF-8、UTF-16BE、UTF-16LE。
- 该解决方案经验证过的视频文件有:mp4、avi、mov、flv、wmv、mkv、mpg、mpeg、m4v、3gp、webm、asf、ogg,其中3gp类型视频支持的音频采样率为8000HZ。