第二章——重新认识视频

如果一个个网页打开麻烦,这里有全篇的PDF


又是一个“老生常谈”的东西了,每当有人在抱怨在线视频平台画质差的时候,我都恨不得直接上去给他们科普,当然不去的原因就是很浪费精力并且人家也不想听你扯那么多就是啦。如果你只认识MP4这个“视频格式”的话,那么接下来的内容可能对你来说会比较复杂,当然也会刷新你对“视频”的认识。

如果你经常在国内的视频平台看视频,那对下面的情节肯定不陌生。

在选“画质”的时候我们肯定能选最高的就选择最高的,但你仔细观察也会发现,这些平台“画质选项”都不太统一,唯一相似的地方只有一串数字跟了一个P再加上“标清”“流畅”“高清”“蓝光”,当然还有开会员才能用的最高画质。

不妨来看看一个一般手段打不开的外国视频网站。

这个网站好像就没什么汉字了。那这个数字可能大家都知道,分辨率嘛。分辨率就是这个视频有多少个像素(Pixel),也就是它的长×宽,比如1080p的视频就是1920×1080,它每一帧就有1920×1080个像素点。那后面的p呢,这个可不是分辨率的单位,这个p是逐行扫描(progressive scanning)的意思,相对的还有一个“i”,这个是隔行扫描(Interlace Scanning),隔行扫描是以前在那种“大屁股电视”上用的,我家正好就有一个,这种老电视用的是显像管成像。隔行扫描和逐行扫描的最主要区别就是“p”是一次性地从第一行刷新到最后一行,“i”一般是先刷新奇数行,再刷新偶数行,在当年的技术上来说比较省带宽。隔行扫描一般用在以前的老电视上,还有一些电视台可能还在用,但现在基本很少见了,所以我们现在看到的视频99%都是逐行扫描,如果隔行扫描的视频放到逐行扫描的设备上就会形成交错,在运动的画面上便会造成“拉丝”。

说回分辨率,国内视频平台总喜欢在分辨率贴个“xx清”,其实大部分纯属扯淡,你觉得高清是多少分辨率呢,1080p?对但也没完全对,在电视标准下,常见的高清(High Definition,简称HD)分辨率是1080p、1080i、720p,当然1080p也可以叫做FHD(Full High Definition)。那蓝光是多少分辨率,欸,还有个“HD”叫UHD(Ultra High Definition,超高清),只有在3840×2160以上的分辨率才能叫UHD,而2160p即为4K分辨率(k就是横向排列有几千像素,p就是纵向排列有多少像素的逐行扫描,不用过于追求标准),而蓝光指的是蓝光光盘(Blu-ray Disc,简称BD),跟分辨率标准没有多大关系。国内视频平台喜欢标蓝光可能是大部分BD都是1080p的分辨率,这样看来,别说蓝光,国内大多数视频平台连“高清”都分不清,其他的更是乱标。


我们打游戏的都知道,除了分辨率,还有一个重要参数就是帧率(Frame Per Second,简称和单位都是FPS),帧率越高,游戏画面也就越流畅。在一个视频中,一秒钟有多少张图像经过就是这个视频的帧率,由此我们可以发现视频其实就是一张张图片构成的。如果有一张1920×1080 24bit图片,那它的容量大小就是它的分辨率×色深,换算为MB就为1920×1080×24/8/1024/1024≈6MB。视频的容量大小就是它的分辨率×色深×帧率×总时长,一个1秒60帧的1080p 8bit位深,以RGB为色彩模型的视频的容量就是1920×1080×8x3×60×1/8/1024/1024=355.95703125≈356MB(横向像素×纵向像素×视频位深×RGB三平面×帧率×时间;除以8,是因为1Byte=8bit,除以两次1024是换算成MB)。看到这你可能会非常惊讶,就1秒的视频居然要300多MB,我们一般在视频平台缓存一集1080p的动漫也才500MB出头呀,这个时候“编码”的重要性就体现出来了。不管是图片、音频、还是视频,如果不经过压缩它们占用容量是非常巨大的,于是就产出了各种各样的算法对图片、音频、视频进行压缩,这就是编码,反应到视频、音频上的参数就叫码率(Bitrate,单位一般用Kbps或者Mbps),码率直接决定了视频的大小,因为视频压缩以后容量的计算方式就是“总码率(视频+音频)× 总时间 ,可以说码率越大,视频容量就越大。同时,码率也一定程度上的决定了视频的播放质量,10Mbps的1080p视频可能就比1Mbps的4k视频的画质要好。当然也没必要追求太高的码率,当码率高达一定程度时,人眼已经很难分辨出区别了,比如同样分辨率的同个视频,50Mbps和20Mbps观感上就差不多了,甚至一些处理过的10Mbps的视频在观感上会比50Mbps的视频好,所以我们看待事物不能太过极端,要从多个角度的去看待。

分辨率、帧率、码率,这三个其实就是视频的三大基本参数,上面我在计算视频容量的时候,我还提到了一个东西,色深(Color Depth,单位bit)。色深,色深,色深就是色彩的深度,也就是颜色的精细度,一般应用在“数字图像”上面(虚拟的哟)。而我们日常用到的是位深(Bit Depth,单位也是bit),即为一切将模拟信号量化或将数字信号模拟化的设备的精度(是实体哟),我们平时接触较多的就是显示器上的8bit和10bit了,而显示器的位深一般表现为色彩过渡中有几个阶梯。

