在几乎不损失画质的前提下,怎么用 ffmpeg 把 h.264 格式的视频转换成 h.265 格式的?

6 天前
 wniming

linux 平台,显卡是 uhd770 ,渲染节点是 /dev/dri/renderD128 ,输入文件的路径是 /tmp/h264.mp4 ,输出文件路径是 /tmp/hevc.mp4 ,有大佬能给个能直接用的命令吗?

转换的目的是为了减小文件的大小

3546 次点击
所在节点    FFmpeg
29 条回复
0xsui
5 天前
cpu 转的比 gpu 转的画质更好,就是时间会久一些,有的时候,一些 264 视频用 gpu 转换完,会发现 265 的反而更大了。。。
wnpllrzodiac
5 天前
@NoOneNoBody 对,纹理复杂的动作戏。建议拿打斗戏测试。和文戏完全不是一个难度。
old9
5 天前
硬件编码优先考虑的是效能、编码速度、省电等,在相同码率下,画质几乎一定是显著差于软件编码的。
硬件编码更适用于时间敏感的场景,比如直播,或者需要快速大批量编码的场景,楼主的需求还是软件编码吧。
编码指令可直接参考 ffmpeg wiki: https://trac.ffmpeg.org/wiki/Encode/H.265
Rorysky
5 天前
视频编码的复杂程度远超想象,不损失是不可能的,只能说损失一些
liyanggyang
5 天前
ffmpeg -hwaccel vaapi -hwaccel_device /dev/dri/renderD128 \
-i /tmp/h264.mp4 \
-vf 'format=nv12|vaapi,hwupload' \
-c:v hevc_vaapi \
-b:v 0 \
-qp 28 \
-preset medium \
-c:a copy \
/tmp/hevc.mp4

不可能完全不损失
aero99
5 天前
只要肉眼看不出画质损失就可以了
easynote
5 天前
up 有结论后分享一下。
nebulabox
4 天前
输出参数 h265 的视频码率可设置为 h264 的一半。
rick13
4 天前
之前弄过,就记的 crf 还是什么设置成 28 ,大概缩小一半体积,画质一些特殊场景稍微能看出来点。转的 av ,场景也比较固定,其实看不太出来

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/1101767

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX