求教HandBrake视频压缩色域的问题
dwing吧
全部回复
仅看楼主
level 3
Yourank 楼主
一直习惯自己用Aegisub设置字幕样式,然后用MKV Toolnix封装后收藏电影。播放器是PotPlayer+madVR。
偶尔有些蓝光原盘或者1080P体积比较大的资源就自己动手压制,多数是用MeGUI,每次都要写AVS觉得有点麻烦,而且MAC上就HandBrake方便一些开始尝试HandBrake。
今天发现HandBrake压出的画面颜色太深,很多细节都丢失了。
TAB查看信息发现HandBrake压缩的视频多了 范围:TV 色域:bt709 传输:bt709 色彩空间:bt709
对比测试下小丸工具箱压的视频也有这几个信息。MeGUI压缩的则没有,且色彩正常。
尝试调整PotPlayer设置,PotPlayer设置:视频-色隙/属性-输出色彩空间:RGB32这样设置的话色彩明显加深,丢失细节。因之前个人觉得RGB32色彩深度会好一些,所以选了这个32位深度的色彩空间。(比较玄学,看不出什么差异,但心理上觉得这个好些)
设置为自动的话,播放时输出为:NV12色彩正常。
虽然问题已经可以解决了。视频-色隙/属性-输出色彩空间:自动选择 就能正常播放,问题应该是色彩空间不同播放时不能正常转换导致的。
但还是想请教,为什么会产生这样的问题,都是调用的x264编码器,是不同软件默认内置参数不同导致的吗?有没有解决的方法?用MAC压缩的话视频色域都成bt709了。MAC上用IINA看电影,可调节参数比PotPlayer少很多,那用HandBrake和小丸压的片子担心颜色都不对,MAC也没MeGUI可用。
上图色彩明显太深,细节丢失
请大神不吝赐教!谢谢。
2017年06月22日 19点06分 1
level 14
我估计是转成RGB时用了bt601,这类转换去让madvr做就行了,输出保持和源相同,一般为yuv420(NV12是yuv420的一种存储方式)。ps:不用理楼上那人
2017年06月24日 05点06分 7
感觉终于有人看懂问题了。谢谢回复
2017年06月24日 13点06分
@Yourank 10L那位讲的也是可能性之一
2017年06月24日 13点06分
@787633258 是的,肯定是MeGUI、HandBrake、小丸内核参数定义不一样,导致旗标不同。但是应该添加什么命令解决啊?不想让HandBrake和小丸添加旗标,和MeGUI一致就好。
2017年06月24日 14点06分
@Yourank 旗标没问题,问题在播放器
2017年06月24日 14点06分
level 12
楼上那人完全就是牛头不搭马嘴,在同一个屏幕上对比前后差别,你跟我说要校色?别搞笑了
2017年06月24日 07点06分 8
level 13
[咦]这个我不知道,不过百度网盘上看视频感觉色域真的问题很多,比如同一个视频不同组的RIP相差还是很明显的。
2017年06月24日 07点06分 9
我就是发现只有MeGUI压的片子,解码那一行只有:分辨率、格式:YUV420P,位置LEFT等信息。 HandBrake和小丸压出来的片子会多了,色域、传输、色彩空间三个信息。
2017年06月24日 13点06分
@Yourank 这个我就不太清楚了,MeGUI现在没怎么用,目前我一般是直接命令行或者间接用mediacoder调用设置好的参数,至于色域、传输和色彩空间强制bt709,至于色度抽样那里,一般都是420(少数444),位置一般是TV或者left。
2017年06月24日 14点06分
@Yourank [咦]楼主,楼下说到了这个问题关键点。
2017年06月24日 14点06分
level 8
感觉是pc range与tv range的问题。
蓝光节目的话,colorprim、transfer、colormatrix三个旗标都设为bt709肯定是没有问题的。
猜测potplayer设置输出RGB32的时候会多做一次YC伸张。(PS:所以说为什么不乖乖保持默认设置)
检查一下这些软件对x264中--range、--input-range两个参数的设定,再用mediainfo看看成品里有没有关于range的旗标,应该就能找到问题了。
2017年06月24日 11点06分 10
Mediainfo当中:HandBrake多了如下 Color range : Limited Color primaries : BT.709 Transfer characteristics : BT.709 Matrix coefficients : BT.709 MeGUI压的就没有这几个旗标。
2017年06月24日 13点06分
level 3
Yourank 楼主
我现在就是用AUTO不敢用RGB32了。PC上也可以变相解决问题。但是MAC好像就HandBrake方便些。而且MAC平台的播放器没有PotPlayer强大,很多东西不能设置,一看播放的颜色都是PC上PotPlayer用RGB32渲染的效果。色彩明显变深,细节丢失。
2017年06月24日 14点06分 11
[咦]色彩强制感觉很坑,有时候压出来都看不下去的,还不如直接自动。
2017年06月24日 14点06分
mac平台的话,考虑一下用mpv
2017年06月24日 16点06分
@787633258 在用IINA,基于MPV的。字幕功能稍微好些。
2017年06月24日 18点06分
level 1
这个一般是色域转换问题,要看母带是什么标准,然后要对应,片子一般都709的,都是420居多,如果选了422 444就有可能会这样。也不能直接转2020
2017年06月24日 18点06分 12
level 8
不同软件的x264默认参数不同。megui和mc的参数差很多,我亲自看过。
但这个是否是你遇到的问题的原因,我不知道。
2017年06月25日 13点06分 18
是的,肯定是默认参数的不同导致输出后的视频旗标不一致,指定渲染器的话就会色彩偏差。MeGUI、FFmpegYAG压出的和原视频一致。小丸、HandBrake、AdobeME都多了色彩空间、传输几个旗标。
2017年06月25日 14点06分
@Yourank madvr的渲染比较高端....我是用EVR的,看vcbs的教程说m比e的色彩好....这个好,就意味着不同。
2017年06月25日 14点06分
@零杀十一死 不是madVR的问题
2017年06月25日 17点06分
回复 Yourank :megui基本是裸跑的x264,传递的参数我看过。。。你用x264.exe跑一遍就知道哪个是对的了
2017年06月25日 17点06分
level 13
[汗]大家在楼主帖子里面讨论就讨论,楼主只是想找到问题的解决方法,大家有想法就自己各自阐述下吧。说的不好或者有所误解什么的,权当是抛砖引玉就好了。这个问题,我想很多RIP组都是遇到过的,希望有在贴吧RIP组的大神来这里指导下。
2017年06月25日 16点06分 22
level 6
既然是1080p应该都是tv level即limited 16-235,和bt.709。handbrake加了这些
正确的
旗标应该也没问题(除非影响播放器读取旗标以设定输出的某些规则)
问题在于播放器的yuv to rgb规则设置,因为你比较画面深浅都是以你看到的播放器渲染的为准,如果对比时改了设置则自然不同
在显示器上看的话自然是pc level,0-255。过程是先yuv[16,235] to r'g'b'[16,235],再r'g'b'[16,235] to rgb[0,255],有明确的转换和处理公式去保证颜色一致
你说【发现handbrake压出的画面太深】,既然是太深也就是说跟其他非handbrake压出的来比较了,那么比较时所用的播放环境(显卡等)和播放器输出设置是否完全相同?然而你又说pot默认的自动选择就能正常,所以不会是【非pot自动选择所看的handbrake压的】比【pot自动选择所看的非handbrake压的】要深?总之要确认比较时的输出设置是一致
可以avspmod里比较
2017年06月25日 16点06分 23
视频存储归存储的事(yuv,跟设备无关的颜色空间),输出又是另一事(rgb是跟设备相关的颜色空间,视频输出要yuv to (特定种类的设备的)rgb)
2017年06月25日 16点06分
通过各种折腾的设置,我找到了解决的方法,MeGUI、MediaCoder、FFmpegYAG应该默认的参数是 range=PC,这样的视频不论PotPlay怎么设置颜色都没有问题,但HandBrake默认是TV,且无法更改。下面我详细的记录了不同的测试情况,小丸工具箱也找到了解决方法
2017年06月25日 17点06分
level 8
还有就是建议截取源画面对比,而不是实画面。
实画面是madvr渲染之后的画面,和原始画面可能有不同。
x264编码的视频解码后是nv12没毛病。喂给madvr渲染也没毛病。
2017年06月25日 16点06分 24
level 3
Yourank 楼主
一、前言
因用小丸工具箱压缩《这个杀手不太冷》,发现色彩变深,细节丢失开始研究不同视频压缩软件的设置。
找了《桃花旗袍》MV做测试。
二、软件情况
1、MeGUI 色彩正常无多余旗标
2、MediaCoder 色彩正常无多余旗标
3、FFmpegYAG 色彩正常无多余旗标
4、小丸工具箱 色彩不正常 多出范围TV 色彩空间 bt709 两个旗标
5、HandBrake 色彩不正常 多出范围TV 色域、传输、色彩空间 bt709 四个旗标
MeGUI旗标:
解码:1920X1080p,格式:yuv420p,位置left
仅有三个信息,与原视频一致
HandBrake旗标:
解码:1920X1080p,格式:yuv420p,范围:tv,色域:bt709,传输:bt709,色彩空间:bt709,位置left
多出了四个信息
多出的四个信息与播放器的应该就是引起色彩偏差的根源。虽然在Win平台下通过播放器设置就可以解决问题,但是MAC平台的播放器设置功能弱,先天色彩信息就有问题的视频在MAC下播放就无解了。想找到能彻底解决问题的方法,而不仅仅是设置播放器,于是开始各种折腾。
三、解决思路
观察MeGUI设置界面,Misc选项卡中有关于range、colorprim、transfer、colormatrix的设置。调整此处设置会在下方代码预览处出现的相应参数。
不同软件此处参数定义不同,导致压缩出的视频色彩不一致。考虑在不同软件中加入如下参数解决问题
--range auto --colorprim undef --transferundef --colormatrix undef
四、测试结果
(一)、小丸工具箱
1、--range auto
无效,多了范围TV 色彩空间bt709 两个旗标
2、--range auto--colorprim undef --transfer undef --colormatrix undef
有效,无多余旗标,与原视频一致,无论播放器设置的色彩输出空间如何,色彩均不会发生偏差
3、--range pc
有效,多了范围PC 色彩空间bt709 两个旗标
(二)、HandBrake
1、--range auto
2、--range pc
3、--range auto--colorprim undef --transfer undef --colormatrix undef
均无效!!!
这是得有多顽固,而且HandBrake的命令写法和一般的x264GUI不一样,默认命令的格式都是:range=auto这样的写法,上述命令按照这样的写法也完全无效!
五、结论
HandBrake无论怎么添加参数(也可能是我命令写的不对,有知道该怎么写的朋友请赐教),压出的视频范围都是TV,而且通过小丸工具箱的测试可以看出,色域、传输、色彩空间为bt709都是正确的,没有问题。蓝光原盘也是按照这个标准制作的。
关键引起色彩偏差的是范围的锅!TV的色彩范围小于PC,导致色彩变深。
Win平台下不想用MeGUI写AVS,偷懒用小丸工具箱也挺方便的。参数设置完后,加入--range auto --colorprim undef --transfer undef --colormatrix undef即可。
这样压出的片子,与绝大多数片源一致,不会有多余的旗标信息,而且不论播放器如何设置不会有色彩变化。
色彩对比:
正常:(原片、MC、MeGUI、FFmpegYAG、小丸加入完整参数)
不正常:(范围为TV)
大图可以看到头发完全没细节。
2017年06月25日 17点06分 25
level 3
Yourank 楼主
Win平台下如果使用PotPlayer,通过设置就可以避免这样的问题,各种播放器功能都比较全面。保持自动设置就可以避免。之前用MAC看有些视频觉得过于浓艳,还以为是本身MacBook屏幕特性,应该是那一部分片子压制时色彩范围是TV。Mac的播放器可设定项少得可怜,遇到这类视频就无解了。
多谢各位的耐心解答和回复,提供了解决思路,谢谢各位!
2017年06月25日 17点06分 26
大多数视频都是tv range啊,理论上和原视频设置成一样不会有问题,不一样要转换
2017年06月27日 13点06分
@sikele2237 我下的1080P资源多数都没有Range旗标啊,少数有的在MAC上看色彩都很深。
2017年07月01日 15点07分
level 7
直接在MISC里加--colorprim bt709 --transfer bt709 --colormatrix bt709就行了,但您说的不强制709就会出现什么细节丢失。。。。。这个就YY了。细节还是跟你的编码参数设置有关系。
2017年07月03日 13点07分 28
感谢回复,其实不是编码器的锅,是播放器不正确设置导致的。编码加入旗标应该是正确标准。另外色差不是不同机器播放有色差,是同一台电脑播放不同编码软件压的片子发现有色差。最终知道是播放器的锅。。。
2017年08月17日 07点08分
level 7
还有个问题,你的源本身色彩就是不正确的。。。。。。源是601 你强制709改变不了什么。你说下的很多片源都没有BT709标识是因为压片人决得没有必要,比如4K源大多都是BT2020规范那你转换时肯定得强制规范为BT2020以避免损失。你要拿1080得原盘RE成4K大小再设成BT2020就是无用功。大多720P 1080P得RIP源根本就是五花八门,很多都还是DVD得源,那当然没709强制了。最后关于色彩你拿100个显示器只要不是效过色的,那就可能是100个色彩呈现。。。。。。
2017年07月03日 13点07分 29
楼主就是想转换成720p
2017年08月18日 11点08分
1 2 尾页