需求:
从前天测试到今天 还算满意的压制参数如下:
gpu:
function ff() {
ffmpeg -y -hwaccel auto -threads auto -i "$1" -c:v hevc_nvenc -vtag hvc1 -bf 4 -preset slow -rc:v vbr_hq -qmin 10 -qmax 52 -bufsize:v 8M -profile:v main10 "${1%.*}".enc.mp4
}
cpu:
function ffw() {
ffmpeg -y -threads auto -i "$1" -c:v libx265 -vtag hvc1 -bf 4 -crf 23 -preset slow -qmin 10 -qmax 52 "${1%.*}".enc.mp4
}
有没有路过的大神帮忙看看还有没有优化的空间
1
cpstar 2021-12-16 15:51:44 +08:00
编码方式还有啥不知道,但是我知道直接买块更大的硬盘
|
2
Licsber OP |
3
msg7086 2021-12-16 17:11:59 +08:00 via Android
暂时只有 hevc 。等个五年左右应该有更好的选择。
|
4
mxT52CRuqR6o5 2021-12-16 17:30:22 +08:00
av1 的开源编码器的速度巨慢,压缩率似乎也不咋地(用 av1 的大厂都是用自家私有的编码器的)
hevc 应该是目前最好的选择,如果细节不行试试看加大码率 h.266 成熟后 h.266 就是最好的选择了,收费的还是好用 |
6
Licsber OP @mxT52CRuqR6o5 #4 感觉 av1 真的就是战未来了 完全没办法拿上来比
我这测试下来 上面的 HEVC 参数对于一些略有噪点的视频(比如老番)完全看不出来区别 但是对于真人皮肤细节就不太行 使用原始码率都会带一点涂抹感觉 要是现实视频也能有 waifu2x 这样的模型就好了 自动锐化补充高频细节 |
7
mxT52CRuqR6o5 2021-12-16 17:56:21 +08:00
|
8
amirobotics 2021-12-16 17:58:46 +08:00
虽然我不懂这些,但是我会白嫖好几个 OD 25TB 。
|
9
Rheinmetal 2021-12-16 17:59:16 +08:00
原始数据加密 aws glacier
|
10
qq316107934 2021-12-16 18:00:52 +08:00
建议存原始视频,过几年可能又有 H.267 出现,效果更好了
|
11
wy315700 2021-12-16 18:03:15 +08:00
4K 以上用 Hevc 比较好,1080 其实没啥大区别。
当然,费尽心思去编码,还不如买个更大的硬盘,毕竟很多商业片或者字幕组压片的参数比你这些参数要牛逼的多,也慢得多。。 |
12
Licsber OP @mxT52CRuqR6o5 #7 大厂自研的 av1 就没一个公开的 估计现阶段也拉垮
嗯 感觉各种字幕组在这方面经验很多 一些番剧都是压的很不错的 @amirobotics #8 白嫖 od 对我没啥用 不在本地的数据我都会加密 这就丧失了随时预览的能力 @Rheinmetal #9 还没到这种量级 虽然这是最好的归档方案了 @qq316107934 #10 哈哈 H.267 估计有生之年了 265 都花了十年 到那个时候硬盘应该不值几个钱了 @wy315700 #11 嗯 每次编码都会引入损失 想的是这个损失近可能小 只要收益超过付出成本就 ok |
13
ynyounuo 2021-12-16 18:28:46 +08:00 via iPhone 2
@Licsber
现阶段 HEVC 就是最优选择,当然二压别人的压制没有必要 热门商品视频的原始数据如果不是为其他 encoder 发电根本没必要存;一来商品发售的成片也不是 raw data 甚至根本不接近制作原素材十分之一的信息量,二来这些玩意儿想买或者找的难度都不大;非常小众的可以存 好的视频内容自然会有商业公司或顶层粉丝利用真正接近 raw 的 data 的拷贝或素材进行重制(比如 Criterion 的部分出片和星战 4K77/80/83 等) 一般水平或尚未得到这些待遇的视频内容只要已保存内容和在售商品保持一定的 transparency ,并且各类设备都可以支持回放就足够好了,现在的普及程度,合理的 HEVC 压制就足够做到这点 未来没必要保,一来过几年个人运算力和个人能拥有的储存空间都会大幅提升,二来商品视频也会因为流媒等的发展利用 raw data 或接近 raw 的 data 制作新的商品(现阶段很多流媒体的部分发布素质已经超越了 BD ,未来还会有更多比如 Bravia Core 之类的服务只会带动更多淘汰旧版视频商品的东西) |
14
mxT52CRuqR6o5 2021-12-16 18:38:12 +08:00
@Licsber
大厂的私有 AV1 编码器有可能压缩比不差的(应该是能达到 hevc 相当或差一些的水平),av1 就是个视频编码标准,也就是定义了一些描述视频冗余信息的规则,至于怎么利用这些规则达到更大的压缩比就是编码器的事了,服务器上传流量毕竟还是一个很贵的东西,大厂是有动力去做一个高压缩比的 av1 编码器的(同时也是 Hevc 明明很贵还是需求的原因) |
15
Licsber OP @ynyounuo #13 谢谢 感觉还是我对 HEVC 的期望太高了
现在决定还是保留原始文件 + HEVC 二压用来快捷预览和网络分享 期待未来有创时代的技术可以解决画质细节和压缩率之间的 trade off @mxT52CRuqR6o5 #14 只能期待过几年 av1 普及( HEVC 可是等了十年 |
16
mikewang 2021-12-16 21:47:58 +08:00
个人建议不用二压,压制组辛辛苦苦调的参数肯定不会差的。现在储存成本也不是很高,如果不常用就买块破硬盘存着呗。消耗算力又降低画质,不划算。
|
17
clrss 2021-12-16 22:37:03 +08:00
根据经验, 同码率下的画质, 软压 AVC = 硬压 HEVC.
压制组的 AVC 都是软压吧. hevc_nvenc 比不了. |
18
kokutou 2021-12-16 23:03:58 +08:00
cpu 别的参数删了, 直接 crf 26 veryslow
gpu 别用, 质量烂的很, gpu 是给推流直播用的. |
19
chinni 2021-12-16 23:11:30 +08:00 via Android
一句话…二次压缩没意义…还不如大硬盘
|
20
1423 2021-12-16 23:22:39 +08:00
硬盘越来越便宜。。对历史数据的压缩越来越没有必要
|
21
Kagari 2021-12-16 23:34:36 +08:00
h264 时代之前的抄个参数转成 HEVC ,h264 、h265 的就不要动了
|
22
ZRS 2021-12-17 01:27:40 +08:00
不要二压
|
23
tsui 2021-12-17 04:16:36 +08:00
20 年前,我们热衷于收藏 192Kbps MP3 ,挂着 52k 小猫下载,Lame 跑一天压缩到 128Kbps 甚至 96Kbps 方便携带
楼主是不是觉得是曾相识呢 |
24
cxumol 2021-12-17 04:31:00 +08:00 via Android
软压 -c libx265 压缩率更高,请问 h264 用 libx265 转过来画质如何?
|
25
hei1000 2021-12-17 04:42:59 +08:00
我前不久试过 hevc+ffmpeg 各种参数搭配测试效果,最后发现直接提供 bitrate 是最好的,其他 preset 都不好控制清晰度+文件大小的平衡
`ffmpeg -hide_banner -i input.mp4 -c:v hevc_nvenc -c:a copy -b:v 2000k output.mp4` 上面 2000k 换成自己想要的 |
26
yuzo555 2021-12-17 05:36:00 +08:00
“尽可能保留细节”,要做到这一点你得排除 nvenc
|
27
charslee013 2021-12-17 06:16:54 +08:00
随便找了个旧番视频测试下 , 源视频是 h264
```bash ❯ ffprobe -v error -select_streams v:0 -show_entries stream=width,height,duration,bit_rate -of default=noprint_wrappers=1 input.mp4 width=1920 height=1080 duration=1373.038333 bit_rate=2441310 ``` ffmpeg 压缩参数(平台是 Apple M1 ) ```bash ffmpeg -i input.mp4 -c:v hevc_videotoolbox -vtag hvc1 -c:a copy -x265-params lossless=1 -preset slower output.mp4 ``` 压缩成 hevc 后可见码率是下降了许多 ```bash ❯ ffprobe -v error -select_streams v:0 -show_entries stream=width,height,duration,bit_rate -of default=noprint_wrappers=1 output.mp4 width=1920 height=1080 duration=1379.086042 bit_rate=927937 ``` 对比下压缩后的体积 ```bash ❯ du -h input.mp4 output.mp4 429M input.mp4 192M output.mp4 ``` 压缩率有 44.7% 还算不错 然后以 PSNR 和 SSIM 测试下两者的差异 ```bash ❯ ffmpeg -i input.mp4 -i output.mp4 -lavfi psnr -f null - [Parsed_psnr_0 @ 0x108b05eb0] PSNR y:25.101322 u:34.842173 v:36.384440 average:26.670481 min:4.389950 max:inf ❯ ffmpeg -i input.mp4 -i output.mp4 -lavfi ssim -f null - [Parsed_ssim_0 @ 0x106d06ce0] SSIM Y:0.949013 (12.925385) U:0.976488 (16.287145) V:0.978982 (16.774069) All:0.958587 (13.828618) ``` 技术总结:动漫番剧之类不太特别看重画面质感的可以转换成 hevc 格式以便于压缩保存,如果本来就是二压过的视频还是以源视频为好 |
28
jackmod 2021-12-17 07:27:05 +08:00
之前为了节省动画片的空间我直接 -c:v hevc_nvenc -qp:v 35 肉眼看不到明显的细节区别。
现在选择塞硬盘里。 hevc 的默认品质好像是 28 来着。 |
29
pperlee 2021-12-17 09:08:20 +08:00
个人收藏,其实直接存起来就好了。毕竟大多数播放器都是向下兼容的,完全没有必要再次压缩。多年以后你来看这些视频,其实都是一样的,因为你已经老花眼(或者高度近视),看不清了。
|
30
wanguorui123 2021-12-17 09:15:27 +08:00
如果是 M1 ,还是用 HEVC 吧,有硬件加速
|
31
geekvcn 2021-12-17 09:16:48 +08:00
尽可能保留细节。。。视频编码,图片压缩都是基于有损压缩,想尽可能保留细节用无损压缩算法+大字典吧。视频编码基本上就是把光栅化帧尽可能矢量化,并引入关键帧前后帧进一步提高矢量化程度以此降低大小,代价就是细节损失。想要效果好别用硬件编码,用软件编码高预设就行了
|
32
shadows 2021-12-17 10:07:28 +08:00
如果是热门内容,有新技术了自然有压制组重新压制
|
33
dadachen1997 2021-12-17 10:11:25 +08:00
建议硬盘冷备等未来新的编码格式出现,or 容量大跳水
|
35
xz410236056 2021-12-17 10:17:11 +08:00
H2XX 这种不是要专利费的吗
|
36
lovehigh 2021-12-17 10:20:21 +08:00
1. AV1 的话可以用用看 SVT-AV1 ,比 libaom-av1 快不少。当然肯定不能和 libx265 比
2. GPU 加速的不要用,体积小不了多少。 |
37
XiLingHost 2021-12-17 10:24:43 +08:00
与其重编码,不如重新打包,把各种 metadata 都修正好,然后用 mkv 作为容器格式把视频音频字幕流都匹配好包装好,文件名用规范格式写好,目录结构组织好
这样不是更利于归档吗 至于实际的流,就各自用原始的编码格式就行了 |
38
hronro 2021-12-17 10:37:40 +08:00
你要归档视频,追求压缩比完全没有意义啊,因为以后肯定会出现比现在压缩比更高的格式,特别是如果你要归档多年,那么一旦编码格式更新 2 代以上,你就会发现你之前的视频完全是渣渣。
相比追求压缩比,我自己更倾向于追求无损画质。我现在用 380Mbps 的 10 bit HEVC 格式编码视频,画质几乎接近于无损,代价就是视频体积相当大。 |
39
mxT52CRuqR6o5 2021-12-17 11:10:14 +08:00
@Licsber
大厂们只需要有个 AV1 的编码标准在那里就行了,并没有动力去改善开源的编码器表现的,普及了也不适合当转码收藏用的编码方式 |
40
mxT52CRuqR6o5 2021-12-17 11:16:13 +08:00 via Android
@hronro bd 原盘都没这么高码率吧,片源是母带吗?
|
41
libook 2021-12-17 11:31:27 +08:00
突然在想,原片是不是刻光盘,然后就没必要存硬盘里了,硬盘里可以存压制后的。
同样一直观望 AV1 编码,目前消费级硬件貌似只出了硬解码,没出硬编码,软编码没找到速度可以接受的。 |
42
hronro 2021-12-17 11:47:10 +08:00
@mxT52CRuqR6o5 #40 我自己拍的一些视频,记录日常的。电影的话直接保存 BD Remux 就挺好的了。
|
43
ji39 2021-12-17 11:49:13 +08:00
56k 的小猫
|
44
anbobi 2021-12-17 13:50:18 +08:00
JPEG2000 ,影院 DCP 数字拷贝都是用的这个,肯定比 HEVC 好
|
45
newmlp 2021-12-17 13:52:55 +08:00
hevc 编码 1080 及以下的时候要调低最大 ctu 到 32 ,不然就会有细节损失
|
46
wangsd 2021-12-17 14:23:54 +08:00
AV1 可以使用 SVT-AV1 ,intel 和 netflix 的开源实现,速度会快不少,不过综合下来 HEVC 是目前最好的选择了。
|
47
geniussoft 2021-12-17 16:11:51 +08:00 via iPhone
不压了,现在单盘 18T 了。
马上 20T 就上市。 |
48
retamia 2021-12-17 17:19:34 +08:00
@Licsber 大厂自研的 AV1 并不会拉胯,要比开源的版本速度和压缩率都要好很多。
目前自研的编码器都会结合算法来进行感知编码,对人眼区域敏感的地方分配更多的码率,但这种都是商业的,需要付费。针对不同客户的视频类型都会使用不同的转码参数,这些都有相关测试人员来进行主观测试和 vmaf 之类的打分的 如果你忍受压缩速度,可以用 veryslow preset ,crf 可以尽量低,但是码率就会变大。4k hdr 以下的,hevc 和 avc 差别不是太大。 |
49
huihuilang 2021-12-17 18:41:03 +08:00 via Android
有这么点功夫编码还不如多买两个硬盘呢
|