VC-1编码也早已实现了GPU硬解加速
这三大标准中,MPEG-2出道时间早,压缩比小,占用空间大,影响也是最低的,H.264与VC-1是720p、1080p高清视频编码的主流,压缩比上虽然VC-1>H.264>MPEG-2,但是影响最大、使用最多的还是H.264标准,VC-1一家独大及局限于Windows平台的缺陷还是让厂商有些忌惮。
时至今日,我们在网上能看到的高清电影多数都是H.264编码标准的,这两天想找一些VC-1或者MPEG-2编码的高清电影或者视频都没什么结果,而H.264编码的电影却随处可见。
此外,不论是MPEG-2、H.264还是VC-1编码,目前AMD/NVIDIA/Intel的显卡都已经实现了加速,GPU硬解不是问题了,至少说在1080p分辨率以内都不是问题了。
高清编码标准第二阶段:H.265、VP9
第一阶段的编码标准竞争犹如之前的3G标准,H.264最终成了3大标准中的WCDMA,发展的最好,而MPEG-2则是TD-SCDMA,有亲爹支持的VC-1更像是高通独大的CDMA2000。后1080p视频时代则是到了4G时代,在场的玩家所剩不多,有能力成为新一代标准的不过是H.265及Google主导的VP9。
H.265也叫HEVC,2012年就已经完成了标准制定工作。与H.264相比,H.265的最大本领是可以在维持画质基本不变的前提下,让数据传输带宽减少至H.264的一半。同时其还支持最高为7680*4320的分辨率,因此即使是2160P甚至是更高级别的超高清视频同样可以通过H.265格式进行编码。
微软现在的影响力大不如前,新一代视频编码标准中引领风骚的是Google公司,他们提出的VP9编码是最有可能跟H.265一较高下的新标准。VP9全称是WebM open-source V9,此前Google推广过VP8,VP9时代才算渐入佳境,Google嫡系如Youtube、Chrome等都已支持VP9编码,还争取到了FireFox的支持,Intel、ARM、NVIDIA、三星、Marvell等硬件厂商也早就宣布支持VP9了,阵容还是很庞大的。
尽管Google在不同场合都宣称VP9编码效果高于H.264之类的,但是H.264及后续的H.264与VP9的差距并不是技术上的,二者都能支持8K视频,满足未来一段时间内视频编码的需求都是没问题的,而VP9的杀手锏是无版权费,肯定会受到厂商的热烈欢迎的。不过VP9也有不利之处,进度上要慢于H.264及H.265。
有关H.265与VP9详细性能对比的文章可以参考CSDN上的这篇博客。
H.265与VP9现在还谈不上谁是最后的胜利者,这场竞赛也不是赢家通吃的,因为Google的目标是提供多一个选择,而不是完全取代H.264/H.265,很多厂商都会同时支持这两种标准的。
值得一提的是,厂商们都宣布了VP9编码支持硬解了,而H.265标准目前能够实现硬解的不多,目前所知的只有高通的骁龙805处理器才具备硬解H.265的能力,桌面显卡倒是没见到哪家有过这样表态的。
当然,上面讨论的这几种编码都是常见的标准而已,其他编码一样可以做4K的,RealMedia有兴趣的话RMVB一样能支持4K超高清电影,问题只是这样做的效率高低 及市场的接受度差别罢了。
4K视频实际上是1080p视频的分辨率放大版,编码上倒是没什么特别的,不过即便如此,4K视频的硬解对显卡来说还是个问题,这就要看看AMD/NVIDIA/Intel等公司的GPU解码单元到底能支持什么样的硬解加速了。
AMD、NVIDIA、Intel对4K硬解的支持
视频通常有两种解码方式,CPU直接解码的被称为软解,这种方式对视频的编码格式没什么要求,兼容性最好,但是CPU通常能力有限,对付部分视频的软解可能没问题,但是1080p以及今天讨论的4K视频就不好说了,高端四核八线程处理器或许可以一战,但是软解高清以及4K视频对CPU依然是个极大的考验,因此除非不得已的情况下才考虑软解。
如果由GPU加速解码,这种方式被称为硬解加速,好处是可以释放CPU压力,降低硬件要求,但硬解也不是没有缺点,因为GPU硬解需要考虑解码格式,还得考虑对应的解码器、播放软件等等,为了追求最好的效果,通常还要在各种DVXA、CUDA、CoreAVC之类的解码器中选来选去,这可不是个轻松的活儿。
尽管硬解有可能存在兼容性问题,不过它依然是我们视频解码的第一选择。NVIDIA、Intel及AMD的GPU都有自己的一套解码方案,对不同视频编码及视频格式的支持也不尽相同,在4K时代他们的支持度也是不一样的,我们来简单看一下。
NVIDIA PureVideo HD:VP5、VP6已支持4K硬解
NVIDIA的视频解码技术叫做PureVideo,GeForce 8系列之后有了升级版PureVideo HD,当然这个PureVideo HD也是在不断升级的,又分为VP1、2、3、4、5、6等等。
NVIDIA的视频解码单元叫做PureVideo
VP5首先在GT 520上引入,目前Kepler架构的GTX 600/700系列都支持VP5解码,支持4K视频硬解(最大支持4032x4080解码)。最新的VP6是今年的Maxwell架构上引入的,包括GTX 750 Ti、GTX 750及OEM版的GeForce 860M/850M、GTX 745都支持VP6引擎,增强了H.264及MPEG-2解码时的差错掩盖技术,提升了视频处理中纠错的能力,同样支持4K视频解码。
Kepler架构开始,视频转码有了单独的NVENC单元
值得一提的是,NVIDIA从Kepler架构时代引入了NVENC单元,这个主要是GPU加速编码用的,1080p视频实时编码速度是原来的8倍速,支持H.264 B/M/HPL 4.1编码,最高分辨率可达4096x4096。NVIDIA GFE软件的SadowPlay录像技术靠的就是NVENC的实施编码能力。
Intel核显:IVB及Haswell的HD Graphics已支持4K硬解
Intel核显的QuickSync转码加速技术或许更为知名,转码速度非常快,比AMD、NVIDIA的GPU加速甚至还要快。之前我们测试过SNB、IVB两代QuickSync技术的转码效果,Haswell一代QuickSync继续升级,新增了MPEG-2的硬件加速编码,同时也支持了4K@60fps的AVC编码加速。
IVB开始的MFX解码单元已经支持4K加速
解码方面,从上代的Ivy Bridge处理器开始,Intel核显中的MFX(多格式解码引擎)单元就已经开始支持4Kx4K级别的硬解加速,要比4Kx2K的硬解加速更强。
从Intel的解释中,MFX中的视频解码分为两部分,第一步被称为ENC,是在核显中的EU执行单元中完成的,第二部分叫做PAK,这个才是在MFX单元中解码的。
Haswell中MFX单元功能进一步增强,支持硬件SVC(可扩展视频解码)加速
简单来说,Intel从IVB架构开始也支持4K视频加速了,包括Core ix-3000系列的HD 4000、HD 2500核显及Haswell架构Core ix-4000系列的HD 4200/4400/4600/5000/5200核显等。
AMD的UVD引擎:尚无4K硬件加速
AMD的视频编码单元叫做VCE(Video Codec Engine 视频编码引擎),功能有点类似Intel的QuickSync转码加速,而负责视频解码的单元叫做UVD(Universal Video Decoder,通用视频解码器),此前HD 7000系列使用还是HD 6900系列上改进的UVD 3.2引擎,而Kaveri APU反倒是最先使用了UVD 4.2引擎的处理器。
UVD4引擎支持的视频编码很全面,不过4K视频硬解还不行
AMD以往给人的印象是在视频技术上支持更好,不论是硬解加速还是Steady Video视频稳定技术都比对手做的更快更好,但在4K硬解上AMD反倒是落伍了,UVD引擎至今依然没有提供4K分辨率视频的硬解加速。