短視頻軟件開發(fā),預加載值得投入技術(shù)去深入研究嗎
我們在觀看、使用短視頻軟件時,每次切換視頻基本都是秒播,偶爾網(wǎng)不好了可能等1-2秒就恢復了,能有這么好的觀看體驗,多虧了短視頻軟件開發(fā)的預加載功能,預加載和我們常說的緩存差不多,通過提前緩存當我們在切換時能快速實現(xiàn)播放,減少等待的時間。那么在當前技術(shù)下,短視頻軟件開發(fā)還有必要針對預加載進行升級嗎?另外,緩沖、緩存和預加載又是什么關(guān)系呢?
?

一、視頻緩沖
短視頻軟件開發(fā)的緩沖往往發(fā)生在觀看視頻時,視頻在預加載時會有一個緩沖層的概念,數(shù)據(jù)的發(fā)送和接收都要經(jīng)過緩沖層,緩沖層的大小設(shè)置非常有講究,太大會浪費過多的帶寬,太小又會影響數(shù)據(jù)傳輸?shù)男?,短視頻軟件需要根據(jù)情況調(diào)整緩沖區(qū)大小。
二、 視頻緩存
在觀看短視頻時,短視頻軟件開發(fā)為了用戶更好的觀看體驗會提前緩存視頻,防止視頻播放卡頓。短視頻通過預加載緩存了部分視頻,觀看視頻時是從已緩存的視頻后面進行緩存。每次緩存前,讀取已緩存視頻的大小,然后設(shè)置請求頭Range進行緩存。
為了方便管理緩存,會創(chuàng)建三個緩存目錄,短視頻緩存未完成放入目錄temp,緩存完成后移入目錄media,需要刪除的移入目錄trash。通過配置ShortMediaCache,緩存可以進行自動管理。
?

三、視頻預加載
短視頻軟件開發(fā)的視頻格式對預加載來說是很重要的,這關(guān)系到視頻的解碼速度、播放器的探測時間、是否與手機兼容。在短視頻軟件開發(fā)的過程中,一般會使用H.264 或 H.265對視頻進行編碼,使用H.264編碼可保證更高的視頻質(zhì)量和低碼率, H.265在擁有H.264特性的基礎(chǔ)上,有著更高的壓縮效率和視頻畫質(zhì),并且傳輸碼率更低。
通常短視頻軟件開發(fā)會選擇H.265+MP4+ACC的組合,選定視頻格式后,可以在ffmpeg build config里移除用不到的格式,減少播放端對視頻格式的探測時間。
?

短視頻軟件開發(fā)在預加載上的投入是很有必要的,不論是從哪方面來講,對平臺、對用戶起到的都是正面效果,要注意的是要合理使用預加載功能,畢竟加載內(nèi)容越多,占用的資源就越多。
聲明:以上內(nèi)容為云豹科技作者本人原創(chuàng),未經(jīng)作者本人同意,禁止轉(zhuǎn)載,否則將追究相關(guān)法律責任