上篇介绍了云视频剪辑配齐工具的技术架构,对整个项目的构成有了大致的了解,本文将介绍在实现该系统的前端技术难点及解决方案。
该项目基于集团内部的平台实践,前端框架使用 Angular 实现,所以代码示例为 Angular 框架语法。
上传视频
常见的上传视频方式有两种:用户通过表单打开文件选择器选择需要上传的文件和直接拖拽文件到 Web 页面的指定区域,Web 应用检测可得对应视频文件的内容。
选择文件上传
伪代码实现:
1 | <input multiple type="file" accept="video/mp4" (change)="handleVideoMaterialUpload" /> |
1 | import axios from 'axios'; |
在上传视频文件前不仅要检测视频文件的类型、大小等基础信息,还要对视频文件进行可播放性检测,并且在检测过程中获取视频文件时长、封面等再后续流程中使用到的信息(该部分实现请看下文章节),检测同过后添加到解析队列。