威九国际

400-123-4657
行业资讯
您当前的位置: 首页 > 新闻动态 > 行业资讯

视频压缩圈子里常见的几大误区视频分辨率决定一切论

时间:2024-06-22

首先我来谈谈我在视频压缩圈子里发现的一些常见误解。

视频分辨率就是一切

首先,视频分辨率只是代表像素大小,为了在更大尺寸下保持画质,需要更大的信息量,而信息量取决于码率。当视频分辨率高但码率低时,视频就会出现马赛克。如果视频分辨率低但码率高,那只是白费力气,模糊的地方还是会模糊,有点像木桶效应,能装下多少水,取决于最短的木板,而不是最高的木板。

如果想让视频更小,请使用压缩包

其实视频和音频都是高压缩文件,视频编码和音频编码是针对音视频的特殊压缩规则,一般来说,压缩包常用于压缩文本文件,视频或音频部分可以直接插入,无需压缩,也节省了压缩时间,对于一些文本和配置文件,压缩包效率更高。

哪种视频格式的压缩效率最好?

这个问题相信很多人都很熟悉,可能很多人都问过。啊,我为什么知道呢?因为我一开始就问过这个问题。那时候我不太了解,最让我困扰的是MP4有很多种类型。主要原因是我那时候没有视频编码和视频封装的概念,所以经常把这两者搞混,其实这是不对的。不管是MP4、MKV、AVI、RMVB、FLV等等,它们都只是容纳视频、音频、字幕文件的容器,对视频大小、压缩效率起不到关键作用。比如360P的MKV画质是不是比1080P的MP4高呢?不一定。视频压缩的真正过程是视频编码,也是真正决定后期视频质量的。一种类型的容器可以容纳不同编码的视频,容纳的越多,兼容性就越好。这也是我们说MKV兼容性好的原因。 因为它可以容纳各种编码的视频和音频。总之,以后你再看到有人说MKV的画质比MP4高,你就回吧。

码率是影响画质的直接因素

前面我们提到,分辨率本身需要与码率结合起来看,但高码率就真的意味着高质量吗?

其实不然,不同的视频复杂度不一样,码率自然也就不一样。比如单画面流视频(整个视频都是静态画面)的运动几乎为零(有小的波动),压缩率就比较高。但第一人称或者第三人称射击游戏都是以视角为中心,整个背景都是高速运动的,压缩率就极低。两者存储所需的码率自然在不压缩的情况下是相同的(不压缩的情况下分辨率决定的像素总数完全决定了码率)。压缩率相差这么大,压缩所需的码率自然就相差甚远。这也是为什么有的1080P视频在1000kbps下就能达到高画质,而有的视频在6000kbps码率下还是有色块的原因。所以以后在本地录制游戏素材时,首选应该是CQP模式,而不是码率模式。

这里需要再次引入一个概念,QP(量化值),可以理解为视频编码器(比如x265或者NVENC)在编码过程中对每一帧质量的数字评价。也就是每一帧都有一个量化值,这个值越小,质量越高(细节越丰富)。是直接评价客观质量的工具,但是这个工具只能在压缩过程中使用,属于相对质量。在x264中,当QP小于18时,一般认为人眼无法区分压缩前后的质量,当QP大于30时,压缩后的视频大概率出现色块。综上所述,真正决定视频质量的参数是QP而不是码率,但是视频压缩后无法得到QP(有的视频信息会保存CRF值和最大最小QP,有的则没有),只能通过码率来判断,但是有些硬件编码器的压缩率并不高。 例如NVENC的HEVC编码的压缩率有时不如x264编码器的AVC编码,所以在判断质量的时候,一定要用肉眼亲自评估。

这也是为什么很多显卡厂商吹嘘自家产品录制的游戏画面码率高,其实也正是因为压缩率低,才必须使用超高码率存储(1080P 往往是 20000kbps),其实如果码率太低,根本就不堪入目。

补充:

为什么上面强调客观画质呢?因为机器无法分辨出我们眼睛认为质量低下的细节。客观画质是指视频中的大部分细节都被认为是需要保留的细节。比如你输入一个色块很多的视频,将QP设置为18,视频中依然会充满色块,因为机器在未压缩的视频中已经把输入视频的色块当做原始细节保留了下来。高码率很大程度上就是为了保留这些色块,也就是机器无法真正区分出色块(不过色块可以在视频压缩前通过滤波器进行处理,这里就不讨论了)。

和码率一样,QP压缩也分为可变和不可变两种。不可变的是指每一帧的QP都是一个固定的值——CQP模式(恒定量化/质量模式)。可变的是指每一帧的QP都会以给定的QP值为核心由编码器自行决定——CRF模式(质量模式)。CRF比CQP模式应用更广泛。同时CRF模式可以更高效的利用人眼对暗区、高速运动画面不敏感的特点,降低这些场景的视频质量,而把节省下来的码率应用到人眼更敏感的静态、亮区场景上,在人眼感知更强烈的场景中提升视频质量,是一种非常讨喜的做法。

