一、硬編碼
硬編碼嘁字,就是指有專門的硬件模塊編碼來負責編碼恩急。
舉個例子,Android手機上纪蜒,我們常見的高通衷恭、MTK、海思等芯片平臺纯续,它們都會有專門的編碼模塊随珠,比如dsp模塊等。
硬編碼猬错,有啥優(yōu)點呢窗看?
1、快倦炒,這個快是相對于軟編碼而言显沈;
2、省電逢唤、功耗低拉讯;
缺點:
1、兼容性稍差鳖藕,
二魔慷、軟編碼
軟編碼,就是指通過軟件讓CPU來進行編碼處理著恩。比如我們經(jīng)常說的ffmpeg院尔,就是用來進行軟編碼的蜻展。
優(yōu)點:
1、兼容性好邀摆;
缺點:
1纵顾、耗資源,需要耗費cpu資源隧熙;
2片挂、效率低幻林,相對于硬編碼而言贞盯。
1)靈活性高,能夠適應(yīng)不同的音視頻格式和壓縮率沪饺。
2)可以在普通的計算設(shè)備上進行解碼躏敢,不需要專門的硬件支持。
3)由于是通過軟件算法進行解碼整葡,因此可以更容易地進行升級和優(yōu)化件余。
[圖片上傳失敗...(image-7f33c3-1706328353898)]
1)相比硬解碼,軟解碼需要消耗更多的 CPU 資源遭居,可能導致設(shè)備過熱啼器、
電池壽命降低等問題。
2)軟解碼依賴于 CPU 的性能俱萍,因此對于某些高清視頻或低端設(shè)備端壳,
可能無法提供穩(wěn)定的播放體驗。
[圖片上傳失敗...(image-39a6a0-1706328353898)]
總結(jié):
在實際的應(yīng)用開發(fā)中枪蘑,開發(fā)者可以根據(jù)設(shè)備性能和支持情況來選擇軟編碼或硬編碼方式损谦。能硬編碼優(yōu)點選擇硬編碼。
附:開源播放器
1)B站的ijkplayer
https://github.com/Bilibili/ijkplayer
2)google ExoPlayer
https://github.com/google/ExoPlayer
3)vlc
[圖片上傳失敗...(image-d15287-1706328353898)][圖片上傳失敗...(image-2c0431-1706328353898)]編輯
推薦閱讀:
獨家 | Android Camera 面試流程岳颇、經(jīng)驗分享
視頻課程上架啦 | Android Camera開發(fā)入門
深圳上班照捡,
從事Android Camera相關(guān)軟件開發(fā)工作,