摘 要:隨著社會的發展,移動網絡技術逐漸普及開來,流媒體網絡視頻直播因其便捷性,正在占據生活的每個角落。流媒體的網絡視頻系統的出現,讓身處不同地區的教師以及學生,可以借助移動終端平臺實現互動交流,共同討論需要解決的問題。在傳統意義上,流媒體只能是錄播視頻,單方講演,不能實時互動。但是網絡技術的普及,直播系統的建立,使得流媒體的網絡視頻互動變得觸手可及,筆者設計出一種基于流媒體的網絡直播系統,打破傳統模式,供相關研究者作參考。
關鍵詞:流媒體;網絡視頻直播;系統設計
前言
新世紀以來,互聯網技術突飛猛進,移動終端設備走進千家萬戶。新一代流媒體的出現,很大程度上改變了人們的生活學習方式,傳統PC端正在逐漸向著移動端過渡,通過移動端流媒體進行網絡視頻直播的需求日益劇增[1]。通過直播系統,學習者可以與老師實現自由互動,增強學習效果,提高學習效率。筆者設計的直播系統,借助云服務平臺,經過一定的轉化之后送達到用戶的終端。
1基于流媒體的網絡視頻直播系統設計體系
1.1支撐技術簡介
(1)流媒體直播技術。與傳統的PC端多媒體相比較,流媒體使用便捷、適用性強。在日常教學、專題報告講座等主題活動中均可應用。流媒體網絡視頻直播系統主要由幾個部分組成:數據收集、形成代碼、媒體推動、網絡分配、終端輸送等。
(2)流媒體直播云服務技術。云服務是網絡技術的快速發展的產物,一方面避免了較高的運行使用成本,同時安全性較高。當下,云服務主要有基礎設施、平臺以及軟件這三項服務,借助開發工具迅速搭建直播平臺。
1.2直播系統結構
整個流媒體網絡視頻直播系統由四個子程序構成,分別是基礎支撐層、服務層、應用層以及展現層。四個層面之間相互關聯,基礎層主要是確保系統運行環境的穩定;服務層是直播功能實現的保障;應用層則是使得目錄、音頻等對系統進行轉化,數據傳輸;展示層則是將數據內容轉化為視頻傳輸到用戶終端平臺。
1.3系統運行架構
直播模塊是流媒體網絡視頻直播系統中最核心的部分,直播方使用符合條件的終端啟動直播客戶端,經過系統檢測合格之后,自動連接云服務平臺進行推流[2]。推流成功之后,會對直播音頻視頻等進行代碼轉換,傳輸到用戶端,進行播放,實現流媒體網絡視頻直播功能。
1.4優化流媒體直播弱網問題
當用戶移動終端在進行網絡切換時,會占用一定的寬帶通道,從而接受不到高清視頻內容。因此,在本系統中,針對網絡的波動,直播系統會自動調節視頻清晰度和畫面幀數,以適應當前網絡。
2、基于流媒體的網絡視頻直播系統實現
2.1基于流媒體的網絡視頻直播系統直播采集
當直播端向業務服務器發起用戶請求時,業務服務器會立即向SDK要求建立起直播流的請求,SDK收到請求時則會通過實時流的網絡將JSON返回給業務服務器,隨后將播放地址返回給直播端并在本地記錄好播放地址。直播調用代碼如下:
{
" credentials"∶ {
" accessKey"∶ " < Your AK > " / /用于驗證訪問是否合法
的密鑰
" secretKey"∶ " < Your SK > " / /匹配密鑰
} ,
" id"∶ " z1. Realaddress-1. class-99" / /用戶直播間ID
" createdAt"∶ " 2016-11-24T14: 23: 33. 474Z" / /創建新直
播間
" updatedAt"∶ " 2016-11-24T14: 23: 33. 474Z" / /直播間更新
時間
" title"∶ " class-99" ,/ /直播間名稱
" hub"∶ "Realaddress-1" ,
" publishKey"∶ " a32498a5f43a7237" ,
" publishSecurity"∶ " static" ,
" disabled"∶ false,
" profiles"∶ null,
" hosts"∶ {
" publish"∶ {
" rtmp"∶ " test-publish. Realaddress. cn" / /發布直播推流
地址
} ,
" live"∶ { / /直播中各種編碼格式對應的推流地址
" hdl"∶ " test-live-hdl. Realaddress. cn" ,
" hls"∶ " test-live-hls. Realaddress. cn" ,
" http"∶ " test-live-hls. Realaddress. cn" ,
" rtmp"∶ " test-live-rtmp. Realaddress. cn" ,
" snapshot"∶ " test-live-snapshot. Realaddress. cn"
} ,
" playback"∶ { / /直播反饋地址
" hls"∶ "100029c. playback1. z1. test. qiniucdn. com" ,
" http"∶ "100029c. playback1. z1. test. qiniucdn. com"
} ,
" play"∶ { / /播放實時地址
" http"∶ " test-live-hls. Realaddress. cn" ,
" rtmp"∶ " test-live-rtmp. Realaddress. cn"
}
}
}
2.2基于流媒體的網絡視頻直播系統功能的實現
網絡視頻直播系統的主要功能是通過移動客戶端的APP實現的。該系統主要有九大功能:
(1)課程直播。老師可以通過移動客戶端進行實時講課,并與學生進行實時的課堂互動;
(2)課程瀏覽。學生可以在老師的直播列表中進行選擇,也可以在直播界面發送文字消息進行交流,或者通過連麥的方式,實時的進行音視頻的互動交流;
(3)課程點播。視頻直播系統會對課程進行實時同步的刻錄,并存儲到云服務的平臺,以便用戶隨時的回看課程內容;
(4)課程筆記。系統會同步的保存課程中的學習筆記、課程要點以及視頻截圖等;
(5)課程交流。直播期間,學生老師之間可以添加為好友,課后可以通過系統內置的交流功能進行課程的交流與討論;
(6)設置用戶信息。可以進行個人信息設置,例如修改頭像、修改登錄密碼、關注或取消課程的關注、綁定手機號等;
(7)系統設置。設置課程直播信息提示、直播課程的同步刻錄、清理緩存等;
(8)問題幫助模塊。對于系統中常見的問題,給出相應的解決方法,也可以通過目錄檢索的方式快速查詢問題的解決方案;
(9)退出模塊。關閉進程,清空數據,退出系統程序。
2.3基于流媒體的網絡視頻直播系統播放端的實現
用戶在觀看直播時,需要從服務器上獲取所有房間的播放地址,然后在選定直播間時,播放端會自動匹配流媒體的編碼格式,從而播放直播視頻。業務服務器只需要對房間進行創建和調度,從而保證直播的順利進行。具體實現代碼如下:
{
" publish" " rtmp: / /test-publish. Realaddress. cn /Realaddress-1 /
class-1? key = 0ec27ba231c0a90c" ,
" play"∶ { / /播放端從業務服務器中獲取到的播放地址列表
" ORIGIN "∶ " rtmp: / /test-live-rtmp. Realaddress. cn /
Realaddress-1 /class-1"
} ,
" id"∶ " z1. Realaddress-1. class-1" / /獲取直播間ID
" title"∶ " class-1" / /直播間名稱
}
3、基于流媒體的網絡視頻直播系統測試
經過初步系統設計完成之后,筆者設置了多種使用環境,對系統進行了全面性測試,以期找出不足之處進一步改進,主要對推流、轉碼等數據設計做了修正。
3.1視頻與音頻測試
授課教師或者網絡主播在打開直播系統客戶端之后,可以看到在直播界面上呈現直播畫面、講授內容、直播間流量等。直播方可以控制文字發送功能,也能夠對用戶所發表的言論進行篩選,有選擇地接受[3]。當直播方打開音頻,在麥克風正常使用的情況下,可以實現與用戶的互動,此時,用戶的畫面則是小窗口的方式出現在屏幕一角,從而進行交流,交流內容可以被所有用戶查看與聆聽。
3.2弱網優化功能測試
筆者借助ATC軟件程序,在WiFi以及3G、4G以及Gprs等多種網絡環境中進行切換,測試流媒體網絡視頻直播系統的弱網優化功能,通過視頻顯示軟件進行查看,并記錄下視頻播放過程中的卡頓情況,多次測試下來,筆者發現該軟件流暢系數比當前市場上常用直播軟件要高出6%左右。
4、結論
綜上所述,筆者設計的基于流媒體網絡視頻直播系統不僅使用方便,適用性強,而且成本不高,這主要得益于云服務平臺。本文從流媒體當前的發展情況講起,接著介紹了系統的技術架構、結構體系、設計依據、實現方式等方面,并對它進行了一系列改善測試。社會的快速發展,無疑給人們生活帶來了巨大的改變,提高了生活水平。流媒體網絡視頻直播系統的研發,主要給教育領域帶來了新的方向與平臺,相關科研人員應該對流媒體網絡視頻直播系統進行不懈的研究與創新,最大化對當前教育的變革創造條件,為各個地區建設智慧校園提供強有力的保障。
參考文獻:
[1]黃明, 葉德建. 基于HTML5的加密直播系統設計與實現[J]. 微型電腦應用, 2017(7):43-47.
[2]許雯. 基于HLS流媒體視頻直播的QoE分析模型設計與實現[J]. 西安航空學院學報, 2017, 35(3):66-68.
[3]孫恒. 基于多終端的移動流媒體直播系統設計與實現[J]. 實驗室研究與探索, 2018, 37(08):322-327.
作者簡介:付長鈞(1996-),男,滿,遼寧省開原市,本科,研究方向:網絡.