视频基础

一、像素

通常说的像素,一般指图像含有多少个像素点。

720P: 实际像素是1280x720,相乘结果921600, 即有921600个像素点,也就是常说的100万像素

1080P:实际像素是1920x1080,相乘结果2073600,即有2073600个像素点,也就是常说的200万像素

二、图像占用空间大小计算

公式:图像像素数 * 图像位深 / 8 = 占用字节。一个像素点占用8位。

比如:一张图片像素为:1024x1024,位深32位,则图像大小为:1024*1024*32/8=4194304byte = 4KB  1024*1024*32/8=4MB

三、分辨率

分辨率是指设备输出分辨率或叫屏幕 分辨率,即屏幕上横竖有多少个容器点,每个容器点用于容纳一个像素。说人话就是:屏幕的像素点总和。比如某手机分辨率为720*640, 给它播放1080P的视频,根本不能发挥1080P的优势。

常见的视像分辨率有352×288,176×144,640×480,1024×768

四、密度

每英寸包含多少个像素点,单位PPI(pixel per inch).

根据公式,就可以计算出,这个5.8寸的手机的PPI是多少。PPI超过300就可以算是视网膜屏了,肉眼已经分辨不出像素点来。

四、码流(data rate):

是指视频文件在单位时间内使用的数据流量,也叫码率,经过视频压缩后每秒产生的数据量,而压缩是去掉图像的空间冗余和视频的时间冗余,是视频编码中画面质量控制中最重要的部分。同样分辨率下,视频文件的码流越大,压缩比就越小,画面质量就越高。

码流越大,说明单位时间内取样率越大,数据流的精度就越高,处理出来的文件就越接近原始文件,画面质量越好,画质越清晰,要求播放设备的解码能力也越高。

对应ffmpeg中的就是 c->bit_rate。单位kb/s 或Mb/s。

在开发过程中,如果一帧图像的尺寸设置成:352*388,20帧/秒, 352*388*20=2 731 520b/s(压缩前), 所以压缩后 bit_rate = 400 000, 则画面清晰,且录制的视频也比较小。如果尺寸设置成1280*720,则bit_rate需要设置大一些,比如设置成800 000, 此时画面才会清晰,如果依然设置成400000,则画面非常模糊,像打马赛克一样。 当尺寸改大,且bit_rate设置大时,录制的视频文件也会偏大。

六、视频文件大小的计算

视频文件大小:(音频码率+视频码率)*时长/8 。  前面单位是kbit, 体积单位也是kb

如果一个视频码率为3Mbps, 音频码率为512Kbps,时长是90分钟(5400秒),那么整个文件大小就是:      (3+512/1024)* 5400/8=2362.5MB=2.307G

一个视频文件的大小为5.86M,播放时长为3分7秒: 则该文件对应的码流就是:5.86 * 1024 * 1024 * 8 / (3 * 60 + 7) =262872.95657754bps=262.873Kbps=0.263Mbps

通过上面的分析,可以看出,码率对视频文件的大小,影响很关键呀!

七、帧速率

帧速率(画面的实时性、流畅性),指每秒钟刷新的图片的帧数。也可以理解为图形处理器每秒钟能够刷新几次。对视频内容而言,帧速率指每秒所显示的静止帧格数。要生成平滑连贯的动画效果,帧速率一般不小于8;而电影的帧速率为24fps。捕捉动态视频内容时,此数字愈高愈好。

八、比特率

比特率是指每秒钟传送的比特(bite)数。单位为bps(Bit Per Second)。比特率越高,单位时间传送的数据量越大。比特率表示经过编码(压缩)后的音、视频数据每秒钟需要用多少个比特来表示。

九、解码

你可能感兴趣的:(视频基础)