搭建視頻網(wǎng)站的技術(shù)實(shí)現(xiàn)
時(shí)間:2023-08-27 00:36:01 | 來源:網(wǎng)站運(yùn)營
時(shí)間:2023-08-27 00:36:01 來源:網(wǎng)站運(yùn)營
搭建視頻網(wǎng)站的技術(shù)實(shí)現(xiàn):
一、視頻網(wǎng)站和普通網(wǎng)站的區(qū)別
搭建視頻網(wǎng)站和搭建普通網(wǎng)站,在技術(shù)實(shí)現(xiàn)方案上有很大的差別,因此,當(dāng)有人問我是否可以采用搭建普通網(wǎng)站的方法搭建視頻網(wǎng)站時(shí),我會(huì)明確的告訴他們不可以,否者就貽笑大方了。
視頻網(wǎng)站與普通網(wǎng)站相比具有如下不同:
1)存儲(chǔ)數(shù)據(jù)量大。用于視頻存儲(chǔ)、緩存的數(shù)據(jù)量,一般是TB級(jí),需要用合適的技術(shù)方法做大數(shù)據(jù)存儲(chǔ)管理,需要有合適的技術(shù)方法做好存儲(chǔ)設(shè)備的高速讀寫優(yōu)化。
2)需要的帶寬大。普通網(wǎng)站有2Mbps的出口就可以很好地運(yùn)行,視頻網(wǎng)站一般需要上百兆的出口,當(dāng)并發(fā)量較大時(shí),如超過1000,則需要千兆的出口。
3)需要專業(yè)的視頻技術(shù)支撐,包括視頻轉(zhuǎn)碼、切片、截圖、元數(shù)據(jù)提取、流化的技術(shù),存儲(chǔ)緩存和讀寫復(fù)用技術(shù),視頻播放技術(shù),視頻加速技術(shù),多終端適配技術(shù)等。
4)需要良好的網(wǎng)絡(luò)資源使用優(yōu)化技術(shù),在同樣的硬件和網(wǎng)絡(luò)條件下,如果使用普通網(wǎng)站的技術(shù),通常幾十個(gè)并發(fā)就很卡頓緩慢,而試用專業(yè)的流媒體播出技術(shù),可以在數(shù)千并發(fā)時(shí)依然穩(wěn)定順暢。
5)需要的技術(shù)團(tuán)隊(duì)不一樣,普通網(wǎng)站需要網(wǎng)頁設(shè)計(jì)和前后端開發(fā)人員,視頻網(wǎng)站則同時(shí)需要視頻技術(shù)開發(fā)人員。
二、視頻網(wǎng)站搭建技術(shù)細(xì)節(jié)
這道了這些差異,就可以避免犯一些基礎(chǔ)錯(cuò)誤了,也就不會(huì)想著用普通網(wǎng)站去承載視頻播出了,下面梳理下視頻網(wǎng)站搭建的常規(guī)技術(shù)路線。
1)服務(wù)器主機(jī)配置視頻網(wǎng)站的主機(jī),可以使用云主機(jī),也可以使用物理機(jī)或虛擬主機(jī)。如果是在互聯(lián)網(wǎng)上運(yùn)營,則建議使用云主機(jī),選擇阿里、騰訊、華為均可。如果在局域網(wǎng)或?qū)>W(wǎng)運(yùn)行,則使用物理機(jī)。
主機(jī)的配置根據(jù)實(shí)際的并發(fā)需求來做,一般可以按照如下配置:
100并發(fā): 2核CPU,4GB內(nèi)存,百兆出口
500并發(fā): 4核CPU,8GB內(nèi)存,千兆出口
1000并發(fā):8核CPU,16GB內(nèi)存,千兆出口及更大
2)網(wǎng)絡(luò)配置運(yùn)行在局域網(wǎng)或政務(wù)網(wǎng)內(nèi)的視頻服務(wù)器,可用的帶寬取決于既有的網(wǎng)路方案,例如新的校園網(wǎng)或政務(wù)網(wǎng)通常是千兆網(wǎng)絡(luò),則可以支撐1000以上的并發(fā)。
如果是運(yùn)行在開放的互聯(lián)網(wǎng)上,采用的是云主機(jī),在選用云主機(jī)網(wǎng)絡(luò)帶寬時(shí),不要選用按固定帶寬付費(fèi),要選擇按流量付費(fèi),這樣會(huì)更經(jīng)濟(jì)。如阿里云的選擇:
阿里云主機(jī)網(wǎng)絡(luò)選擇 在并發(fā)量很時(shí),如超過500,通常要使用集群或CDN技術(shù)方案,華為云、阿里云都有視頻CDN加速技術(shù),可以通過購買流量包來提高并發(fā)能力,降低使用費(fèi)用。
3)流媒體服務(wù)器配置流媒體服務(wù)器軟件是搭建視頻網(wǎng)站平臺(tái)和各類在線視頻應(yīng)用系統(tǒng)的基礎(chǔ)支撐系統(tǒng),實(shí)現(xiàn)將視頻存儲(chǔ)、視頻轉(zhuǎn)碼、視頻播出、協(xié)議復(fù)用、終端適配、大并發(fā)播出等的工作集中處理,這樣您在搭建視頻網(wǎng)站時(shí)就可以只關(guān)注業(yè)務(wù)細(xì)節(jié)而不用再去處理與視頻相關(guān)的諸多技術(shù)細(xì)節(jié),從而實(shí)現(xiàn)提高項(xiàng)目實(shí)施效率、降低項(xiàng)目實(shí)施風(fēng)險(xiǎn)的目標(biāo)。
目前在市政、高效、科研領(lǐng)域使用最廣泛的產(chǎn)品是NTV Media Server G3,由于性能出眾,集成方便,支文檔和API做的規(guī)范而被不少人選用,具體功能不再這里細(xì)說,可以參考其服務(wù)站點(diǎn):
http://www.ruiboyun.com , 這個(gè)軟件有多個(gè)分支版本,根據(jù)并發(fā)量、功能需求做了細(xì)分,旗艦版是目前功能最豐富的一個(gè)版本。
NTV Media Server G3NTV Media Server G34)播放器配置播放器要根據(jù)播放終端來選用,對(duì)于標(biāo)準(zhǔn)的H5網(wǎng)頁,如微信頁面、公眾號(hào)內(nèi)嵌頁面、開放互聯(lián)網(wǎng)上的網(wǎng)站,可使用標(biāo)準(zhǔn)的video標(biāo)簽來播放視頻。視頻文件放到流媒體服務(wù)器上后,經(jīng)轉(zhuǎn)碼后輸出播出地址,將視頻地址賦值給video標(biāo)簽即可。
<video src="http://..../xx.mp4" controls="controls"></video>
video標(biāo)簽的布局、控制等細(xì)節(jié),參考相關(guān)教程就可以,前端工程師和網(wǎng)頁美工可以搞定。
盡管Flash播放器在很多主流瀏覽器上已經(jīng)不再支持使用,但對(duì)于一些傳統(tǒng)單位,內(nèi)網(wǎng)的辦公機(jī)器依然在使用IE瀏覽器,這時(shí)候依然需要使用Flash播放器,因此在有些情況下還是需要兼容之前版本IE的。NTV Media Server G3提供的集成代碼可以做到這一點(diǎn),實(shí)現(xiàn)對(duì)各種瀏覽器的自動(dòng)兼容,在新型支持H5的瀏覽器上使用video標(biāo)簽,在老舊IE上依然加載Flash。
對(duì)于APP開發(fā),無論是iOS還是Android,都有豐富的播放流媒體視頻的組件,可以方便的播放hls,http-flv和rtmp視頻流。
三、集成對(duì)接
如果視頻資源量很少,增量也不多,譬如只有幾十個(gè)資源,則不需要與流媒體服務(wù)器做開發(fā)集成,只要把流媒體服務(wù)器提供過的視頻播放地址交給網(wǎng)頁制作人員使用即可。
對(duì)于業(yè)務(wù)較為豐富的應(yīng)用,如視頻資源較多,且經(jīng)常動(dòng)態(tài)增減,則需要有完整的業(yè)務(wù)平臺(tái)支撐,需要實(shí)現(xiàn)視頻資源自動(dòng)化發(fā)布,這個(gè)時(shí)候需要網(wǎng)站業(yè)務(wù)平臺(tái)與流媒體服務(wù)器做集成對(duì)接。集成過程一般使用流媒體服務(wù)器的如下接口:
視頻上傳接口-->視頻轉(zhuǎn)碼接口-->視頻查詢接口-->視頻播放接口等。這個(gè)過程并不復(fù)雜,一般可以輕松完成對(duì)接。
四、完整的技術(shù)路線
對(duì)于運(yùn)營一個(gè)視頻網(wǎng)站,除了需要上述視頻技術(shù),還需要其他技術(shù),梳理一下包括:
1)后端技術(shù),即開發(fā)業(yè)務(wù)后臺(tái),可使用Java、PHP等語言;
2)數(shù)據(jù)庫技術(shù),可以選用Mysql,MariaDB,Mongodb等等;
3)前端技術(shù),開發(fā)視頻展現(xiàn)的網(wǎng)站,需要js、htm、css開發(fā)技術(shù),最好使用一個(gè)前端框架來簡化開發(fā)工作,同時(shí)需要美術(shù)設(shè)計(jì)人員來設(shè)計(jì)漂亮的呈現(xiàn)
4)APP、小程序開發(fā)技術(shù),根據(jù)需要使用
5)視頻拍攝和編輯,對(duì)于要求較高的宣傳類、教育類、科研類視頻應(yīng)用,則需要有專業(yè)的攝影和視頻編輯
關(guān)鍵詞:技術(shù),實(shí)現(xiàn),視頻