视频录制码率是什么_录制视频中的码率是什么_录制视频码率越高越好

接下来我们来谈谈视频编码

视频是指以电信号的形式捕捉、记录、处理、存储、传输和再现一系列静态图像的各种技术。如果给你一个相机,让你拍摄一段视频并发布到网上,那么这台相机在拍摄时就会学会记录画面、编码视频和打包视频。然后你才能把这个打包的视频发布到各大网站上。下面主要讲视频编码。

为什么要进行视频编码?在录像机发明之前,人们是用图片来记录信息的。后来,人们基于“视觉暂留现象”又称“余辉效应”,发明了每秒播放24帧的胶片电影。胶片电影属于模拟信息范畴,所有的光学信息都直接记录、存储在胶片中,需要的时候,用放映机直接读取播放即可,完全不用考虑视频编码(物理编码)的问题。但是,随着视频的数字化,这种由图片集合生成的视频就凸显出一个问题:数据量太大。

你可以想象一下,如果有一个90分钟的视频,每秒播放24张图片,也就是24帧,那么整个视频就包含了129600张图片,如果平均每张图片只有300K,那么整个电影就占用了37G。要知道,每帧300K张图片组成的视频最多也就是哔哩哔哩的360P画质,哔哩哔哩上一部360P的电影大概是250M(AVC编码),保守估计也是300M,所以37G大概可以存放123部这样的电影。

所以人们为了压缩视频体积,就对视频进行编码。所谓编码,可以理解为制定一套压缩规则,让我只将编码压缩后的视频保存在本地,然后通过解读压缩规则,也就是解码,将其还原为编码前的视频,从而达到视频数据量的压缩。节省了存储空间和网络带宽,让视频更容易在网络上传播。随着编码的不断升级,视频的压缩率也越来越高,从最初的MPEG-2压缩率25:1,到现在的H624(AVC)102:1,再到现在压缩率接近H264两倍的H265(HEVC)编码,可以说与原来相比,现在的压缩率真的是高得惊人。

其实我对视频压缩技术只是浅尝辄止,所以只能分享一些个人理解和不成熟的见解,供大家参考。虽然没有触及核心知识,但用这些知识处理一些视频问题还是没问题的。对我来说,视频压缩技术大致可以分为帧间压缩和某帧的压缩,其他的我还不太懂,所以就不随便说了。

首先,一个视频是由很多帧组成的,现在你可以把一帧想象成一张图片。但是如果每一帧都是一张完整的图片,那么视频体积就会非常大。因此,视频中只有一部分帧是完整的图片,我们称之为I帧。这种帧不需要其他帧作为参考,就可以完整地表达出它所有的信息,所以也被称为关键帧。I帧占用的空间最大,我们上面提到的37G的电影里所有的帧都是I帧,这也是它有这么大信息量的原因。

还有一些帧,称为P帧,这些帧包含的画面不完整,只记录了自己与参考帧之间的变化,只有以前面的P帧或I帧为基数,加上自己记录的变化信息,才能表达出自己所有的信息。如果视觉解码后一帧的信息是这样的“I帧:000000,P1:00000,P2:000001”,那么编码后记录的信息就变成了“I帧:000000,P1:比I帧少一个0,P2:比P1多一个1”,这样P帧就通过只记录变化信息,有效减少了自身包含的信息量,从而压缩了视频的大小。当然,真正的I帧不可能只有六个零,这只是比喻,实际上I帧记录的数据要大得多。

帧的最后一部分称为B帧,同样不是完整的画面,也需要借助其他帧作为参考才能完整地表达其内容。但是B帧比P帧节省空间,因为P帧只能参考自己前面的帧,再以后面的帧作为参考。而B帧不仅可以参考自己前面的P帧或I帧,还可以参考自己后面的P帧和I帧。因此B帧的信息量最少,但同时又不能作为其他帧的参考,也不适合用于直播,因为B帧需要后面的帧作为参考,而使用B帧的直播需要本地编码时间足够长才能发送到服务器,否则B帧无法解码。通常出现在一些对时效性要求不高但压缩码率极高的应用场景中,比如钉钉直播,延时高达20s。

总结来说,I帧记录的信息最全,画质最好最无损,不需要参照就可以表达自己,也可以作为P帧、B帧的参照,但同时也占用很大的空间。

P帧记录的信息量比I帧少,画质也会稍微损失,需要参考前面的P帧或者I帧来表达自己的全部内容,有点寄生性,但同时又可以参考其他的P帧和B帧进行自我描述,占用空间较少。

B帧记录的信息量最少,画质损失也少,需要参考前后的P帧或I帧来表达全部内容,基本记录的内容不多,无法参考任何帧,占用空间最少。

这就是帧与帧之间的压缩,简称“帧间压缩”。

那么我们简单说一下框架内的信息压缩

上面是一组连续的图片,现在我们只有一个画面,一个静止的帧,我们要想办法把这个画面所包含的信息量压缩到最小,这就是帧内压缩。

