对于iOS播放器(如AVPlayer或oPlayer)存在混合和硬件解码设置。 两者都是为h.264编解码器设计的(用于正常播放带有h.264编解码器的高清文件)。 我不明白他们之间的区别。
有人可以解释一下吗?
答案 0 :(得分:1)
当解码器标记为Hardware
解码器时,意味着解码完全由平台中的硬件块执行。当存在这样的固定功能硬件块时,要考虑的主要因素之一是功能将受到限制,即仅支持hardware decoder
支持的那些功能,以防万一需要新功能,您必须进行重新设计和重新旋转。
硬件解码器的主要优点是它通常具有高能效,因为硬件专门用于实现功能。除此之外,还通过将硬件解码器块的输出格式与GPU
相匹配来优化整体系统性能。
当解码器标记为Software
解码器时,它是在CPU上运行的编解码器的纯软件实现。此实现方法有助于扩展底层编解码器的功能,因为它只是用较新版本的SW替换旧版本的SW。
软件解码器的主要缺点是功耗密集。通过大容量存储器访问以获得更大的视频分辨率,软件解码器的功率需求大幅增加,并且电池耗电更快。对于大分辨率和长时间播放,这绝对不是一个好的选择。
Hybrid
解码器是另一类解码器,它集成了一个软件模块,通常作为预处理器与底层硬件引擎。例如,如果存在潜在的高性能DSP
或SIMD
引擎,则预处理器可以执行解码的串行部分,如CAVLD和其他头/位解析操作,而更复杂像Intra Prediction
,Motion Compensation
这样的操作的数学部分将由底层硬件块执行。
部分Hybrid
解码器也被视为Hardware
解码器,但目前世界上有越来越多的Hardware
解码器。
答案 1 :(得分:0)
硬件使用GPU(或特定硬件)进行视频解码。软件使用CPU进行解码。混合物是2的混合物。
现在,“硬件”这个名字越来越成为一个误称......