前言
开始讲之前先解决大家看到这个标题时心里的3个疑惑:
- 视频剪辑不是用Adobe的软件就可以做了吗?
- 为什么要用Serverless?
- 如何写代码做视频剪辑?
首先说说哪些视频剪辑场景是Adobe等软件无法完成的
大家平常接触到的视频剪辑通常都是使用Premiere,AE等这类专业工具来完成视频剪辑。他们能完成一些复杂的效果,比如做宣传视频,广告视频等。
但有些企业在某些业务场景下是期望能批量且自动化的完成视频剪辑。
比如以下几种场景:
- 假设学校期望能在学生上完网课之后马上呈现所有学生学习过程中的精彩视频,配上学校的logo和宣传语等,让学生一键分享自己的成果。假设有1万个学生,需要为每个学生制作独一无二的视频,所以需要批量且自动化的完成1万个不同的视频剪辑。
- 某次营销活动中,需要为不同的用户生成不同的头像视频来吸引用户参与。每个用户的头像都是独一无二的,生成的视频也是独一无二的,用户可能成千上万,因此自动化完成是必须的条件。
- 网红运营公司期望能给所有主播生成统一的营业视频。可能有100个主播,专门找一个人剪辑100个视频好像勉强能接受,但如果每周都要剪一次不同的视频呢?所以自动化,批量和可定制化的剪辑就成了主要需求。
以上的场景中有三个特点:
- 批量
- 自动化
- 可定制
对于符合以上特点的场景,是传统的视频剪辑工具或者模版化的视频处理软件无法轻松完成的。
再来说说为什么用Serverless
因为视频剪辑这样的业务有几个特点:
- 使用时段集中。
- 计算量大。
单独购买高规格的服务器利用率很低,买便宜的服务器计算能力又跟不上。
因此Serverless按量计费的特点,以及高性能的计算能力,完美匹配了这样的需求场景。
既能达到100%的利用率,又能按量使用它的高性能计算能力。
同时,Serverless拥有多变的可编程环境,可以使用熟悉的编程语言,灵活性很高。
最后说说如何写代码做视频剪辑
本文章提到的所有视频剪辑的功能,都是用FFmpeg这个工具,所以先给大家讲讲什么是FFmpeg。
FFmpeg是一个用来做