国语视界

 找回密码
 立即注册
查看: 6163|回复: 11

[视频技术] 关于视频压制的一些讨论

[复制链接]

245

主题

2004

帖子

2291

积分

管理员

大洋
21392
阅读权限
200
发表于 19-7-30 11:41 | 显示全部楼层 |阅读模式
自从体验过3D电影在VR设备里面的震撼表现后,现在三台电脑开着疯狂压片,但是也有一些疑惑的地方想和大家一起探讨一下。

1、半宽半高和全宽全高的视频在观看体验上到底有什么区别?半宽半高都知道横向或纵向分辨率减半,但是现在各个PT都只压半宽半高,不压全宽全高,除了兼容性方面的考虑外,是不是因为半宽半高和全宽全高在观影体验上没有区别。我个人实际测试下来的感觉是左右半宽有时候有点像斗鸡眼的感觉,要把两个眼睛往中间挤,感觉不太舒服,有时候又感觉左右半宽和左右全宽观看起来没啥区别,这种主观测试受心理影响很大,所以,有没有大佬讲讲到底有什么区别,又都是什么原理。目前VR设备的清晰度普遍一般,无法从画质上去评价。

2、网上很多评论,用GPU压制是邪教,但是GPU压制比纯用CPU压制,速度至少提升8倍。x264/265都只能调用CPU压制,用x264压左右全宽,用preset slower,8小时起步,在dvdfab里面调用amd vce引擎,最多1小时搞定。肉眼上看,画质也没啥大区别。有没有大佬从原理上详细说一说到底是画质真的差了几个档次,还是心理作祟。

3、码率控制的几种方式,CRF/CQP/2-PASS,看网上的评论,crf应该是称霸天下了,但是我看wiki的片子,几乎还是在用2-pass,我实在受不了cpu压制的速度,想用gpu加速,但是不管是intel的quick sync还是nvidia的nvenc还是amd的vce,都不支持crf,只支持cqp和1-pass,1-pass逼格是在太低了,我就想问问cqp要怎么设置才合理。

4、如何克服装逼心理,非得用x264/265,非得去看压制参数,而不以实际的观看体验为唯一评判标准
实际上在前两年的世界视频编码器大赛里面,已经是华为、金山、腾讯的编码器在霸榜了,不过他们都拿去编在线视频了,我们搞不到啊

0

主题

85

帖子

55

积分

列兵

大洋
209
阅读权限
10
发表于 19-7-30 19:01 | 显示全部楼层
2.码率一高遮百丑,足够的码率下GPU和CPU也差别不大。限定的码率下,CPU一般是比GPU好。看不出一般就俩原因,一码率足够高,二观察技巧不够好。跟木耳分不清无损和有损差不多

3.2pass估计人家能看懂1pass的数据吧。顺便nvenc是支持2pass的。

4.看不懂参数不会压片但是依旧在胡乱评点江山的瑟瑟发抖。参数只能看出大概,而且参数看不出预处理。而且高参自己眼睛/设备看不出不是很尴尬吗。事实上x264已经很久没活跃开发了,霸榜也无碍,个人私用里高质量的也就x264/x265,剩下的编码器要么差,要么贵或者买不到。他们评判的详细结果看不到,只有三种测试的平均值,民用一般讨论的压片只涉及其中一种最慢的测试。

5.以上讨论均基于在保留肉眼可见细节下最大程度降低码率的压制。

点评

左右全宽的视频3840×1080,用h265 cqp=26压下来,码率才3M,对比了一下15M的264 2-pass,我可能是瞎子,没看不出啥区别  发表于 19-7-30 19:17
手头没有N卡,只有A卡和IU,这两个都只支持CQP/CBR/VBR  发表于 19-7-30 19:15
回复 支持 反对

使用道具 举报

26

主题

2760

帖子

7407

积分

旅长

大洋
119183
阅读权限
70
发表于 19-7-31 00:17 | 显示全部楼层
本帖最后由 whzlwd 于 19-7-31 00:19 编辑

一、理论上用足够好的专业硬件,编解码也可以压制出很好的画质,现在视频特效都是离不开硬件编码的。但是,通用硬件最大的硬伤就是驱动很难做到兼容性和画质的最佳平衡。说白了,专业硬件一般人基本用不起,所以,根本不用去纠结硬件问题。

二、因此,唯一的选择还是用软编码比较好,只要编码器和压片参数调制的好,画质也就很好。观看体验是第一评判标准,参数其实不必过于纠结。因为,过于纠结参数,那显示设备,编解码设备,播放设备等等都要与参数结合考虑,这就是和纠结硬件一样的自寻烦恼了。