视频录制码率是什么_录制视频中的码率是什么_录制视频码率越高越好

首先我们可以把这个图片划分成一个个网格,这个网格也叫宏块,这个是进行压缩的基本单位。我们拿H264编码来举例,H264的宏块永远都是16像素x16像素大小。如果我发现有些网格被划分成了一些纯色,变成了纯色块,那么我就不用去记录网格里每个像素的信息了,我可以用一种信息去概括整个网格,这样既节省信息,又不损失画质。但是如果这个网格刚好是一个图形和另一个图形的边界,那么我就只能老老实实的把网格里的信息记录下来了。因为我得到的规则是,要么概括一个宏块的全部内容,要么详细描述一个宏块的全部内容。这样做会导致压缩不够。

H265规定宏块的最小尺寸是8X8,最大是64X64。这样在面对一些图形的中心点的时候,我们不需要用到多个16X16的宏块,而是直接用一个超大的宏块进行统一汇总。而边角部分只需要用一些小的宏块进行细节处理,所以我的压缩效率更高。

当然,以上只是对视频压缩原理的简单介绍,肯定存在一些不足之处,如果想进一步了解,可以前往

内容很详细,图片很生动。

目前各大主流网站的视频编码多为H264,但H265普及的趋势势不可挡,目前B站所有移动端均已采用H265编码的片源,1080P最高码率已降至2000kbps,常规码率维持在1500kbps左右,1080P高码率最高码率已降至3600kbps~4000kbps,网页端也可自主选择HEVC源、AVC源

再说一下这个37G的“画质电影”,如果用H264编码的话,只需要362.74M的存储空间,如果用H265编码的话,所需空间可以低至239.41M。(为什么比上面的预估高呢?因为目前线上网站上的360P都是低画质360P,目的是为了节省带宽,这里统一采用高质量压缩标准)

视频封装简单来说就是把编码后的视频、音频、字幕放到一个容器里,这个容器的类型就是视频格式,比如现在主流的MP4、AVI、MKV都是存放视频和音频的容器,视频封装格式对文件大小影响可以忽略不计,MP4是最知名、兼容性最好的格式,MKV因为可以包含多个音轨、多个字幕,主要用于网络资源共享。

我是一个喜欢收集各种视频的滑板车手,经常会面临存储空间不够的问题,如果你也有同样的问题,我可以给你几个解决办法。

1. 如果你从视频网站下载视频,可以先在网上预览一下,判断一下实际的最高画质,然后再下载。特别是一些比较老的视频,不要太迷信所谓的“画质”,它只是无意义地占用你的硬盘空间而已。

实际最高品质指的是视频主体的最高品质。如果一段 1080P 的视频是由一段 480P 的无字幕视频加上一个字幕文件压缩而成的,那么从 480P 到 1080P 唯一改变的就是字幕的清晰度,其他大部分内容都没有影响。这种情况下,这段视频的实际最高品质就是 480P。

注意!以上内容的前提是“字幕只占视频内容的一小部分”,如果视频中的特效、字幕较多且复杂,应该切换画质看看是否影响体验,以实际最大画质为准。

2.尽量使用H265编码。如果你下载的视频是H264编码的,那么在重新编码视频的时候,可以使用CRF模式压缩。我个人比较喜欢用shanencoder(早些年的格式工厂现在已经不用了),经过调教之后其实还是很好用的,成功地在命令行和GUI之间保持了很强的平衡,也支持各种软硬件编码以及HDR编码。关于编码时间,就看你CPU运算能力的大小了,CPU越强,运算时间越短,CPU越弱,运算时间越长。

3、要扩充硬盘容量,网上买机械硬盘+硬盘盒是个不错的选择。但要注意不要买太便宜的硬盘,容易坏。另外要注意硬盘盒的大小,目前机械硬盘分为3.5寸和2.5寸,一般小尺寸的硬盘盒比较便宜,大尺寸的硬盘盒比较贵,不知道为什么,如果经济条件不允许,就买个SATA转USB的转换器,还要有外接电源给硬盘供电。

4、有条件的话可以买个磁带机,用磁带存储。磁带存储的优点是容量极大,目前一个磁带盒的最大容量已经超过200TB,民用级虽然达不到这个要求,但是也很便宜。缺点是磁带是顺序读取的,只能从一头读到另一头,类似小时候听磁带,如果想跳过某一部分,只能快进,不能直接跳过。建议用来存储一些冷门数据。或者作为备份存储。不过磁带很安全,数据恢复的可能性也很大,寿命很长,可以存储一些目前不需要的重要数据。

截至目前,本文有5703个字

地址:湖北省武汉市武昌区街道徐家棚街武汉市武昌区友谊大道佳馨花园1号楼   电话:400-123-4657   传真:+86-123-4567
版权所有:Copyright © 2002-2024 威九国际 版权所有      ICP备案编号:鲁ICP备11031796号     网站地图
威九国际(中国)官网首页登录入口