素材来源:硬件茶谈 https://www.bilibili.com/video/BV1dp4y1S7ow/

可以发现10bit要比8bit的精度高,色彩过渡更自然,更加平滑;而8bit精度低,容易出现像梯田一样的色彩断带。

同样,在看视频时,8bit的视频由于精度较低,相比10bit更容易看出色带,这点在“二次元”的动画中尤为明显。

当你用BT下载种子资源后,你会发现大部分下载到的文件不是我们常见的.mp4,而是一个我们没怎么见过的.mkv。先别急着将这些视频文件转码成.mp4,我们先来“改个口”。MP4是视频格式对不对,对,但只对了一半,准确来说应该叫封装格式。其实封装格式是一个“大箱子”,这个箱子里面可以装很多东西,你可以放点视频进去啊,也可以放一些音频啥的,还可以放很多很多不同的字幕,还有章节之类的东西,甚至你也放点字体上去,单独加张图片也可以。这个就像我们在火车站看到的铁轨,我们称之为轨道(track)。

如果你想看视频,就可以让视频这辆火车从视频轨道开过来,它就可以显示在你面前。如果一个封装文件装有两辆“视频火车”,也就是两条视频轨,我们来看看会发生什么。这样我们就可以看出在一个视频文件中,可以存在多个视频,当我们要播放一条视频时选择其所在的视频轨就可以了。


如果你看懂了视频轨,那其他轨道也就很好理解了。

  • 音频轨,音频也是会有多音轨的,只不过一般一个视频文件中只有一个视频轨和一个与之对应的音频轨。

  • 字幕轨,字幕有“软硬之分”。“硬字幕”就是已经在视频之中了,成为了视频的一部分了。“软字幕”也有两种,一种是外挂字幕,字幕单独为一个字幕文件,视频播放时再引用;另一种就是内嵌字幕,和视频轨、音频轨之类的封装在一个视频文件之中。下图就是内嵌字幕,你可以看到有很多种语言。

  • 除了轨道,视频文件还会划出一部分区域来存储标签,这跟音乐文件是一样的,像视频的封面就可以单独存储在视频的分辨标签,在文件夹现实的时候就不是视频的缩略图了,而是我们单独设置的视频封面图。除了封面,像上面的视频分段点,我们一般称之为“章节”也是储存在视频的标签中。

当然,一个视频文件中还会有其他类型的轨道,常见的只有视频、音频、字幕轨道,理论上各种类型在视频中都可以存在很多条轨道,只不过一般我们见到的封装格式中只有一条视频轨和一条与之对应的音频轨。


我们知道.mp4和.mkv一样是封装格式,只是个“箱子”,是层“皮”,那mkv和mp4具体的区别呢。主要是装的东西上就有区别,上面我有提到为了将视频容量缩小,就诞生了各种各样的算法来压缩容量,而压缩出来的东西也有格式叫编码格式,更多的是叫做媒体格式,而封装格式上的区别就是它们在对媒体格式上兼容的区别

素材来源:极客湾 https://www.bilibili.com/video/BV1nt411Q7S6/

而mkv可以封装几乎所有的媒体格式,你就说强不强大。这里你需简单地记住两个常用视频编码格式,H.264/AVC和H.265/HEVC。H.264和H.265是由ITU-T制定的标准,AVC和HEVC是由ISO制定的标准,这两个标准制定方不同,但技术内容都差不多,一般都认作同一种标准。区别是在于,同一个视频用H.265来编码理论来说体积会小很多,但同时对硬件的性能要求会更高,老设备可能会播放不了。但不代表HEVC编码的视频就一定比H.264编码的好,一般是看自己的需求。

当然,数字媒体这几十年发展下来,产生了很多专业知识,知识也十分分散和复杂,我也是用我自己的经验在视频的方面上简单总结了一些重要的东西。简单掌握了这些,你会更容易理解下面几章的内容,能通过参数进行选择。当然,关于视频我还有很多没有讲到,如果你想更进一步地了解视频相关的知识,可以看看我写这章所参考的内容,其他一些内容将会在以后的第五章——播放中讲到。

内容参考:
视频:
https://www.bilibili.com/video/BV1nt411Q7S6/
https://www.bilibili.com/video/BV1KE411H7BJ
https://www.bilibili.com/video/BV1kE411c7yZ/
https://www.bilibili.com/video/BV1pE411M7Pi/
https://www.bilibili.com/video/BV1dp4y1S7ow/
百科&文章:
https://www.zhihu.com/question/24205632/answer/648608086
https://baike.baidu.com/item/%E9%AB%98%E6%B8%85/1142
https://baike.baidu.com/item/4K%E5%88%86%E8%BE%A8%E7%8E%87/7295219?fromtitle=4k&fromid2659257&fr=aladdin
https://baike.baidu.com/item/FPS/3227416
https://baike.baidu.com/item/%E8%A7%86%E9%A2%91%E7%A0%81%E7%8E%87/10008023
https://zhuanlan.zhihu.com/p/144207333
https://baike.baidu.com/item/%E5%B0%81%E8%A3%85%E6%A0%BC%E5%BC%8F/7015654
https://vcb-s.com/archives/2726