黄子健,吴瑞萍,伍晶晶
(广州城市理工学院,广东 广州 510800)
在数字化时代下,短视频飞速爆火,更多用户投身短视频拍摄当中。该项目方向在于简化用户剪辑过程,提供多样的模板、场景效果,使用户能处于时间占比更高的想法“爆炸”之中,创造出更多的奇思妙想。利用目前前景良好的AWS云平台作为部署平台[1],AWS优越的计算服务、高可靠的存储服务及CDN服务都能为我们减少开发难度。
传统剪辑软件门槛高,技术要求都颇高,操作较为复杂,新手入门剪辑视频困难偏多。在线剪辑比较依赖后台处理效率,一般会存在处理延迟较高的问题,用户流失量明显偏多。当前时代发展飞速,视频新媒体产业正在发生重大变革,传统视频剪辑方式已经开始“力不从心”了。因此在移动互联网、云计算的背景下,建立一个方便、快捷、能弹性扩展性能的视频剪辑系统的需求变得迫切起来。
本项目提供将视频剪辑和云平台结合起来的视频云剪辑服务,既提供了高效的视频效果处理功能,又给用户提供了流畅的视频文件观看效果以及剪辑后的视频文件的长期存储的功能。
根据中国广视索福瑞媒介研究(CSM)重磅发布的《2021年短视频用户价值研究报告》数据显示,我国10岁及以上网民观看短视频的比例高达90.4%,短视频在媒介生态中的地位持续攀升。从具体的使用时长来看,日均观看短视频超过60分钟的用户占比达56.5%,人均每天使用时长升至87分钟,预期观看短视频时长增加的用户占比升至57.9%。同时,短视频成为用户碎片化时间的黏合剂,“晚上睡觉前”观看的用户占比上升最快,在2021年升至61.3%;20.7%的短视频用户选择在“看电视时”看短视频。由此表明,短视频已经深度渗透,全面融入用户生活。短视频发展迅猛,参与制作的创作者们要想获得更好的流量关注,需要通过短视频营销来变现,不仅视频内容要更实用、更有深度,视频的质量更要有所保证。在短视频迅猛发展下,更多用户有了视频剪辑的需求,而市面上的剪辑软件大多操作过于复杂,新手想要入手短视频制作市场过于不易,鉴于上述情况,本项目便做了简易版的视频剪辑平台。
该项目采用Web前端当前最流行的框架vue,结合近几年逐步发展起来的AWS云平台,并利用其高效性等优点,致力于在制作简单剪辑软件的基础上,更快地去提高系统的性能,提高用户的体验感,且在国家“三网融合”的大背景下,利用基于分布式、有弹性、可扩展的云计算平台发展传统电视媒体适应当前的媒体视频新媒体产业已经成为一个大趋势。
视频剪辑主要体现在视频内容的包装上,包括片头片尾动画,片花演绎,字幕、logo的花式、滤镜的增加以及多个视频内容的合成。目前流行的视频剪辑方式分为两种:
(1)脱机剪辑。利用本地实验视频剪辑工具对视频内容进行剪辑、美化。这种处理方式,通常需要对视频剪辑工具了解得比较透彻,并且处理效率低下。
(2)在线剪辑。在线剪辑平台,多是一些收费平台,并且处理效率和效果依赖于后台服务器的处理能力。
根据项目背景来看,我们需要完成的大致研究任务如下:如何对视频内容进行包装,如何在使系统简单可行的情况下提高系统的性能。
对视频内容的包装:包括片头片尾动画,片花演绎,字幕、logo的花式、滤镜的增加、单个视频的剪辑以及多个视频内容的合成。
提高系统的性能:将视频剪辑和云平台结合起来的视频云剪辑服务,可提供高效的视频效果处理功能,给用户提供流畅的视频文件观看效果以及剪辑后的视频文件的长期存储的功能。
设计依据:本项目结合当前市场上已有的视频剪辑技术来发掘一种新的设计思路。市面上的脱机剪辑技术,由于是在本地对视频内容进行编辑、美化,其速度较在线剪辑技术快得多,而本项目使用云平台来作为项目的后台,其速度对比使用传统架构搭成的后台速度更为快速,可以与脱机剪辑技术的速度媲美;在线剪辑技术多为简便的操作,更有利于用户使用,但是其效率偏低。鉴于此,本项目致力于打造简便高效的剪辑平台。综上,本项目是结合当前市面上已有的剪辑技术,取其精华、去其糟粕,采用更好更新的技术来设计的。
在概要设计的基础上,该项目的总体结构采用前后端分离的方式,前端开发的总体界面布局设计等采用了Vue框架,并结合VideoContext、WebGL技术实现实时视频剪辑处理和滤镜实时渲染。后端以Springboot框架为基础进行开发,与前端实现数据交互,并且结合了FFmpeg和多线程对视频文件进行剪辑处理。
确定了该项目的基本功能为处理视频来源(包括视频素材的收集、媒资数据导入、电视直播信号接入等,并对本地视频数据进行统一管理,采用ftp、 http、faspTM等多种标准或私有传输协议批量上传视频文件)、视频多格式转换(采用云转码的方式)、大容量存储(采用云计算平台的海量的视频数据存储)、视频剪辑(通过FFmpeg对视频进行逐帧处理,通过VideoContext对视频进行实时剪辑处理)、视频滤镜(使用ffmpeg和WebGL 3D绘图协议)、视频字幕添加(通过video.js给视频添加一个文本轨道)、视频上传(上传后的视频数据存放在AWS S3)、视频云计算平台架构的存储服务、计算服务和CDN服务。
本项目的前端采用vue-cli脚手架工具搭建项目,主界面设计上采用了左右结构的方式,左边是系统的功能,选择需要对视频进行操作的功能在右边显示。后端使用springboot搭建项目,用AWS云计算平台管理。
系统设计为可在任何IE8以上的浏览器环境下运行。
(1)前端使用VUE框架和ElementUI组件框架实现良好的页面交互。
(2)前端使用VideoContext实现视频剪辑处理,使用WebGL实现滤镜等视频效果的实时渲染。
(3)前端使用JavaScript原生API获取手机或电脑的语音设备,将录制的音频添加到视频中,如图1所示。
(4)后端使用AWS云平台作为云计算平台,并借助AWS实现视频文件的格式转换和安全存储以及视频播放时的类CDN处理(边缘站点和CloudFront)。
(5)后端通过SpringBoot框架,实现和前端的交互。将项目部署到目前流行的AWS云上,其高伸缩扩展性,使得项目运行稳定,降低了一定的开发风险。
前端使用VUE框架和ElementUI组件框架实现良好的页面交互,而VUE框架是目前最流行的前端技术框架,是一套用于构建用户界面的渐进式JavaScript的轻量级框架。其优点在于体积小,压缩后只有33KB左右;基于虚拟Dom,事先通过JavaScript进行计算,把最终的Dom操作计算出来对Dom进行优化的技术Dom预操作,具有更高的运行效率,提高了系统的性能;它基于MVVM模型,利用双向数据绑定和组件化为vue前端开发提供了良好实现。ElementUI组件框架是当前很流行的一套与Vue框架配合使用的桌面端组件库,我们使用它来对整个项目结构进行布局,能够使整个项目结构更加清晰明了。
项目前端结合VideoContext、WebGL技术实现实时视频剪辑处理和滤镜实时渲染。BBC的VideoContext是一种HTML5/WebGL 媒体处理和排序库,可以用于在网络上创建交互式和响应式视频,在前端实现视频剪辑处理。而WebGL(Web Graphics Library)是一种3D绘图协议标准,允许把JavaScript和OpenGL ES 2.0结合在一起。通过增加OpenGL ES 2.0的一个JavaScript绑定,WebGL可以为HTML5 Canvas提供硬件3D加速渲染[2],如图1所示。
这样就可以借助系统显卡在浏览器里更流畅地展示3D场景和模型[6],还能创建复杂的导航和数据视觉化。
后端以Springboot框架为基础进行开发,与前端实现交互;并且结合了FFmpeg和多线程对视频文件进行剪辑处理。多线程有利于提高CPU的利用率,更好地利用系统资源,缩短大量用户同时进行视频剪辑处理使用的时间。FFmpeg是一款非常实用的视频处理工具,可以用来记录、转换数字音频、视频,并能将其转化为流的开源计算机程序,借助FFmpeg的帮助文档可以解决许多问题。多媒体视频处理工具FFmpeg有非常强大的功能,包括视频采集功能、视频格式转换[3]、视频抓图、给视频加水印等。FFmpeg以其丰富的编解码库和强大的编码能力著称[4],目前几乎所有的主流多媒体播放器都是基于开源多媒体框架FFmpeg来做的,FFmpeg几乎覆盖了全部视频格式,可以轻易地实现多种视频格式之间的相互转换。例如,可以将摄录下的视频AVI等转成视频网站所采用的FLV格式。项目后台基于FFmpeg工具实现了根据参数自动化剪辑的功能,后端仅需了解相关的命令集,定义出不同功能的方法,接受前端发送的参数数据,通过CLI方式启动FFmpeg进行视频剪辑处理。相比强大的Pr视频剪辑软件,项目提供的视频剪辑系统能带来更便利的剪辑方式,获取更好的体验感。
视频剪辑系统部署和文件存储均选择AWS云平台上的服务,AWS云平台相比传统部署配置上更具有优势。传统模式下,企业建立一套IT系统不仅仅需要购买硬件等基础设施,还有买软件的许可证,需要专门人员维护。当企业的规模扩大时还要继续升级各种软硬件设施以满足需要。对于企业来说,计算机等硬件和软件本身并非他们真正需要的,它们仅仅是完成工作、提供效率的工具而已。因此,在这个时候云计算就有很大的利用价值。
视频剪辑系统设计中使用到云计算技术中的两种服务:EC2(Elastic Compute Cloud)计算服务和S3(Simple Storage Service)对象存储服务。
后台使用AWS EC2计算服务快速配置一台虚拟机,配合配置的Auto Scaling负载均衡组,搭建一个弹性的高可用、高并发架构[5],避免峰值流量高导致的服务器崩溃。设计架构如图3所示。
除此以外,视频文件存储使用AWS S3对象存储服务。AWS S3具有行业领先的可扩展性、数据可用性、安全性和性能。其能无限存储对象文件,每个对象文件大小最高可达5TB,满足所有视频的存储,并且AWS S3具有99.999999999%(11个9)的高持久性和99.99%的高可用性,保障了用户数据的稳定存储。
CDN分布式缓存服务有效降低了服务器压力,增强服务器的健壮性。后端结合FFmpeg软件实现后台自动化剪辑视频的功能,提升了用户的体验感。
Web网站形式往往比APP解决问题效率更高,视频剪辑系统将以Web网站形式为用户提供服务,无需下载APP,通过点击链接即可进行视频剪辑。互联网时代,抖音、快手等短视频软件盛行,全民纷纷开始拿起手机相机拍摄身边的“美”,积极投入其中分享快乐。项目意向是为用户提供一个能随时随地剪辑视频的平台,降低用户剪辑门槛,即刻玩转互联网。系统会实时同步网上有趣的滤镜模板,增加用户剪辑过程中的选择,提升视频的乐趣性。
当前互联网上短视频的流行,产生出更多的视频内容需求。视频后期剪辑处理工作能为短视频呈现出更好的视觉效果,使视频质量、流量显著提高。视频剪辑系统结合AWS云平台服务的优势,既在前端实现了视频编辑效果展示,实时展示给用户所见即所得的效果,利于提高用户的体验感,又能保障其文件数据。
该视频剪辑系统在短视频流行的大背景下运用也将更为广泛,且系统的剪辑和滤镜处理等技术丰富,与云平台结合的性能效率也更为出色,有极好的应用 价值。