直播app制作过程中会涉及到视频分辨率的问题,常见的视频分辨率格式有高清、超清现在还有了蓝光,不同分辨率的直播画面对视频格式的要求也不同,视频直播的质量要求对视频码率的要求非常高。
视频码率的压缩率比较高,解码运算的运算量比较大,所以系统会直接用CPU进行解码,这种方式称之为软解。除了软解码外还有硬解码,硬解码是指通过显卡的视频加速功能对视频进行解码,将CPU从繁重的视频解码中解放出来,使电脑具备流畅播放高清视频的能力。
软解码的应用场景在于显卡本身不受支持或者部分不支持硬件解码的前提下,将解压高清编码的任务交给CPU,其实也是一种基于硬件配置本身达不到硬解码要求的前提下使用的解码方式。软解码的好处在于成本低廉且不需要二次投入,可以直接保证视频的清晰度。
硬解码方式下,视频的压缩任务基本都交给了显卡,这使CPU得以解脱,可以承担其他任务。在其他配置相同的情况下,硬解码比软解码可提供的方案更多,可以满足不同情况下对视频清晰度的不同要求,但相应的费用也得到提升,电脑因显卡工作量的提升功耗会增加,加上电源功率和散热等其他配置,整体的预算和成本会更高。
硬解码晚于软解码诞生,大部分人会认为硬解码比软解码先进,其实在直播app制作过程中硬解码方式并不是必须的,硬解码只是当作当CPU性能不足时应对视频解码需求的一种解决方案,以降低CPU的占用率,硬解码有三个明显的缺点:
1.画面质量无法保障,软解码的画面质量明显高于硬解码
2.硬解码播放模式需要在软件中设置,并对字幕等支持状况不好
3.硬解码显卡存在着各种各样的问题,随着技术的进步,逐渐得到解决,同样这对CPU的性能要求也随着提高
在CPU性能较差时适合使用硬解码,但这并不能说就一定要使用硬解码才能解决。直播app制作过程中使用硬解码还是软解码都要根据情况来决定,如果兼容性够好,很多平台都可以选择软解码的方式,只是会对CPU产生很大的负载;如果有用户需要更清楚的视频画面,可以选择硬解码的方式。
原文地址:https://blog.51cto.com/14640172/2469303