三、当然,如果你对画质不是要求很苛刻,同时又要兼顾时间效率,那你无论用硬件压制还是软件压制,效果也都不会很差的,至少一般人看不出差别。
回复 支持 反对

使用道具 举报

0

主题

85

帖子

55

积分

列兵

大洋
209
阅读权限
10
发表于 19-7-31 09:45 | 显示全部楼层
whzlwd 发表于 19-7-31 00:17
一、理论上用足够好的专业硬件,编解码也可以压制出很好的画质,现在视频特效都是离不开硬件编码的。但是, ...

1.专用电路的编码参数局限大,细调空间小,在不纠结画质/码率+需要高速产出大量产品的时候是个高效的选择,高质量那块人家专业蓝光制作的后期压制HEVC/AVC的加速卡本质也是数块CPU。

2.深表同意,自己看不出就行了。能看得出而且在日常观影中注意到的人是少数。
回复 支持 反对

使用道具 举报

245

主题

2004

帖子

2291

积分

管理员

大洋
21392
阅读权限
200
 楼主| 发表于 19-8-1 19:01 | 显示全部楼层
我发现我国的古装武打片用crf特别难压,压出来的码率巨大无比
回复 支持 反对

使用道具 举报

9

主题

2474

帖子

1030

积分

营长

大洋
505
阅读权限
50
发表于 19-8-2 01:08 | 显示全部楼层
1 压3d的视频,其实无所谓全还是半,在播放的时候,清晰的质量决定还是在码率上来说,一个片子码率足够,参数给的也合适,无论他是半还是全,都可以满足你的播放需求,但是3d现在退潮了,可能半宽已经成为了一个固定的标准,一些家用级别的设备大多是支持此标准为主。所以你在压的时候如果可以保证质量的情况下,半宽就可以了。
2 对于压制,并不区分gpu和cpu,只是压制所调用的滤镜可能又使用gpu和cpu的区别,目前主流的压制大佬们流行avs和vs的两种压制模式。在解码工具上也是主流的265和264的2种,3d属于较老的一种操作模式,使用264的编码器会用的多点,4k是新流行的视频模式,相对用更先进的265解码器压制的更多。但是无论是那个解码器去操作视频源,他们在加载视频源的滤镜上都又共同点,大多压制高手喜欢用cpu的视频滤镜去加载视频源,因为264老,十来年了吧,所以滤镜丰富,因此3d的视频用264压制的,很多都是用lwl ff2 lam等滤镜处理,相比4k的视频处理,265编码器支持的cpu处理滤镜几乎相同,但也又类似dg这样的gpu滤镜流行其中,当然此类压制一般不会用dvdfab之类的入门软件操作,因为无法有效的定义高校的参数。
3 码率控制上,必然是越高越高,但是如果盲目的追求高码率也会出现码率过剩的问题,导致一些镜头的过剩浪费体积,因为压制本身的意义就是用京可能高的画质换取经可能小的体积。所以crf孕育而生,他的特点就是对平缓的镜头码率经行大规模压缩,当然这个压缩成都是和你的参数又关系,多运动爆炸等高转速的镜头给与经可能多的码率补偿来保证镜头看上去流畅和清晰。这也就是1pass和2pass他们慢慢被淘汰的原因,因为很多小组用这个方式压并非是喜欢,而是为了控制体积,很多2pass的压制技巧都是先跑一次crf,保证体积接近目标的情况下在过一次2pass来控制体积。如果用2pass当方式压,在一些大场面镜头下又可能会出现码率不足的马赛克镜头,暗场也会因为码率问题出现色带等等问题,这就是如果不刻意控制体积的话,很多人会选择crf来压制的元婴。
4 最后一个问题  压制其实不是为了装逼,很多压制人可能是为了经可能的保持影片的质量,这里你可以自己做个比较,比如你用dvdfab之类的软件压制一个电影,可能体积只有4g,还包含音轨的体积。在普通的电脑或者是电视上播放可能看不出区别,这个时候你可以尝试 在4k或者是更高分辨率下在观看,看看画质被放大了2倍后,是不是还能保持锐利清晰,不会又马赛克或者是色带的出现。而且你用的dvdfab也是用的265和264的编码器,区别就是他们的参数可能更适合大众电脑去操作,因为高参数下,很多家用电脑可能跑不起,这也就是你说的gpu比cpu快8倍,其实快的不是gpu和cpu,而是他们所用的参数的根本区别。而无论是gpu压制还是cpu压制,在同等高参数下,速度其实没有多大区别。
他们只不过是调用的压制滤镜的区别,至少我在处理4k资源的适合,用流行vs脚本加载cpu滤镜的速度和avs脚本下调用gpu滤镜的速度,没有多大区别,更不会又8倍之说。
回复 支持 反对

