解码器/软件解码器/硬件解码器有什么区别?详细解释

闻西平常没啥爱好,就爱看视频,无论是短视频,还是电影,都爱看。

现在看个视频看部电影,基本都是用手机来看了,闻西也不例外。

看短视频还好,基本在线看,只要网络好,几乎就不会有任何问题。

但闻西也经常喜欢从网络上下载一部电影,甚至直接下载一部剧,然后拷贝到手机里,有空的时候就看。

解码器/软件解码器/硬件解码器有什么区别?详细解释

可是闻西经常碰到播放视频卡顿的问题,闻西一开始以为是手机性能不够,之后换了新手机后,仍然会出现播放电影或者电视剧视频时,卡顿严重。

无意中,闻西发现了手机播放器(安卓的MX播放器)里面有一个功能选项:选择解码器。

里面分别有硬件解码器,硬件解码器+和软件解码器。

解码器/软件解码器/硬件解码器有什么区别?详细解释

抱着试试看的态度,闻西切换了解码器,结果发现,视频卡顿的问题解决了。

真是神奇有木有?到底是什么导致了这神奇的事情发生了呢?

要想探究这个问题,我们首先要知道几个问题:

1)什么是解码器?

2)什么是软件解码器?

3)什么是硬件解码器?

4)什么时候选择软件解码器?

5)什么时候选择硬件解码器?

看来这个问题不简单,一下子这么多问题摆在我们面前,但别怕,我们来各个击破。

什么是解码器?

关于什么是解码器,百度百科是这么说的:

解码器(decoder),是一种能将数字视音频数据流解码还原成模拟视音频信号的硬件/软件设备。

说实话,闻西作为专业人士,都觉得这个定义实在是太术语化了。

不过如果要理解解码器,我们就得知道,为什么要有解码器,从原因上来理解,或许会更立体些。

解码器,顾名思义,就是用来解码的工具。

解码器/软件解码器/硬件解码器有什么区别?详细解释

为什么要解码呢?因为数据被编码了。

为什么要给数据编码呢?因为要把数据进行压缩。

为什么数据要压缩呢?因为数据如果不压缩的话,会占用很大的磁盘空间,如果用来网络传输的话,就会占用很大的网络带宽资源,不划算,或者如果网络带宽不够的话,根本传不过去。

什么是软件解码器?

知道了什么是解码器之后,再去理解什么是软件解码器,可能就会更容易了。

软件解码器,顾名思义,就是用软件来做的解码器,它是一个软件或者软件的一部分。

但软件一般都凌驾于CPU之上,最终还是要由CPU来进行运算解码的,因此严格上来说,软件解码器,不能说是真正严格意义上的软件解码器,或者说,就没有真正的软件解码器。

正因为如此,我们可以把用CPU来进行解码的解码器,定义为软件解码器。

解码器/软件解码器/硬件解码器有什么区别?详细解释

什么是硬件解码器?

硬件解码器,从字面意思上来理解,就是用硬件来直接解码的解码器了。

但严格来说,硬件里面不可能没有程序,所以其实也没有真正的硬件解码器。

正因为如此,我们把不用CPU而直接用如GPU这些硬件直接来进行解码的解码器定义为硬件解码器。

说了这么多,估计对于技术小白们来说,已经糊涂了,所以,闻西再用两句话总结下,你就不晕了:

软解码:使用CPU进行解码

硬解码:使用非CPU进行解码,如显卡GPU、专用的DSP、FPGA、ASIC芯片等

什么时候用软解码?什么时候用硬解码?

说了这么多,到底什么时候用软解码,什么时候用硬解码呢?

如果你需要对视频做一些处理,比如电子放大,甚至人脸识别等AI功能,那么你就要用软解码了。

如果你只是看视频,不对视频进行二次加工处理,那么你就直接用硬解码吧。

软解码的好处是兼容性好,但缺点是解码效率低,占用系统资源高;

而硬解码的好处是解码效率高,占用系统资源低,但缺点是兼容性不好;

看到这里,你一定会疑惑,对于一个爱在手机上看看离线电影,看看下载好的电视剧的人来说,用得着这些知识吗?

你还别说,如果你不知道这些,你即使用着顶级配置的手机,看视频还是会卡。

解码器/软件解码器/硬件解码器有什么区别?详细解释

因为,很有可能你看的视频的格式,你的手机的GPU硬件解码器是不兼容的,这个时候,你就得动动手指切换下解码器了。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发表评论

登录后才能评论