李世滿
摘要:流媒體是一種采用流式傳輸方式在互聯(lián)網(wǎng)上進(jìn)行播放的流式媒體。流媒體技術(shù)解決了邊錄邊播的問題。但在流媒體傳播中也帶來了數(shù)據(jù)保密性、安全性及數(shù)據(jù)傳播及時性等問題。選擇HTTP-FLV作為協(xié)議,相對于RTMP,更簡單和廣為人知,而且不存在知識產(chǎn)權(quán)問題,延遲同樣可以做到3秒以內(nèi),打開速度更快。該文闡述以此為協(xié)議的便攜式流媒體播放器開發(fā)實踐探索及在課堂教學(xué)實踐應(yīng)用思考。
關(guān)鍵詞:HTTP-FLV協(xié)議;便攜式;流媒體;播放器;課堂教學(xué)實踐
關(guān)鍵詞:項目教學(xué)模式;天正建筑CAD教學(xué);應(yīng)用
中圖分類號:TP393 文獻(xiàn)標(biāo)識碼:A
文章編號:1009-3044(2019)11-0136-02
Abstract: Streaming media is a kind of streaming media that uses streaming transmission to play on the Internet. Streaming media technology solves the problem of recording and broadcasting. However, in the process of streaming media transmission, it also brings a series of issues such as data confidentiality, security, and data dissemination timeliness. Selecting PP-FLV as a protocol is simpler and more widely known than RTMP, and there is no intellectual property issue. Delay can also be achieved within 3 seconds and the opening speed is faster. This paper discusses the development practice of portable streaming media player and its application in classroom teaching.
Key words: HTTP-FLV protocol; portable; streaming media; player; classroom teaching practice
流媒體,又叫流式媒體,是邊傳邊播的媒體,它是多媒體的一種表現(xiàn)形式。它的出現(xiàn)極大地方便了人們的工作和生活。在網(wǎng)上觀看視頻,內(nèi)容太大,需要苦等;想要看看地球另一端某個教授的課堂,傳輸有設(shè)置,沒法高清……有了流媒體格式,這些問題都得到了有效解決。但畢竟這些都是借助Internet平臺進(jìn)行的數(shù)據(jù)傳輸。接著人們又希望能在局域網(wǎng)內(nèi)把手機(jī)或平板上的內(nèi)容在大屏幕上投放,流媒體技術(shù)支持的分屏器出現(xiàn)了,但畢竟分頻器解決的是少數(shù)幾個用戶的分屏,多個用戶的分屏又如何實現(xiàn)呢?
1 便攜式流媒體播放器開發(fā)探索
流媒體技術(shù)解決了邊錄邊播放的問題,用戶能夠接近實時地看到聽到音視頻信息,使用戶能夠與視頻生產(chǎn)者互動。于是,流媒體在網(wǎng)絡(luò)直播、視頻點播、網(wǎng)絡(luò)電臺、網(wǎng)絡(luò)視頻等方面都有著廣泛的應(yīng)用。同時流媒體技術(shù)也在其他領(lǐng)域嶄露頭角,比如汽車上的流媒體后視鏡等。隨著Internet教育應(yīng)用的深入發(fā)展,大數(shù)據(jù)多媒體教學(xué)資源在網(wǎng)上的傳輸顯得越來越重要和必須,如何應(yīng)用新技術(shù)為網(wǎng)絡(luò)教育資源建設(shè)與應(yīng)用服務(wù)已成為人們所關(guān)注的課題。
目前,開展網(wǎng)絡(luò)直播活動,主要采用互聯(lián)網(wǎng)直播服務(wù)商提供的轉(zhuǎn)播服務(wù),互聯(lián)網(wǎng)直播服務(wù)商能夠提供大型轉(zhuǎn)播服務(wù)端。但對于小型流媒體服務(wù)端轉(zhuǎn)播來說,市場仍有很大空間,有些領(lǐng)域是空白,如專注于課堂教學(xué)、家庭客廳、公司會議等小型場所,購置市場上的流媒體服務(wù)器的話,價格高,如應(yīng)用于課堂的助教系統(tǒng),一套需要幾萬元,但在分辨率、延遲性方面的體驗卻沒法達(dá)到理想效果。家庭、公司的直播服務(wù)器目前市場還是空白。
由深圳技師學(xué)院軟件開發(fā)工作室?guī)熒M成的研發(fā)端對,結(jié)合課堂所學(xué),開展了微小型流媒體服務(wù)端轉(zhuǎn)播技術(shù),通過在一個應(yīng)用ARM CPU的小尺寸設(shè)備上安裝改進(jìn)的流媒體轉(zhuǎn)播服務(wù)系統(tǒng),這個系統(tǒng)能夠通過該設(shè)備所在的網(wǎng)絡(luò)轉(zhuǎn)播流媒體視頻,為在該網(wǎng)絡(luò)中的各種客戶端提供轉(zhuǎn)播服務(wù),主要解決了直播服務(wù)端小型化問題,設(shè)備體積小,連接網(wǎng)絡(luò)即可使用,簡單方便,PC客戶端使用瀏覽器就可播放,不需要特殊的客戶端軟件,兼容性強(qiáng)。目前已完成了產(chǎn)品初稿正在進(jìn)入測試階段。
2 便攜式流媒體播放器和傳統(tǒng)流媒體傳輸播放器比較研究
流媒體的傳輸過程需要經(jīng)過選擇流媒體服務(wù)——瀏覽器和服務(wù)器之間交換控制信息——流式傳輸這個過程。傳輸流程見圖1所示。在流式傳輸?shù)姆桨笇崿F(xiàn)中,通常采用HTTP/TCP協(xié)議進(jìn)行信息的傳輸控制,用RTP/UDP來傳輸實時聲音數(shù)據(jù)。而在流媒體協(xié)議中,常用的流媒體協(xié)議主要有 HTTP協(xié)議、RTSP協(xié)議和RTMP協(xié)議。 國內(nèi)視頻網(wǎng)站多采用HTTP+MP4或者HTTP+FLV協(xié)議傳輸視頻,而國外使用RTMP,RTSP等專門的流媒體格式 ,因為在媒體服務(wù)和分發(fā)過程中很多參數(shù)不好確定,這樣導(dǎo)致目前市場上出現(xiàn)的流媒體再播放過程中的延遲時間不確定或者過長,在深圳技師學(xué)院開發(fā)的便攜式流媒體播放器事先中,正好用樹莓派開發(fā)的硬件完美實現(xiàn)了延遲控制,同時實現(xiàn)了數(shù)據(jù)的穩(wěn)定傳輸。傳輸過程如圖2所示。
3 便攜式流媒體播放器教學(xué)實踐探索
本項目是為課堂教學(xué)、客廳家用、公司會議等場景設(shè)計開發(fā)一款微小型流媒體轉(zhuǎn)播服務(wù)設(shè)備,在50個客戶端的情況下延遲不超過3秒,連接網(wǎng)絡(luò)即可使用,簡單方便,兼容性強(qiáng)?;谶@樣的需求,研發(fā)過程如下:
直播傳輸協(xié)議選擇,常見的有RTMP、HDL(HTTP-FLV)、HLS、RTP,前期我們選擇了RTMP,但是其在跨應(yīng)用的表現(xiàn)上不是很出色,最后我們選擇了HTTP-FLV作為此項目的協(xié)議選擇,相對于RTMP,HTTP更簡單和廣為人知,而且不存在知識產(chǎn)權(quán)問題,內(nèi)容延遲同樣可以做到3秒以內(nèi),打開速度更快,因為HTTP本身沒有復(fù)雜的狀態(tài)交互,所以從延遲角度來看,HTTP-FLV要優(yōu)于RTMP。
服務(wù)端技術(shù)選擇,避免使用專利技術(shù),降低成本。目前開源的流媒體服務(wù)端技術(shù)有RED5、CRTMPD、Nginx-RTMP、SRS,本項目基于SRS開源系統(tǒng)進(jìn)行改造定制。
實現(xiàn)同時轉(zhuǎn)播RTMP和HLS視頻流,擺脫對FLASH的依賴,推流工具兼容市場主流的PC、Android、IOS端工具,例如OBS。開發(fā)硬件平臺選擇樹莓派2B+開發(fā)板,因其開放、成本低、性能好、易于擴(kuò)展,生產(chǎn)版本將采用定制硬件系統(tǒng)。
自主開發(fā)直播服務(wù)端系統(tǒng),支持客戶端使用瀏覽器直播,自主開發(fā)Android和iOS客戶端App,支持流媒體播放和推送。
項目產(chǎn)品在教學(xué)直播方面成效顯著,教師電腦端不再需要安裝屏幕廣播軟件,使用市場流行的其中一種直播推流軟件即可,比如OBS,可以將教師電腦桌面,或者攝像頭等視頻源轉(zhuǎn)播到網(wǎng)絡(luò)中,學(xué)生端電腦也不需要安裝屏幕廣播軟件客戶端,直接使用瀏覽器即可收看直播。顯著降低了教學(xué)機(jī)房管理難度和管理成本。
參考文獻(xiàn):
[1] https://baike.baidu.com/item/%E6%B5%81%E5%AA%92%E 4%BD%93/98740?fr=aladdin流媒體百度百科
[2] https://www.jb51.net/network/541188.html流媒體協(xié)議
[3] https://blog.csdn.net/u012811853/article/details/44021699?locationnum=5&fps=1流媒體傳輸原理
【通聯(lián)編輯:代影】