混合和硬件解码之间的区别

时间:2013-03-26 21:33:06

标签: ios media-player codec

对于iOS播放器(如AVPlayer或oPlayer)存在混合和硬件解码设置。 两者都是为h.264编解码器设计的(用于正常播放带有h.264编解码器的高清文件)。 我不明白他们之间的区别。

有人可以解释一下吗?

2 个答案:

答案 0 :(得分:1)

当解码器标记为Hardware解码器时,意味着解码完全由平台中的硬件块执行。当存在这样的固定功能硬件块时,要考虑的主要因素之一是功能将受到限制,即仅支持hardware decoder支持的那些功能,以防万一需要新功能,您必须进行重新设计重新旋转

硬件解码器的主要优点是它通常具有高能效,因为硬件专门用于实现功能。除此之外,还通过将硬件解码器块的输出格式与GPU相匹配来优化整体系统性能。

当解码器标记为Software解码器时,它是在CPU上运行的编解码器的纯软件实现。此实现方法有助于扩展底层编解码器的功能,因为它只是用较新版本的SW替换旧版本的SW。

软件解码器的主要缺点是功耗密集。通过大容量存储器访问以获得更大的视频分辨率,软件解码器的功率需求大幅增加,并且电池耗电更快。对于大分辨率和长时间播放,这绝对不是一个好的选择。

Hybrid解码器是另一类解码器,它集成了一个软件模块,通常作为预处理器与底层硬件引擎。例如,如果存在潜在的高性能DSPSIMD引擎,则预处理器可以执行解码的串行部分,如CAVLD和其他头/位解析操作,而更复杂像Intra PredictionMotion Compensation这样的操作的数学部分将由底层硬件块执行。

部分Hybrid解码器也被视为Hardware解码器,但目前世界上有越来越多的Hardware解码器。

答案 1 :(得分:0)

硬件使用GPU(或特定硬件)进行视频解码。软件使用CPU进行解码。混合物是2的混合物。

现在,“硬件”这个名字越来越成为一个误称......