ylinwind.

视频生成服务基本流程

字数统计: 367阅读时长: 1 min
2020/01/31 Share

视频生成服务基本流程

PHP

1.将生成任务携带请求信息一起打入生成队列
2.直到当前任务在队列中被消费并且生成成功后返回生成成功信息及生成好的信息地址

GO

1.循环去读取队列信息
2.读取到每条队列信息后将队列中的数据发送到python服务进行视频的生成

Python

1.获取视频帧数
2.将每一帧信息发送到Node服务去生成每一帧图片
3.去除背景视频音乐
4.处理音乐时长,音乐淡入淡出
5.合并每一帧图片成为视频,合并背景视频,合并音乐

tips:处理方法使用ffmpeg插件来实现
extra:处理视频封面封底暂未实现,虽然ffmpeg可以做但是是针对于计算机系统层面做的处理,实现后是可以在系统上看到视频是由封面的,但是用户大多需求是发送微信,qq等社交需求,在类似这上面会被处理,看不到封面。后面又做处理让前面指定帧数固定全部显示封面,也无所需的封面效果。计划先了解类似平台处理归责再进行开发。

Node

1.接受每一帧图片信息构造一个html字符串
2.生成图片(puppeteer)
3.上传cdn
4.返回生成完成的图片地址

基本流程图

CATALOG
  1. 1. 视频生成服务基本流程
    1. 1.1. PHP
    2. 1.2. GO
    3. 1.3. Python
    4. 1.4. Node