文/劉錦 顧加強
隨著無線網絡傳輸技術的普及,移動終端新產品不斷推陳出新,移動終端的功能越來越強大,無線網絡帶寬越來越大,資費越來越低,使得用戶利用移動終端進行學習、娛樂等成為新時尚。目前,基于移動終端的視頻應用已經非常流行,在線視頻點播、在線視頻直播課程內容,已經成為基于移動端設備的在線學習平臺的主要功能。通過移動學習平臺提供的實時視頻傳輸系統,可以為參與在線學習的廣大教師和學生提供豐富的多媒體功能,這種在線視頻學習的方式可以作為課堂教學的有力補充,大幅提升學生的學習積極性和主動性,提高學習效率和學習質量。
但是,由于無線網絡具有復雜多變的特性,導致移動端視頻在進行實時傳輸時的效率和傳輸質量受到很大的影響。實時視頻傳輸問題已經成為各類課程移動學習平臺迫切需要解決的一個重要問題。
基于移動端的實時視頻傳輸系統的傳輸網絡主是無線網絡,無線網絡具有:靈活性和移動性,安裝方便,易于進行網絡規劃與調整,易于擴展和易于故障定位與維修等優點,這使得無線網絡技術在最近幾年得到飛速發展,目前大家廣泛通過移動終端使用Wi-Fi技術、4G技術或5G技術連接Internet,實現了移動辦公,移動學習等基本應用功能。
無線網絡在給用戶帶來方便的同時,也存在著一些問題。無線網絡主要通過無線電波進行信號傳輸,而無線電波受外界環境的影響比較大,所以網絡的性能會受到一定的影響;無線網絡數據傳輸速率與有線網絡相比較要慢很多;無線信號傳輸是發散的、沒有導向性的,信號容易被監聽,所以安全性不如有線網絡。這些不足之處給無線網絡在視頻傳輸等應用上帶來了一些問題。
實時視頻傳輸與傳統的圖片和文字等的傳輸有著比較大的區別,實時視頻傳輸對影響傳輸實時性方面的指標要求比較高。實時視頻傳輸需要在收發兩端同步,需要較寬的傳輸帶寬、確定的時延、較低的抖動,對誤碼不是特別敏感,但對出錯重傳的時延特別敏感。
基于移動端的實時視頻傳輸系統主要通過無線網絡實現視頻實時傳輸,通過新技術克服傳統無線網絡的不足,利用流媒體技術,使用實時傳輸協議以連續數據流的方式從發送端(服務器)向接收端(移動終端)傳輸視頻和音頻數據,在接收端上通過數據緩沖存儲技術進行數據緩沖,然后實現在線視頻文件的流暢播放。
基于移動端的實時視頻傳輸系統涉及的技術領域非常多,包括視頻的獲取技術、視頻編碼、解碼技術,網絡數據傳輸過程中數據封裝技術和網絡擁塞控制技術,視頻實時顯示及存儲技術等。
在進行視頻實時傳輸時通常采用流式傳輸技術,需要保證媒體信號的帶寬與網絡連接相匹配,使實時視頻可以被實時接收和觀看。在這個過程中,一般而言,要想實現實時視頻傳輸需要配置專門的流媒體服務器和專門的網絡傳輸協議。
緩沖存儲技術主要用于解決網絡中存在的數據傳輸時延抖動的問題,使用緩沖技術可以有效利用數據緩存彌補傳輸延遲和抖動產生的負面影響,從而在接收端實現連續播放,不會因為網絡突發性擁塞而使播放出現停頓。
在進行基于移動終端的實時視頻流式播放的一般過程為:用戶通過移動終端設備在瀏覽器或手機APP上選擇某項流媒體服務,交換控制信息后檢索所需的媒體數據,終端啟動媒體播放器,進行初始化,媒體服務器與媒體播放器之間通過實時流控制協議交換本次實時視頻傳輸所需的相關控制信息,媒體服務器使用相關協議將流式媒體數據傳輸給移動終端播放器,移動端播放器接收到數據后,經過一定的緩沖就可以開始播放實時視頻。

