为硬盘减压!在 Mac 上把 H.264 格式的视频转换为 HEVC(H.265)格式
作者:
秒速五厘米
HEVC 是新一代的视频编码格式。
相比目前常用的 H.264,其最大的优点就是在相同的画质下所需要的存储空间可以大幅缩小,并且还可以支持 8K 超大分辨率以及广色域视频。
一直以来 macOS 以及 iOS 都不支持原生 HEVC 硬解码。我也为此郁闷了好久,感觉 Apple 真心跟不上潮流……
终于,Apple 在 macOS 10.13 以及 iOS 11 中加入了对 HEVC 视频硬解码的原生支持。
根据 Apple 官网的描述,2015 年末以及之后推出的设备均可完美支持 HEVC 硬解码。
如果使用的是较旧的设备,那么只支持 HEVC 软解码。软解码的话 1080P 一般没什么问题,但是 4K 基本上都要跪了。
如果您是一位喜欢收藏视频的果粉,但是存储空间又有些紧张的话,那么不妨考虑花一些时间,将手头上收藏的 H.264 格式视频转换成 HEVC 格式吧。
硬件:MacBook Pro 15" 2017
操作系统:macOS 10.13.2
应用软件:ffmpeg 3.4.1
我个人比较喜欢命令行操作,因为效率很高而且很方便。如果实在是搞不好命令行,那么不妨尝试一下这款名为 HandBrake 的免费开源工具。(感谢少数派网友 Minja 补充)
Homebrew 是 macOS 上最常用的包管理器,我想大部分朋友都已经安装了,所以下面一笔带过就好。
打开「终端」,执行以下命令:
/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
然后根据提示操作,即可完成安装。
ffmpeg 是一款开源的命令行视频转码工具,很多视频转码工具都是基于 ffmpeg 二次开发的。
由于 Homebrew 自带的 ffmpeg 二进制文件不包含编码 HEVC 所需的 x265 函数库,所以必须重新编译安装。好在整个过程都是可以自动完成的。
打开「终端」,执行以下命令:
brew install ffmpeg --with-x265
如果之前安装过 ffmpeg,请执行
brew reinstall ffmpeg --with-x265
。
执行完命令之后,Homebrew 会自动下载所需软件包,然后编译安装。
HEVC 有两种封装格式,一种是
hvc1
格式,另一种是hev1
格式。macOS 以及 iOS 系统自带的播放器只支持前者,但是 ffmpeg 默认以后者封装,所以下面的命令必须手动指定hvc1
封装格式。
打开「终端」,按实际情况修改以下命令然后执行:
ffmpeg -i -c:v libx265 -c:a copy -tag:v hvc1
操作提示:在输入
ffmpeg -i
空格之后,将要转换的视频文件直接拖入「终端」窗口,即可自动生成完整路径。然后把完整路径中最后的文件名改一下,就可以直接作为转换后的视频路径。
例如
将 /Volumes/KINGSTON/1.mov
转换为 HEVC 格式,输出文件为 /Volumes/KINGSTON/1_hevc.mov
。
ffmpeg -i /Volumes/KINGSTON/1.mov -c:v libx265 -c:a copy -tag:v hvc1 /Volumes/KINGSTON/1_hevc.mov
转换过程中,按 Q
可以中断转换,但是不支持断点续转。
建立一个文件夹,把要转换的视频都放进这个文件夹里。
打开「终端」,按实际情况修改以下命令然后执行:
cd && command ls -1 | sed -e "s/^/'/" -e "s/$/'/" | grep -v "^hevc_" | xargs -n1 -I {} ffmpeg -i {} -c:v libx265 -c:a copy -tag:v hvc1 hevc_{}
操作提示:在输入
cd
空格之后,可以将文件夹直接拖入「终端」窗口,即可自动生成完整路径。
转码之后的视频都会被加上 hevc_
前缀。
转换过程中,按 Q
可以中断转换,但是不支持单个文件的断点续转。
这里拿一个 4K 视频来测试,然后使用 QuickTime Player 的检查器来查看文件信息。
可以看得出,将 H.264 格式的视频转换为 HEVC 格式之后,存储空间大幅减小了!然后肉眼也看不出任何的画质衰减。
由于目前所有的 Mac 都不支持 HEVC 硬编码,因此在编码过程中 CPU 会满载,风扇也会狂转。不过不影响 Mac 的正常使用。
Mac 的 CPU 性能越高,转码速度越快。不差钱的话,也可买台 iMac Pro 顶配来转码。(买得起 iMac Pro 的朋友还会差这几个硬盘钱?)
带有内嵌字幕的视频在进行转码之后,内嵌字幕将丢失。
由于视频的格式很多,转码过程不能保证一定可以成功。本文纯属个人经验分享,仅供参考。