请教视频压制问题!
本帖最后由 meitp 于 2021-11-28 11:44 编辑我想将UHD原盘的主视频进行压制,以减小储存体积。主视频的格式都是.m2ts。我采用的vpy脚本都是:import vapoursynth as vsimport mvsfunc as mvfimport havsfunc as hafimport vsTAAmbk as taaimport CSMOD as csimport nnedi3_resample as nnrsimport adjustcore = vs.get_core(threads=8)core.max_cache_size = 8000core = vs.get_core()src = core.lsmas.LWLibavSource(r"X:\XXXXX.m2ts", threads=1)src.set_output()
vs压制命令行模板都是:"vspipe.exe" --y4m "XXXXX.vpy" - | "x265-gcc-10-lite.exe" --y4m --level-idc 51 --crf 19 --uhd-bd --no-sao --me 3 --subme 3 --merange 57 --no-rect --no-amp --ref 4 --weightb --keyint 24 --min-keyint 1 --aq-mode 1 --aq-strength 1.0 --rd 4 --psy-rd 2.0 --psy-rdoq 1.0 --rdoq-level 2 --vbv-bufsize 50000 --vbv-maxrate 80000 --no-open-gop --rc-lookahead 80 --qcomp 0.6 --deblock -1:-1 --repeat-headers --colorprim bt2020 --colormatrix bt2020nc --hdr --master-display G(13250,34500)B(7500,3000)R(34000,16000)WP(15635,16450)L(40000000,50) --transfer smpte2084 --max-cll 993,198 --max-luma 1000 --no-strong-intra-smoothing --fps 24000/1001 --input-depth 10 --opts 0 --stylish --output "XXXXX.hevc" –
一个主视频00001.m2ts的大小是56.3GB,压制出的00001.hevc大小是8.49GB;一个主视频00003.m2ts的大小是55.5GB,压制出的00003.hevc大小是22.6GB.请问大佬:一样的vpy脚本一样的压制参数压制出的体积为什么有这么的差别?
还有上面参数是max-luma 1000 ,但压制出的hevc的控制显示亮度是 : min: 0.0050 cd/m2, max: 4000cd/m2把参数max-luma去掉,压制出的hevc的控制显示亮度同样是 : min: 0.0050 cd/m2, max: 4000 cd/m2想让压制出的hevc的控制显示亮度为: min: 0.0005 cd/m2, max: 1000 cd/m2,参数该如何设置?我是新手,请大佬指导!
L(40000000,50)改成L(10000000,5)就是min: 0.0005 cd/m2, max: 1000 cd/m2了
至于体积区别,不知道。00001和00003都是正片吗?
然后--keyint 24这个参数你斟酌一下,1秒钟强制一个IDR帧会不会有点过了。4K也没那么难解码吧。 本帖最后由 meitp 于 2021-11-28 22:07 编辑
fy939 发表于 2021-11-28 20:34
L(40000000,50)改成L(10000000,5)就是min: 0.0005 cd/m2, max: 1000 cd/m2了
至于体积区别,不知道。00001 ...
谢谢大佬的指导!明白控制显示亮度的设置了。00001.m2ts和00003.m2ts都是原盘的主视频。--keyint 24是从别的论坛套来的。[教程10]x265 2.9参数设置里是--keyint 360,还看到有采用--keyint 60的。请问大佬您认为多少比较合适?谢谢!
fy939 发表于 2021-11-28 20:34
L(40000000,50)改成L(10000000,5)就是min: 0.0005 cd/m2, max: 1000 cd/m2了
至于体积区别,不知道。00001 ...
他有 --uhd-bd 参数,应该是要做 UHD-BD compliant ,那么 keyint 不能超过 FPS (嘛严格说有 Denominator 的话是向上取整,比如 24000/1001 是 24 )。
当然如果他不是要做 UHD-BD compliant ,那么 --uhd-bd 参数也可以斟酌了。
ssnake 发表于 2021-11-29 11:12
他有 --uhd-bd 参数,应该是要做 UHD-BD compliant ,那么 keyint 不能超过 FPS (嘛严格说有 Denominato ...
谢谢大佬的指导!是UHDBD视频压制,将UHD原盘的主视频压制后,再用BD Demuxer Pro 3D UHD v3.2拆分原盘,用压制的视频提换原视频,用Scenarist UHD封装。封装后的盘与原盘的区别仅仅是主视频经过了压制,体积小了。
本帖最后由 chungexcy 于 2021-11-30 09:25 编辑
L(40000000,50)代表导演调色用的master display显示亮度是 : min: 0.0050 cd/m2, max: 4000cd/m2,这个你照着抄就行。你实在是要改,那就L(10000000,50),但是这样是不规范的行为。
解释一下几个HDR编码相关的参数:
--colorprim 9 --transfer 16 --colormatrix 9(rec 2020 色彩空间 + PQ,--colorprim bt2020 --transfer smpte2084 --colormatrix bt2020nc等效)
--range limited(一般都是limit range)
--hdr10 --hdr10-opt --no-dhdr10-opt(一般都加)
--chromaloc 2(4K UHD 一般的420uv像素分别是中心点,而非左上角,所以一般用 2)
--max-cll "993,198" (max-cll, max-fall)
--master-display "G(13250,34500)B(7500,3000)R(34000,16000)WP(15635,16450)L(10000000,1)" (D65-P3监视器,亮度范围为0.0001nit-1000nit)
--min-luma 0 (这是内部编码参数,一般写0)
--max-luma 1023(这是内部编码参数,8bit编码一般写255,10bit编码一般写1023,12bit编码一般写4095,必须这么写,跟maxcll无关)
谢谢大佬指导!学习了! meitp 发表于 2021-11-30 18:36
谢谢大佬指导!学习了!
L(10000000,1)--max-cll "993,198"
这两个应该就是看原视频info是多少就同样写多少的
fy939 发表于 2021-12-1 20:59
L(10000000,1)--max-cll "993,198"
这两个应该就是看原视频info是多少就同样写多少的
...
是,谢谢!
自己手动填的,有些小白不会就默认,出来是错的
页:
[1]