圖1:基于移動端的實時視頻傳輸系統框架
實時流媒體視頻的播放方式可以分為單播、組播、點播與廣播等幾種方式。單播是一種最簡單的流媒體播放方式,它在客戶端與媒體服務器之間需要建立一個單獨的數據通道,服務器上傳輸出來的每個數據包只發送給一個客戶機,這種方式對系統的配置要求最低,技術較簡單、成熟可靠,但如果每個用戶都通過單播方式觀看視頻會導致網絡負載顯著增加;組播技術也稱為多播,這種方式需要構建具備組播能力的網絡環境,可以一次性將數據包復制到多個通道上,這種方式需要較多的額外管理資源和設備;點播是客戶端主動連接服務器端的一種播放方式,廣播是客戶端被動連接服務器的一種播放方式。在設計基于移動端的實時視頻傳輸系統時可以根據需要進行選擇。
H.264編碼技術是無線網絡實時視頻傳輸的關鍵技術,為了使視頻更加適合無線傳輸我們通常需要按照H.264標準先對視頻數據進行壓縮編碼,先對視頻數據進行壓縮編碼的原因是原始視頻的數據量太大,如果不進行壓縮將占用大量的存儲空間和網絡帶寬。之所以可以對視頻數據進行壓縮編碼主要的原因是視頻數據本身存在大量的數據冗余和人眼存在視覺上的冗余,對視頻進行壓縮編碼的目的是在保證視頻質量的同時,考慮網絡自適應性和容錯等因素盡可能的壓縮數據。
H.264編碼技術充分考慮了網絡適應性和容錯性,H.264編碼技術標準沒有規定具體的編碼器結構和具體的實現模式,只要碼流結構符合規范就可行了,它采用句法元素分層將句法元素組織成序列、圖像、片、宏塊和子塊五個層次。通過精心的設計,H.264構成句法的各句法元素之間既相互依賴,又相互獨立,相互依賴可以減少信息冗余,提高編碼的效率,相互獨立可以使通信的魯棒性更好,能夠在傳輸發生錯誤時限制錯誤的擴散。
H.264編碼技術的基本編碼算法包括:預測編碼算法、變換編碼算法和熵編碼算法等編碼算法。H.264編碼技術的解碼過程與編碼過程互逆,基本的解碼算法包括:預測解碼算法、變換解碼算法和熵解碼算法等算法。
H.264編碼技術的功能分為兩層:視頻編碼層和網絡抽象層,具有以下幾個方面的特點:
(1)低碼流。與傳統壓縮編碼方式相比較,H.264標準壓縮編碼后的數據只有MPEG-4的三分之一,可以節省大量的存儲空間和下載時間。
(2)H.264標準能夠提供連續流暢的質量視頻。
(3)數據容錯能力強。H.264標準解決了在不穩定網絡環境下數據包容易丟失的問題。
(4)網絡適應性強。H.264提供了網絡抽象層,使得實時視頻可以在不同的網絡上傳輸。
傳輸協議的設計與選擇是保證視頻傳輸的實時性和傳輸質量的另一個關鍵因素。傳統的Internet應用在IP層上有兩種傳輸協議:一種是面向連接的傳輸控制協議TCP,另一種是面向無連接的用戶數據報協議UDP。TCP協議因為它的出錯重傳機制和擁塞控制、報文格式等使得視頻傳輸時會產生比較大的額外開銷和延遲,所以不適用于實時視頻傳輸。
RTP/RTCP協議是一種應用型的數據傳輸協議,它由IETF為實現實時音視頻傳輸而專門設計。RTP協議位于UDP協議之上,RTP具有簡單性,它的數據流與控制流是分離的,簡化了傳輸層的處理,提高了傳輸層的效率,同時RTP還具有可擴展性,RTP的算法可以作為開發應用程序代碼的一部分,可以根據應用需求進行充分的擴展。
RTCP協議是RTP協議的控制部分,它主要實現信息識別、媒體間的同步控制、服務質量監測和擁塞控制等功能。與傳統傳輸協議相比較,采用RTP/RTCP傳輸協議進行實時視頻傳輸可以獲得比較好的實時性和較高的傳輸質量,在進行基于移動端的實時視頻傳輸時通常采用該協議。
一個完整的基于移動端的實時視頻傳輸系統通常包括視頻采集、數據編碼、數據傳輸控制、通信網絡、視頻解碼、視頻播放等功能部分,其中編碼/解碼和傳輸控制是核心組件功能部分,一個簡單的基于移動端的實時視頻傳輸系統的系統框架如圖1所示。
基于移動學習平臺的實時視頻傳輸系統是多媒體技術、網絡技術和通信技術等技術相合的時代產物。無線網絡技術、流媒體技術等技術是該系統實現的基礎,H.264編碼技術和RTP/RTCP協議是該系統實現的關鍵。