引言
随着4G网络的普及以及5G网络的展开,单位流量越来越便宜,人们从而能在碎片时间内通过移动网络毫无压力的观看视频内容。抖音在2018年春节突然火爆,全民都在刷抖音,据悉,抖音(包括海外版的TikTok)用户日产生短视频近百亿。一般来说,用户上传的短视频会自动加上对应短视频App的水印Logo,我们今天就来聊一下视频处理,首先介绍一下视频基本概念和视频处理所用的API、工具。
视频基本概念
-
什么是视频?
一组图片以给定的速率(例如 30 张图片/秒)在人眼前翻过,人的视觉就会产生一种图片在动的感觉,小时候动画片的制作也是基于这个原理,从这个角度讲,视频可以理解为以一定速率运动的一组图片的集合。 -
帧率
每秒播放的频数,fps(frames per second),拍摄的帧率和播放的帧率一般保持一致。比如,电影或者电视剧以30fps拍摄,然后以30fps播放。对于高速运动的赛车比赛,为了让观众看清赛车到达终点的场面或者两辆实力很接近的选手到底谁赢了,会以高帧率拍摄(比如60fps),然后转成30fps来回放播放,这样就会产生慢镜头,从而让观众看清赛车越过终点那一刹那的完整情形。 -
码率
每秒传输的bit位,bit/s,对应到带宽。有几点需要注意一下:- 并不是画面越清晰要求的带宽就一定越大。对于在线课程类视频(比如,吴恩达的机器学习课程),高速运动的画面很少,画面之间的像素很多也都是一样的(白板背景),即使是1080p视频,带宽也不会占用太多。1080p在线课程类视频会比1080p汽车赛事类视频占用的带宽少。进一步的,1080p在线课程类视频可能还比720p汽车赛事类视频占用的带宽还少。
- 动态的码率要好于固定的码率。视频存在部分画面间变化不大、部分画面间变化较大的情形,若用同一码率,则会使得画面间变化不大的浪费了带宽,画面间变化较大的损失了画质。
- 码率的设置需同时考虑移动手机端环境和画质情况。首先,对于移动手机端,很少需要1080p的视频,720p、480p已经足够。其次,移动手机端对流量仍然比较敏感,为了看1080p电影视频(假设平均需要4Mb/s的码率)