概念
硬件编解码通常称为硬编码硬解码,软件编解码称为软编码软解码。
软编码软解码主要依赖的是CPU资源,设备普通使用也是使用CPU做计算,所以开始编解码视频的时候CPU会飙升起来,发热就无法避免。
硬编解码主要依赖的是GPU,这样就大大解放了CPU,性能上得到大大提升,在移动设备上主要使用的就是硬解码。在高分辨率视频流中也是使用硬件编码,现在主流是使用英伟达显卡。
对视频数据编解码一般有两种方式:
1、软件的方式。
软编解码主要是通过X264,X265等软件编解码器对数据进行处理,优点是灵活,可以根据需要进行定制,缺点是速度比较慢。涉及的主要库包括FFmpeg,webrtc等。
2、硬件的方式。
使用硬件芯片厂商提供的API进行编解码,这些编解码器已经被集成到了硬件底层,优点是速度快,缺点是与平台相关,而且不够灵活。
常见的硬件编解码方式有:
1、Android平台提供的MediaCodec
2、iOS平台提供的Video ToolBox
3、Intel提供的QuickSync
硬件解码:就是通过硬件进行视频的解码工作,其中硬件解码是由GPU来进行的,使用GPU解码能够降低CPU的工作负荷,降低功耗。
软件解码:软件解码则是通过软件本身占用的CPU进行解码,所以会增加CPU工作负荷,提升功耗,
优缺点:
硬解优点:由显卡核心GPU来对高清视频进行解码工作,CPU占用率很低,画质效果比软解码略差一点,需要对播放器进行设置。播