5G將開(kāi)啟萬(wàn)物廣泛互聯(lián)改變每個(gè)人的生活,短視頻也將不再受限與網(wǎng)絡(luò)環(huán)境的問(wèn)題,開(kāi)發(fā)短視頻APP也炙手可熱,現(xiàn)在如果開(kāi)發(fā)短視頻系統(tǒng),有很多需要注意的問(wèn)題,比如架構(gòu)問(wèn)題,事先了解好短視頻APP開(kāi)發(fā)架構(gòu)問(wèn)題,避免日后走冤枉路。
短視頻APP系統(tǒng)開(kāi)發(fā)中4個(gè)架構(gòu)問(wèn)題
1.數(shù)據(jù)格式標(biāo)準(zhǔn)的差異
與文本數(shù)據(jù)相比,短視頻屬于二進(jìn)制數(shù)據(jù),擁有固定的編碼標(biāo)準(zhǔn)。在短視頻app開(kāi)發(fā)過(guò)程中比較常見(jiàn)也常用的有、等格式標(biāo)準(zhǔn)。
2.數(shù)據(jù)大小的差異
(1)由于短視頻的數(shù)據(jù)量比圖片和文本都要大得多,所以在上傳、存放以及播放方面都是需要注意的。在網(wǎng)絡(luò)環(huán)境較差的狀況下上傳視頻,上傳的成功率普遍較低,特別是在晚高峰,也就是省際網(wǎng)絡(luò)比較擁塞的情況下就更加明顯。
針對(duì)視頻的上傳,需要基于CDN進(jìn)行動(dòng)態(tài)加速來(lái)優(yōu)化網(wǎng)絡(luò)鏈路,同時(shí)對(duì)于較大的視頻采取分片上傳的方式,以減少失敗重傳的成本和失敗率。不同的CDN的鏈路狀況在不同的地區(qū)和運(yùn)營(yíng)商表現(xiàn)不一,所以就需要選擇比較適合自己情況的CDN。
(2)由于數(shù)據(jù)相對(duì)較大,當(dāng)數(shù)據(jù)量達(dá)到一定規(guī)模時(shí)存儲(chǔ)容量也會(huì)面臨一些挑戰(zhàn)。目前市面上的APP視頻容量級(jí)別達(dá)到的規(guī)模要求存儲(chǔ)本身能具備較強(qiáng)的線性擴(kuò)展能力,并且有足夠的資源冗余,但是傳統(tǒng)的Mysql等數(shù)據(jù)庫(kù)比較難支持,所以需要借助專用的分布式對(duì)象存儲(chǔ),通過(guò)自建的服務(wù)或云存儲(chǔ)服務(wù)進(jìn)行解決。
(3)在播放的過(guò)程中,有的視頻文件較大就很容易受到網(wǎng)絡(luò)環(huán)境的影響,為了避免卡頓就需要在一些細(xì)節(jié)上進(jìn)行處理,比如通過(guò)網(wǎng)絡(luò)鏈路進(jìn)行優(yōu)化或者通過(guò)多碼率的自適應(yīng)優(yōu)化。比如多路轉(zhuǎn)碼,然后再根據(jù)特定的算法模型量化用戶網(wǎng)絡(luò)情況進(jìn)行選碼率,網(wǎng)絡(luò)環(huán)境較差的選擇低碼率。
3.數(shù)據(jù)處理需求
(1)由于視頻的本身可以承載大量信息,所以就需要處理大量的數(shù)據(jù)。比如視頻轉(zhuǎn)碼、視頻水印或者是視頻的鑒黃等。對(duì)視頻進(jìn)行處理時(shí)通常分為兩個(gè)方面,一個(gè)是客戶端的處理,另一個(gè)是服務(wù)端的處理。
(2)客戶端的處理通常使用手機(jī)的處理性能來(lái)減少服務(wù)器的壓力,同時(shí)也容易面臨一些低端機(jī)型的處理效率問(wèn)題。在客戶端主要是是對(duì)視頻美顏美化的算法、人臉識(shí)別或者是視頻的編解碼等進(jìn)行處理。
目前客戶端的視頻編解碼主要分為軟編碼和硬編碼的方式,軟編碼的兼容性較好但是耗能高且慢。硬編碼低耗能且快但是兼容性較差。所以通常采取結(jié)合的方式進(jìn)行處理。
(3)服務(wù)端的處理主要是進(jìn)行視頻的一些審核和轉(zhuǎn)碼等工作。目前經(jīng)常使用ffmpeg來(lái)進(jìn)行處理。但是服務(wù)端需要考慮的問(wèn)題就是資源消耗方面比較高,使用的機(jī)器數(shù)也比較多,獨(dú)一在服務(wù)端做視頻處理操作需要控制在合理的范圍之內(nèi)。
4.審核問(wèn)題
短視頻的內(nèi)容本身有多種多樣的表現(xiàn)形式,所以也容易出現(xiàn)各種涉黃涉恐的視頻信息,如果處理不好就會(huì)非常麻煩。視頻審核最大的問(wèn)題就是會(huì)面臨視頻時(shí)間過(guò)長(zhǎng),造成人力審核成本的增加。
在這一方面可以采取一些技術(shù)手段,比如接入一些三方視頻識(shí)別模塊、抽取視頻中某幾幀進(jìn)行檢查或者也可以通過(guò)大數(shù)據(jù)分析等方法進(jìn)行審核。
短視頻APP開(kāi)發(fā)已然成為大勢(shì)所趨,在開(kāi)發(fā)過(guò)程中會(huì)出現(xiàn)很多問(wèn)題,僅僅是文中所提到的架構(gòu)問(wèn)題,還有很多需要解決的問(wèn)題都值得注意,這些都關(guān)系著短視頻APP后期能否正常運(yùn)行,運(yùn)行會(huì)不會(huì)出問(wèn)題等等。