使用道具 举报

274

主题

4866

帖子

6万

积分

炊事员

大洋
315594
阅读权限
120

灌水之王热心会员论坛元老王者至尊

发表于 19-8-2 19:51 | 显示全部楼层
上面说的差不多,说说我个人的理解,作为补充。

用过N卡的nvenc,感觉可调参数太少,效果差强人意。对于动态场景多,暗部细节多的影片,用GPU出来的与蓝光源差距比较大。印象比较深的,曾经压过《香港制造》(有兴趣可以试试),走楼梯,做梦,片尾字幕底板等动态画面,暗部细节有色斑和畸变,加高码率也不能消除。用x265,x264软压,随便加些控制参数,这些问题就解决了。
如果,这部影片收藏用,还是用时间换画质,免得出现缺陷无法弥补。因为压制完1部影片,不可能从头到尾都检查一遍。保险起见,还是软压为好。

至于crf还是qd的选择,这有一篇知识库文章,推荐给你

CRF是恒定质量的编码方式,与恒定码率(CBR)是相反的。通常,为了获取恒定质量的编码,我们可以通过用同样的大小去压缩每一个相同类型的帧,即,扔掉相对来说相同数量的信息。用专业术语来说,就是使用相同的量化参数QP。这个量化参数QP定义了从一个像素宏块中丢掉多少信息。通常这将导致整个视频序列的码率不稳定。
不过,这里所说的CRF比恒定量化参数要复杂一点儿。CRF会用将每一帧的压缩不同的大小,为了让主观的质量感受差不多,会用不同的QP。他是通过把运动也考虑进来做到这一点的。在编码中,如果Qp=18,则每一帧都是QP=18,当然根据帧的类型不同会有一些微小的波动,忽略之。设置CRF=18的时候,对于运动比较大的场景,会把QP设得更高一些,对于运动比较比较不剧烈的帧,会降低QP。这会导致比特率的分配随时间变化不同。
例如,下图展示了两个不同的视频(BBB big buck bunny和TOS tears of steal),用不同的等级去编码(17和23),分别用恒定量化参数CQP和恒定质量CRF模式



我们看到,CRF的线总是比CQP的要低,意味着采用CRF模式的时候,可以省比特数,而采用CQP的时候,稍微会浪费一点文件大小。


作者的测试结论,要达到与crf同样质量,cqd要体积更大。

我压片的目的就是控制体积,保证画质。如果硬盘如果大,没准我就不压片了。所以体积是我考量的1个重要参数。既然作者测试cqd费体积,我就直接舍弃了,没做更多测试。

其实也挺无奈的,如果有速度快,保证画质的的免费工具,我肯定会优先采用。

以上观点,不一定对,姑且听之。
回复 支持 反对

使用道具 举报

9

主题

2474

帖子

1030

积分

营长

大洋
505
阅读权限
50
发表于 19-8-2 23:05 | 显示全部楼层
gumfifa 发表于 19-8-2 19:51
上面说的差不多,说说我个人的理解,作为补充。

用过N卡的nvenc,感觉可调参数太少,效果差强人意。对于动 ...

压制在我理解里就是画质和体积的一个控制对换过程,通常都是在保持最好画质的前提下经可能多的压缩体积,所以压制的速度一般不在压制人员的考虑范围之内,机器好的同参数下可能快点,机器差的同参数下可能慢点,记得有人说过,为了压一个动画,机器24小时不关机,压一周时间,所以楼主说的8倍速度什么的,那都是一般比较不追求画质的人的对比方式,也是比较外行的对比参考方法。
如果楼主想入坑,哈哈建议看点专业压制的教程,学习对比画质和压制参数的细微差距,来压自己需要的完美的视频吧
回复 支持 反对

使用道具 举报

0

主题

68

帖子

8

积分

列兵

大洋
234
阅读权限
10
发表于 20-2-18 14:43 | 显示全部楼层
一头雾水沙沙沙沙
回复 支持 反对

使用道具 举报

1

主题

4605

帖子

1868

积分

营长

大洋
2320
阅读权限
50
发表于 23-5-27 17:43 | 显示全部楼层
虽然我也压压片,但这样复杂的技术讨论还看不懂。
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

快速回复 返回顶部 返回列表