硬编码 和 软编码

一、硬编码

硬编码,就是指有专门的硬件模块编码来负责编码。

举个例子,Android手机上,我们常见的高通、MTK、海思等芯片平台,它们都会有专门的编码模块,比如dsp模块等。

硬编码,有啥优点呢?

1、快,这个快是相对于软编码而言;

2、省电、功耗低;

缺点:

1、兼容性稍差,

二、软编码

软编码,就是指通过软件让CPU来进行编码处理。比如我们经常说的ffmpeg,就是用来进行软编码的。

优点:

1、兼容性好;

缺点:

1、耗资源,需要耗费cpu资源;

2、效率低,相对于硬编码而言。

1)灵活性高,能够适应不同的音视频格式和压缩率。
2)可以在普通的计算设备上进行解码,不需要专门的硬件支持。
3)由于是通过软件算法进行解码,因此可以更容易地进行升级和优化。
1)相比硬解码,软解码需要消耗更多的 CPU 资源,可能导致设备过热、
电池寿命降低等问题。


2)软解码依赖于 CPU 的性能,因此对于某些高清视频或低端设备,
可能无法提供稳定的播放体验。

总结:

在实际的应用开发中,开发者可以根据设备性能和支持情况来选择软编码或硬编码方式。能硬编码优点选择硬编码。

附:开源播放器

1)B站的ijkplayer

https://github.com/Bilibili/ijkplayer

2)google ExoPlayer

https://github.com/google/ExoPlayer

3)vlc

3827a6235177263e0ed36cf41d882d7b.png

推荐阅读:

关于我

一篇文章带你了解Android 最新Camera框架

独家 | Android Camera 面试流程、经验分享

视频课程上架啦 | Android Camera开发入门

深圳上班,

从事Android Camera相关软件开发工作,

公众号记录生活和工作的点滴。

346b7b49762d8b33fd957dc1fe33cd1d.png

《Android Camera开发入门》视频课程已经上架了,可以加我微信咨询,目前针对星球成员免费开放,也欢迎加入“小驰成长圈”星球d6aed3702e310e370e86ce0571daba96.png

视频课程上架啦 | Android Camera开发入门

2a9f6d759e38a789f863f95207fa3319.jpeg


posted @ 2024-01-24 07:39  小驰行动派  阅读(192)  评论(0编辑  收藏  举报  来源